田野,湛劍佳
(湖南廣播電視大學,湖南 長沙 410004)
隨著全球衛(wèi)星導航系統(tǒng)(GNSS)的發(fā)展,導航接收機的應(yīng)用越來越廣泛,由于導航信號到達地面時的信號功率較小,通常低于-160 dBW[1],因此對導航信號的捕獲和接收處理需要采用較高性能的捕獲算法。為了提高對導航信號的捕獲概率,導航接收機通常會采用相干積累和非相干積累相結(jié)合的方法。
由于存在多普勒頻移,衛(wèi)星信號的檢測本質(zhì)上是一個時間-頻率的二維搜索問題。傳統(tǒng)的接收機往往采用并行搜索結(jié)構(gòu),以加快搜索速度。文獻[2-7]對時域并行、頻域并行、時頻域結(jié)合的算法進行廣泛的研究。其中時頻域結(jié)合的搜索算法采用分段相關(guān)和FFT頻域并行搜索相結(jié)合的方法,可以將時間-頻率的二維搜索近似為一維時間搜索,易于硬件采用流水結(jié)構(gòu)實現(xiàn)[8-11]。但該方法存在設(shè)計參數(shù)給定后,信號的相干積累時長不易調(diào)節(jié)的缺點。當接收機需要捕獲的信號較強時,可以采用較短的相干積累時長,快速完成信號的捕獲;當接收機需要捕獲的信號較弱時,需要采用較長的相干積累時長,以便捕獲到更弱的導航信號。采用時頻域結(jié)合的捕獲算法,存在信號相干積累時長不能靈活調(diào)整的不足,為此,本文設(shè)計了一種可變相干積累時長的捕獲算法,在捕獲電路結(jié)構(gòu)基本不變的基礎(chǔ)上,可以延長信號的相干積累時長,同時不引入額外的多普勒損耗,以獲得更好的捕獲性能。
本文第一部分從信號的捕獲模型入手,描述了傳統(tǒng)時頻域捕獲算法,并設(shè)計了一種可變相干積累時長的捕獲算法,該方法在延長相干積累時間的同時,也等效提高了FFT運算的點數(shù),第二部分對比分析了可變相干積累時長的FFT損耗和檢波損耗,指出了延長相干積分時間不會增加額外的FFT損耗,但可以減小檢波損耗,最后通過蒙特卡洛仿真驗證了可變相干積累時長捕獲算法的正確性和有效性。
待捕獲的GNSS導航信號可表示為
n(t),
(1)
式中:C為信號的功率;d(t)為導航電文;c(t)為偽隨機碼;n(t)為高斯白噪聲,雙邊帶譜密度N0.C/N0為信號的載噪比,單位dBHz.接收信號經(jīng)正交下變頻和低通濾波器處理后,得到信號捕獲處理的基帶復信號,其表達式為
(2)
由于信號的捕獲是通過大量相關(guān)器實現(xiàn)的,為了行文方便,將信號捕獲過程中所用的相關(guān)器如圖1所示的方式進行編號,共有M×N個相關(guān)器。每個相關(guān)器實現(xiàn)對IQ兩個支路的信號進行相關(guān),如圖1所示,第n行m列相關(guān)器輸出的相關(guān)結(jié)果可表示為
xn,m=In,m+jQn,m=C/N0·Tc·sinc(πfdTc)·
R(Δτ)·ej·(2πfdiTc+Δθ)+nw,
(3)
式中:Tc為相干積分時間; sinc(πfdTc)為信號多普勒的大小對的短時相關(guān)積累結(jié)果的影響;R()為偽碼自相關(guān)函數(shù),忽略碼相位損耗有R(Δτ)=R(0)=1;i=nM+m,n=0,1,…,N-1,m=0,1,…,M-1; Δθ為殘余相位;nw為復噪聲信號。
傳統(tǒng)時頻域結(jié)合方法的結(jié)構(gòu)如圖2所示。
根據(jù)上述結(jié)構(gòu),每個FFT組的結(jié)果為
(4)
(5)
式中,F表示FFT的點數(shù)。通過FFT運算,實現(xiàn)了對信號的頻域搜索,頻率分格大小為1/(F·Tc)。經(jīng)過FFT運算后,信號的相干積分時間變?yōu)榱薽·Tc.
當信號的多普勒頻率變化在信號捕獲的過程中可以忽略的條件下,不同F(xiàn)FT組相同序數(shù)的結(jié)果存在如下關(guān)系
Xn1,k=Xn2,k·ej·2π·fd·(n1-n2)·Tc.
(6)
為了消除不同組FFT結(jié)果間的相位差異,需要對不同組FFT的結(jié)果進行非相干累加處理,一種常用的非相干累加方式為包絡(luò)累加,具體有
(7)
式中,下標k為多普勒的搜索格子。上述過程僅僅完成了一個時延處的搜索,如果用下標τ表示時延的搜索格子,則最終的捕獲判決量可設(shè)計為取所有時間-頻率搜索格子內(nèi)的最大值即
(8)
當V大于門限時,則認為捕獲到信號,否則認為捕獲失敗。
在時頻域結(jié)合的捕獲算法中,當相關(guān)器的積分時間Tc和輸入FFT的相關(guān)結(jié)果個數(shù)M確定后,整個算法的相干積分時間也就固定了。為了能夠延長信號的相干積分時間,進一步提升接收機對弱信號的捕獲性能,本文設(shè)計了一種可變相干積累時長的捕獲算法。
在時頻結(jié)合的捕獲算法中,信號的相干積累時長為由相關(guān)器的積分時間Tc和輸入FFT的相關(guān)值點數(shù)M決定,如果要延長相干積累時長,可以增加輸入FFT的點數(shù)M.在保證捕獲結(jié)構(gòu)基本不變的基礎(chǔ)上,可以對M進行成倍的增加,即將M變?yōu)長·M.當輸入FFT的點數(shù)增加后,如果不增加FFT的點數(shù),將會導致FFT損耗的增大,為了不引入額外的損耗,需要同時增加FFT的點數(shù),考慮到FFT的運算特點,一種簡單的實現(xiàn)方式是將L設(shè)計為2的整數(shù)次冪,這樣可以利用原有的F點FFT,實現(xiàn)L·F點的FFT.當L=2時,可變相干積累時長的捕獲算法可以設(shè)計為圖3所示的結(jié)構(gòu)。
如圖3所示,可以將相鄰兩組相關(guān)器按圖中所示編號重新排列,分別記為0到2M-1,相關(guān)值為xm,m=0,1,…,M-1.信號的相干積累時間的延長方式是通過等效實現(xiàn)對2M點相關(guān)結(jié)果的2F點的FFT實現(xiàn)的,這樣信號的相干積累時間就從M·Tc增加到了2M·Tc.為了等效實現(xiàn)2M點相關(guān)結(jié)果的2F點FFT運算,需要對兩個F點的FFT的運算結(jié)果進行組合加權(quán),具體算法如表1所示。
表1 L=2時可變相干積累時長的捕獲算法描述
上述過程借助于FFT運算的特點,利用2個FFT運算單元,等效地實現(xiàn)了2F點的FFT運算,這樣,在延長信號相干積累時長的同時,也提高了FFT的點數(shù)。依次類推,也可以將信號的相干積累時長延長至原來的4倍甚至更高,但帶來的代價是增加了組合加權(quán)過程。本文主要以L=2為例,對算法的性能進行分析。
對圖3中的組合加權(quán)結(jié)果Yk,l進行包絡(luò)檢波,并進行N/2次后積累,可得到一個時延-多普勒格子處的檢測量,即
(9)
算法后續(xù)的處理過程和傳統(tǒng)的時頻域結(jié)合捕獲算法保持一致。在可變相干積累時長的算法中,相干積累時長的改變通過調(diào)整參數(shù)L實現(xiàn),即當L=1時,該算法等價為傳統(tǒng)的時頻結(jié)合捕獲算法,當L>1時,該算法的相干積分時間增加到了L·M·Tc.
在進行FFT運算的過程中,相當于對信號的頻域進行搜索,經(jīng)過FFT處理后,信號的相干積分時間等價于M·Tc,由于FFT運算過程中不可避免地會產(chǎn)生柵瓣效應(yīng),因此,會引入損耗,經(jīng)過FFT處理后,獲得的增益大小為[3-4]
(10)
式中,k為FFT最大值對應(yīng)的譜線序列,定義FFT損耗Ls為
(11)
式中:G0為FFT運算中不考慮柵瓣效應(yīng)的理想增益,即為輸入FFT的數(shù)據(jù)段數(shù)M.在可變相干積累時長的捕獲算法中,FFT的點數(shù)由F點變?yōu)榱薒·F點,輸入FFT的數(shù)據(jù)段數(shù)由M段變?yōu)榱薒·M段,因此,FFT帶來的增益和FFT損耗分別為
(12)
(13)
當L=1時,可變相干積累時長的捕獲算法退化為傳統(tǒng)的時頻域結(jié)合的捕獲算法。圖4示出了兩種算法下的FFT損耗結(jié)果,其中L=1對應(yīng)傳統(tǒng)捕獲算法,L=2對應(yīng)延長一倍相干積累時長的算法。仿真中所用參數(shù)為Tc=0.05 ms,M=20,FFT點數(shù)為32點。遍歷了多普勒從0到5 000 Hz下的FFT損耗,可以看出,延長相干積分時間后,基本上不影響FFT損耗。
為了實現(xiàn)對FFT結(jié)果的非相干積累,通常采用包絡(luò)檢波的方式對FFT的運算結(jié)果進行檢波處理,然后再進行非相干積累。包絡(luò)檢波過程會引入額外的檢波損耗Cs,具體大小為[12-13]
(14)
其中,SNRB為送入包絡(luò)檢波器的信號信噪比。
從損耗公式可以看出,檢波前信噪比SNRB越大,包絡(luò)檢波損耗越小。顯然對于可變相干積累時長的捕獲算法,當相干積分時間增加為原來的L倍后,檢波前的信噪比也會增加至原來的L倍,因此其檢波損耗為
(15)
顯然L=2時的檢波損耗比L=1時的檢波損耗小,圖5示出了兩種參數(shù)下檢波損耗隨SNRB的變化關(guān)系,上圖顯示了L=2和L=1時的具體檢波損耗,下圖給出了L=1和L=2時檢波損耗的差值??梢钥闯?延長一倍相干積分時間,檢波損耗可以減小0.8~3 dB,檢波前信噪比越小,檢波損耗的減小量越大。
通過2.1節(jié)和2.2節(jié)的分析,可以看出,采用可變長相干積累時長的捕獲算法,雖然不會降低FFT損耗,但通過延長相干積分時間,能夠提升檢波前的信噪比,降低檢波損耗,提升檢測性能。
對比圖2和圖3,以L=2時的可變相干積分時長的算法為例,相比傳統(tǒng)的時頻域結(jié)合捕獲算法,對于可變相干積分時長的算法,根據(jù)表1中步驟3和步驟4可以看出,該算法需要額外增加N·F個乘法器和N·F個加法器,以實現(xiàn)延長一倍相干積分時長的效果。除此之外,為了實現(xiàn)將兩個F點FFT的結(jié)果拼接成一個2F點FFT的結(jié)果,還需要增加表1中步驟1和步驟2所需要的邏輯控制部分,以實現(xiàn)對緩存數(shù)據(jù)的奇偶序號提取,這在傳統(tǒng)時頻域結(jié)合的捕獲算法中是不需要的。綜合上面兩個方面的因素,可變相干積分時長的捕獲算法是以增加計算的負荷和實現(xiàn)復雜度為代價實現(xiàn)捕獲性能的提升。
采用GPS-L1C/A信號進行仿真,仿真信號條件設(shè)置如表 2所示,總的信號積累時長為4 ms,信號的時延搜索范圍為一個偽碼周期,即1 ms,分別仿真L=1和L=2兩種情況下捕獲算法的性能。
表2 仿真條件下信號的捕獲參數(shù)設(shè)置
仿真實驗采用蒙特卡洛的仿真方法,主要通過對比不同捕獲算法在不同條件下的捕獲概率和虛警概率指標[1]。捕獲判決方式采用取大判決和過門限判決相結(jié)合的方式[6],即取一次時頻域結(jié)合算法中得到所有的捕獲分格下的最大值作為判決量,并將該最大值和門限進行比較,如果比門限高,則認為捕獲成功,否則捕獲失敗。下面對比了兩種算法在不同信號強度和不同多普勒條件下的性能。
為了對比兩組參數(shù)在不同信號強度下的捕獲性能,設(shè)置信號多普勒參數(shù)固定為500 Hz,此時仿真載噪比從30 dB·Hz到45 dB·Hz下的捕獲性能。圖6示出了虛警概率為1×10-3條件下,兩種算法的捕獲概率隨信號載噪比的變化關(guān)系,可以看出,將采用可變相干積分時間的捕獲算法,將相干積分時間延長一倍,可以提升約1 dB左右的捕獲性能。圖7示出了當信號強度為37 dB·Hz時,兩種捕獲算法在不同虛警概率下的捕獲性能,可以看出當虛警概率為0.1時,延長一倍的積分時間,可以提升約10%左右的捕獲概率。
對比信號多普勒對可變相干積累時長的影響,分別仿真不同多普勒初值下L=1和L=2兩組參數(shù)的算法性能,多普勒初值從0~5 000 Hz,以500 Hz為步進量進行遍歷,信號強度設(shè)置為37 dB·Hz,兩種算法的結(jié)果如圖8所示。
從上面的仿真結(jié)果可以看出,延長相干積分時長后,信號多普勒從0變化到5 000 Hz時,其捕獲概率均大于傳統(tǒng)時頻域結(jié)合的捕獲算法,這也說明了本文所提出的方法并不會引入額外的多普勒損耗。另外,兩種方法下,其捕獲性能均隨著信號多普勒的增大而下降,這主要是由于信號多普勒越大,如式(3)所示,在短時相關(guān)長度Tc固定的條件下,相關(guān)器輸出結(jié)果中的多普勒損耗越大,從而導致算法性能的下降。
為了驗證可變相干積分時長算法的計算負荷,采用Matlab軟件,分別統(tǒng)計該算法和傳統(tǒng)時頻域相結(jié)合算法的計算耗時,用來等效地對比兩種算法的計算負荷。如果matlab計算的耗時越小,則說明算法的計算負荷越小。由于實際的捕獲算法可能由不同的器件或平臺實現(xiàn),因此本節(jié)的計算負荷仿真只能定性地對兩種方法的計算負荷進行驗證。表3示出了兩種算法在不同次數(shù)下的仿真耗時。
表3Matlab下算法運行耗時結(jié)果s
L100次1000次 L=160.10593.69 L=271.15673.28
根據(jù)上面的結(jié)果可以看出,L=2時的可變相干積分時長的捕獲算法運行耗時明顯比傳統(tǒng)時頻域相結(jié)合的算法計算耗時長,這就表明該算法的計算負荷較大,從而驗證了2.3節(jié)的分析結(jié)論,這也說明了可變相干積分時長的捕獲算法是以增加算法的計算負荷為代價提升捕獲性能的。
本文提出了一種可變相干積累時長的時頻域結(jié)合捕獲算法,在延長信號相干積累時間的同時,可以等效提高算法中FFT的運算點數(shù),保證在減小算法檢波損耗的同時,不增加額外的FFT損耗。分析和仿真表明,采用可變相干積累時長的算法,通過延長信號的相干積累時間,可以提升信號的捕獲性能,但帶來的代價是增加了算法的計算負荷。