賈振東,郭承軍,劉賦山
(電子科技大學(xué) 電子科學(xué)技術(shù)研究院,成都 611731)
基于CIC抽取濾波器結(jié)合串并行的搜索捕獲算法
賈振東,郭承軍,劉賦山
(電子科技大學(xué) 電子科學(xué)技術(shù)研究院,成都 611731)
GPS信號的捕獲是GPS接收機(jī)的重要環(huán)節(jié),其中串行搜索算法,并行碼相位算法是GPS信號捕獲的常用方法。但隨著GPS接收機(jī)覆蓋我們的生活,對捕獲算法的速度要求也就越來越高。提出了一種新的捕獲方法,基于CIC抽取濾波器并結(jié)合串并行搜索的算法,這種捕獲方法在抽取階段使用CIC濾波器降低頻譜混疊的影響,然后在使用并行碼相位搜索算法的基礎(chǔ)上加入了串行搜索的部分,從而減少了計算量,提高了運算速度。對算法進(jìn)了仿真,實驗結(jié)果證明了該方法的有效性和優(yōu)越性。最后對運算優(yōu)勢進(jìn)行了分析。
GPS;捕獲;CIC抽取濾波器;結(jié)合
如今,GPS接收機(jī)已應(yīng)用于各式各樣的設(shè)備中,用于用戶定位等功能。其中捕獲,跟蹤以及定位解算等部分是GPS接收機(jī)的重要環(huán)節(jié)。捕獲模塊是GPS接收機(jī)的第一部分,為了跟蹤GPS信號并進(jìn)行信息解碼,就必須先用捕獲程序來檢測信號的存在[1]。利用捕獲模塊得到兩個重要的信息,一是C/A碼相位信息,另一個是GPS信號多普勒頻移后的輸入頻率。
常用的捕獲方法有兩種,1)串行搜索捕獲算法,2)并行碼相位搜索算法。其中并行碼相位搜索算法因為其優(yōu)越性而應(yīng)用很廣。本文基于并行碼相位搜索捕獲算法,對混頻前端采樣點通過CIC抽取濾波器并結(jié)合串行搜索方法對傳統(tǒng)捕獲方法進(jìn)行改進(jìn),減少其計算量而又不失捕獲精度。
串行搜索捕獲算法是基于中頻信號與本地產(chǎn)生的偽碼序列以及本地載波的乘積。中頻信號先和本地偽碼序列相乘,然后I,Q通道分別和本地載波信號以及90°相移的本地載波信號相乘,最后積分平方相加得相關(guān)結(jié)果,原理圖如圖1所示。
圖1 串行搜索捕獲算法
并行碼相位搜索算法利用了序列時域循環(huán)互相關(guān)是頻域相乘的反傅里葉變換的性質(zhì)[2]。
首先,輸入信號與本地載波信號以及90°相移后的載波信號相乘,分別得到I支路信號和Q支路信號。然后對復(fù)數(shù)信號I(n)+jQ(n)進(jìn)行FFT變換。對本地產(chǎn)生的偽碼也進(jìn)行FFT變換并取共軛,與FFT變換后的輸入信號相乘,并對輸出結(jié)果進(jìn)行IFFT變換轉(zhuǎn)換到時域。得到的結(jié)果既代表輸入信號與本地C/A碼的相關(guān)結(jié)果。
其算法原理圖如圖2所示。
圖2 并行碼相位搜索算法
傳統(tǒng)并行碼相位搜索算法的運算速度,精度相比串行搜索算法有著明顯的優(yōu)勢。下一節(jié)將對傳統(tǒng)捕獲算法進(jìn)行改進(jìn),繼續(xù)加強(qiáng)捕獲速度,以滿足更高要求下的捕獲速度。
GPS的C/A碼信號其周期為1ms,若采樣頻率為Fs,則在1ms內(nèi)將會產(chǎn)生[0.001×Fs]個點,其中,[x]表示不大于x的最大整數(shù)。本地的C/A碼也需要采樣[0.001×Fs]個點與輸入信號對應(yīng)。而C/A碼的碼頻為1.023MHz,1ms內(nèi)有1 023個碼片,意味著1 023個點就包含了全部的C/A碼相位信息?;谶@點可以對大量采樣點進(jìn)行抽取減少數(shù)據(jù)量,但是抽取的間隔不能過高。因為若抽取間隔使得采樣點在1ms內(nèi)低于1 023個點,則采樣信息丟失完整的C/A碼信息,這種抽取會導(dǎo)致C/A碼信息的不完整。
利用上述理論思想中國科學(xué)院的武劍峰等人[3]和哈爾濱理工大學(xué)的盧迪等人[4]利用抽取的方法改進(jìn)了串行搜收捕獲算法。前者提出在兩路中頻信號混頻后對數(shù)據(jù)進(jìn)行抽取采樣,然后進(jìn)行相關(guān)運算,圖3是文獻(xiàn)[3]的算法框圖。而后者提出了基于混頻前端抽取的串行捕獲算法,相較于文獻(xiàn)[3]后者將抽取提到了混頻前,降低了處理數(shù)據(jù)的運算量,圖4是文獻(xiàn)[4]的算法框圖。
圖3 文獻(xiàn)[3]算法框圖
圖4 文獻(xiàn)[4]算法框圖
可以看出兩者都是對串行捕獲算法進(jìn)行的改進(jìn),并且在抽取階段只是簡單的抽取敘述并沒有詳細(xì)的分析。實際上,抽取導(dǎo)致的采樣率變換相對于原始輸入信號必然會形成欠采樣,造成頻譜的混疊。因此只是簡單的依靠對采樣點的直接抽取是很難實現(xiàn)對信息的保留,必須對采樣數(shù)據(jù)另行處理,即通過特殊的濾波器來盡可能的減弱頻譜混疊的影響。
本文利用級聯(lián)-梳狀(CIC)濾波器來完成抽樣濾波。CIC濾波器是一種零極點相消的FIR濾波器,只有加法和延時運算,沒有一般FIR濾波器所需要的大量乘法運算[5],所以實現(xiàn)簡單,節(jié)省資源。
一個N級CIC抽取濾波器的系統(tǒng)傳遞函數(shù)為
(1)
式中:D為微分延遲因子;R為整數(shù)抽取因子;N為級聯(lián)數(shù)。
由式(1)可以得出其N級頻率響應(yīng)為
H(f)=(sin(πDRf)/sin(πf))NejπNf(RD-1).
(2)
由式(2)可知[0,1/DR]為主瓣,第一旁瓣在3/2DR處。
所以N級CIC旁瓣抑制為
(3)
通過CIC抽取濾波器后,對抽取的信號與本地載波以及C/A碼進(jìn)行并行碼相位搜索算法以找到頻率以及碼相位信息。
因為采樣點進(jìn)行了抽取,不可避免的有信息的丟失,所以一方面為了消除信息的丟失對結(jié)果造成的影響,另一方面為了還原原采樣頻率點數(shù)方便后續(xù)跟蹤等處理,還需要結(jié)合串行搜索算法來進(jìn)一步確定碼相位。
(4)
由式(4)可得|Y1-Y2|<1,對式子進(jìn)行變換可以得到:
(5)
(6)
式中,N為1 ms采樣點數(shù)。
最后找到r(n)的最大值,則可以得到準(zhǔn)確的碼相位。圖5是本文算法框圖。
圖5 本文算法框圖
3.1 算法仿真
為了驗證本文分析的算法有效性,利用Matlab對這種捕獲算法進(jìn)行仿真。仿真所用信號為華力創(chuàng)通衛(wèi)星信號源HWA-RNSS-7600產(chǎn)生的中頻為4.024MHz的GPS信號,采樣頻率為16.367 667MHz,碼頻為1.023MHz,包含第25號衛(wèi)星。用來捕獲的采樣數(shù)據(jù)長度為1ms,中頻信號功率譜如圖6所示。
圖6 中頻信號功率譜
本文抽取階段用到CIC濾波器,CIC濾波器的性能由抽取因子R,微分延遲因子D,級聯(lián)數(shù)N共同決定,前文已經(jīng)分析,N取5較為合適。而D工程實踐中一般取值為1或2,本文選取1作為D的值。對于R的選取,因為CIC抽取濾波器的混疊誤差的頻率區(qū)間[6]為
圖7 CIC濾波器對比
抽取濾波后的信號進(jìn)入FFT并行碼相位模塊進(jìn)行捕獲,得到的結(jié)果如圖8所示,圖8(b)中頻率搜索的峰值為4.026MHz,(頻率搜索步長為1 000Hz,搜索范圍為10kHz)。圖8(c)中碼相位結(jié)果峰值對應(yīng)的值為141,轉(zhuǎn)換到基碼碼相為:141×1023/8184=17.625≈18.
圖9為傳統(tǒng)并行碼相位捕獲方法得到的結(jié)果,從圖9(b)中可以得到載波頻率為4.026Mhz與本文算法結(jié)果保持一致,圖9(c)所示碼相位峰值為:288,轉(zhuǎn)換到基碼相位為:288×1023/16367=18.00≈18,可以看出,碼相位結(jié)果也是保持一致的。
圖8 本文捕獲算法結(jié)果(a) 衛(wèi)星信號; (b) 載波頻率; (c) 碼相位
圖9 傳統(tǒng)并行碼相位算法仿真結(jié)果(a) 衛(wèi)星信號;(b) 載波頻率; (c) 碼相位
對比圖8(a)和圖9(a),傳統(tǒng)并行碼相位搜索算法得到的相關(guān)峰值為9.9419×105,本文抽取后的相關(guān)峰值為1.144×104,造成相關(guān)值降低的原因是由于抽取導(dǎo)致的信息丟失,但是這種丟失對實驗結(jié)果是沒有影響的,是可以接受的。
圖10 串行搜索結(jié)果
3.2 算法復(fù)雜性分析
由圖1中可以看出,并行碼相位算法在捕獲過程中需要兩次快速傅里葉變換,一次快速傅里葉反變換以及N點復(fù)數(shù)乘法。N點FFT需要復(fù)數(shù)乘法次數(shù)為[8]
復(fù)數(shù)加法次數(shù)為
CA=N·M,
其中,由FFT計算方式可知N=2M,所以有M=lbN.所以,并行碼相位算法需要復(fù)數(shù)乘法次數(shù)為
復(fù)數(shù)加法次數(shù):
CA=3N·M,
其中,一次復(fù)數(shù)乘法需要四次實數(shù)乘法,二次實數(shù)加法。一次復(fù)數(shù)加法需要兩次復(fù)數(shù)加法。所以傳統(tǒng)并行碼相位需要乘法次數(shù):
CM=6N·M+4N.
需要加法次數(shù):
CA=9N·M+2N.
若采樣頻率為16.367667MHz,則傳統(tǒng)并行碼相位捕獲算法中,1ms的數(shù)據(jù)需要乘法次數(shù): CM=1441792,需要加法次數(shù)CA=2097152.
在改進(jìn)的捕獲算法中,采樣點下降到8184個。所以前面并行搜索部分需要乘法次數(shù): CM1=671744,加法次數(shù): CA1=974848.
后部分串行搜索部分,需要搜索31個點,所以需要乘法次數(shù):CM2=507377,需要加法次數(shù):CA2=507377.所以,改進(jìn)算法中需要乘法總次數(shù)為CM=CM1+CM2=1179121,需要加法總次數(shù)為:CA=CA1+CA2=1482225.
由上面可以得出,從運算量來看,改進(jìn)的算法顯然優(yōu)于傳統(tǒng)并行碼相位捕獲算法,并且在抽取因子R更大時,會有更大的優(yōu)越性。
本文提出了一種基于CIC抽取濾波器結(jié)合串并行的捕獲算法,該算法減少了計算量而又不失碼相位精度。然后在一定的采樣頻率下對算法用MTLAB進(jìn)行仿真并且對運算優(yōu)勢進(jìn)行了分析,證明了算法的正確性和優(yōu)越性。此種捕獲方法對接收機(jī)的研究具有一定的理論意義和工程意義。
[1] JAME BAO-YEN TSUI. Fundamentals of Global positiining system receivers a software approach[M].Johnwiley Sons Inc,1988:108-110.
[2] 吳娟麗.GPS軟件接收機(jī)的研究及MATLAB實現(xiàn)[D].西安:長安大學(xué),2009:18-20.
[3] V吳建鋒,胡永輝,蔡成林.GPS信號串行捕獲算法研究[J].小型微型計算機(jī)系統(tǒng),2010(1):186-189.
[4] 盧迪,駱相吉,許成舜,混頻前段抽取的串行捕獲算法研究[N].哈爾濱理工大學(xué)學(xué)報,2015,20(4):82-87.
[5] 劉彬彬,林偉.基于Matlab和FPGA的CIC濾波器的設(shè)計[J].電子器件, 2010,33(2):231-234.
[6] RICHARD L. Understanding cascaded integrator-comb filters[J]. Embed Syst Program,2005,18(4):12-17.
[7] 楊保香,張志云,宋育紅. CIC抽取濾波器的研究和設(shè)計[N].寧波職業(yè)技術(shù)學(xué)院學(xué)報,2009,13(2):12-15.
[8] SERGIO R,HARRIS F J. An introduction to FFT and time domain windows[J].IEEE Instrumentation & Measurement Magazine,2007,10(6):32-44.
Based on CIC Extraction Filter Combination of Serial and Parallel Search Capture Algorithm
JIA Zhendong,GUO Chengjun,LIU Fushan
(ResearchInstituteofElectronicScienceandTechnology,UniversityofElectronicScienceandTechnologyofChina,Chengdu611731,China)
GPS signal capture is an important part of the GPS receiver, and serial search algorithm, parallel code phase algorithm are the useful methods of GPS signal capture. But as the GPS receiver covers our life, the requirement on the speed of the capture algorithm is higher and higher. This paper puts forward a new capture method, based on the CIC extraction filter and the combination of serial-parallel search algorithm. This acquisition method uses CIC filter to reduce the impact of aliasing in the extraction phase.And serial search are added in the capture method on the basis of the parallel code phase search algorithm.thereby reducing the amount of calculation and improving the operation speed. In this paper, the algorithm is simulated, and the experimental results show the effectiveness and superiority of this method. Finally, the operation advantages are analyzed.
GPS; capture; CIC extraction filter; combination
2016-09-07
10.13442/j.gnss.1008-9268.2016.06.013
P228.4
1008-9268(2016)06-0064-06
賈振東(1993-),男,碩士生,研究方向為電子與通信工程。
郭承軍(1985-),男,博士生,研究方向為信號與信息處理。
劉賦山 (1992-),男,碩士生,研究方向為電子與通信工程。
聯(lián)系人:賈振東 E-mail: jiazhend_6061@qq.com