袁蔥林,唐小妹,韓春陽,孫廣富
(1.國(guó)防科技大學(xué) 導(dǎo)航與時(shí)空技術(shù)工程研究中心,湖南 長(zhǎng)沙 410003;2.北京衛(wèi)星導(dǎo)航中心,北京 100084)
通常,P碼的捕獲是通過C/A碼來引導(dǎo)捕獲的,但由于C/A碼周期短,碼速率低,易被敵方干擾和欺騙,在GPS導(dǎo)航戰(zhàn)與電子對(duì)抗的環(huán)境下,要求GNSS接收機(jī)能夠?qū)碼進(jìn)行準(zhǔn)確迅速的直接捕獲,確保戰(zhàn)時(shí)衛(wèi)星導(dǎo)航系統(tǒng)的正常使用。 P碼的周期長(zhǎng),碼速率高,若使用傳統(tǒng)的捕獲方法,需要很長(zhǎng)的捕獲時(shí)間,尤其在高動(dòng)態(tài)、大多普勒頻移下,傳統(tǒng)的偽碼捕獲方法很難實(shí)現(xiàn)。 因此P碼捕獲的關(guān)鍵在于如何減小捕獲時(shí)間以及提高多普勒頻率誤差容忍度[1]。
本文將部分匹配濾波器與FFT結(jié)合(以下簡(jiǎn)稱PMF-FFT)的算法應(yīng)用到P碼的捕獲中,利用PMF-FFT算法能夠有效抵抗多普勒頻移引起的相關(guān)峰衰減的特性,擴(kuò)大了頻率搜索范圍,在頻域內(nèi)進(jìn)行并行搜索,大大提高了捕獲速度,解決了P碼捕獲的關(guān)鍵問題。 同時(shí)在此基礎(chǔ)上本文使用了重疊保留法對(duì)其進(jìn)行了改進(jìn),利用FFT的卷積特性,在實(shí)現(xiàn)接收信號(hào)與本地偽碼的子相關(guān)處理時(shí),引入并行碼相位搜索機(jī)制,進(jìn)一步縮短了捕獲時(shí)間。 本文給出了P碼捕獲實(shí)現(xiàn)的流程和原理,并用Matlab進(jìn)行仿真,綜合考慮各個(gè)參數(shù)之間的關(guān)系,提出了相關(guān)參數(shù)選取的準(zhǔn)則,對(duì)各項(xiàng)損耗或增益進(jìn)行了定量分析,從而為該算法的實(shí)際應(yīng)用奠定了堅(jiān)實(shí)的理論基礎(chǔ)。
基于PMF-FFT方法的捕獲流程為[2]:將長(zhǎng)為M的接收信號(hào)去除載波后,等分成P段,進(jìn)入P個(gè)部分匹配濾波器進(jìn)行相關(guān)匹配,匹配濾波器中裝載長(zhǎng)為M的復(fù)制碼。 每個(gè)相關(guān)積分單元對(duì)連續(xù)的X個(gè)采樣點(diǎn)做相關(guān)運(yùn)算,M=PX.對(duì)于每一段內(nèi)位于同一位置的相關(guān)積分值進(jìn)行N點(diǎn)FFT(N>P),若在整個(gè)二維空間中出現(xiàn)的最大值超過門限,則判定為捕獲成功,否則將信號(hào)移位X點(diǎn),繼續(xù)進(jìn)行搜索。捕獲原理框圖如圖1所示。
考慮到導(dǎo)航電文比特翻轉(zhuǎn)問題,相干積分時(shí)間不宜過長(zhǎng),可使用非相干累加方法進(jìn)一步提高信噪比。
重疊保留法在數(shù)字信號(hào)處理中,是一種以循環(huán)卷積實(shí)現(xiàn)線性卷積的快速算法,當(dāng)兩條序列長(zhǎng)度相差很大時(shí),通過將長(zhǎng)序列分段重疊,與短序列分別作循環(huán)卷積,保留有效值,拼接以得到最終的線性卷積結(jié)果。
在使用PMF-FFT方法進(jìn)行子相關(guān)處理時(shí),使用的是串行搜索碼相位的方法,搜索效率較低,若在每個(gè)子相關(guān)器中使用重疊保留法進(jìn)行計(jì)算,將大大提高接收信號(hào)與本地偽碼的相關(guān)運(yùn)算速度。具體應(yīng)用為:將接收信號(hào)分段,每段長(zhǎng)為2X,重疊部分長(zhǎng)為X,本地偽碼分為P段,存儲(chǔ)在長(zhǎng)度為2X的部分匹配濾波器中,其中前X點(diǎn)為偽碼采樣點(diǎn),后X點(diǎn)為零填充部分,將匹配濾波器中的系數(shù)取共軛傅里葉變換后,再與接收信號(hào)的傅里葉變換直接相乘,經(jīng)過IFFT變換,僅保留前X點(diǎn)有效相關(guān)值[3]。在獲得P段長(zhǎng)為X的相關(guān)值后,對(duì)處于同一個(gè)碼相位的分段相干累加結(jié)果進(jìn)行N點(diǎn)FFT變換,得到該碼相位下對(duì)應(yīng)的多普勒分布,在本次搜索的X個(gè)采樣點(diǎn)中取FFT輸出幅值的最大值進(jìn)行門限判別,若大于門限則認(rèn)為捕獲成功,若未超過門限則衛(wèi)星信號(hào)向前移位X,再次搜索。搜索判決流程如下:
設(shè)接收的信號(hào)為
r(t)=Ad(t+τ)C(t+τ)cos[2π(f0+fd)
(t+τ)+φ]+n(t).
(1)
式中:τ為相對(duì)本地信號(hào)的延遲;f0為載波頻率;fd為多普勒頻移;n(t)為高斯白噪聲。
經(jīng)過下變頻和采樣后,第n個(gè)部分匹配濾波器輸出為
(2)
式中:M為接收信號(hào)長(zhǎng)度;P為部分匹配濾波器數(shù)目;X為部分匹配濾波器長(zhǎng)度即單個(gè)匹配濾波器進(jìn)行相關(guān)運(yùn)算的采樣點(diǎn)數(shù);Ts為采樣間隔,與上節(jié)中PMF-FFT算法中的參數(shù)含義一致。
對(duì)P個(gè)匹配濾波器的輸出進(jìn)行N點(diǎn)FFT運(yùn)算,得到FFT輸出幅度響應(yīng)為
(3)
將幅值歸一化后得到:
(4)
可將其分成兩部分來看,即
G(fd,k)=G1(fd)G2(fd,k),
(5)
其中:
(6)
為部分匹配濾波器中進(jìn)行相關(guān)累積引起頻率響應(yīng);
(7)
為FFT運(yùn)算對(duì)輸出幅度造成的影響。
2.2.1 時(shí)頻相關(guān)積累功率損耗
由上節(jié)對(duì)信號(hào)建模歸一化FFT輸出幅值分析可知,功率損耗來源于兩部分,第一部分為時(shí)域相關(guān)積分引起的多普勒損耗[4]:
(8)
(9)
則相關(guān)積分后信號(hào)的等效信噪比為
CNR·X·P·Ts.
(10)
2.2.2 包絡(luò)檢波損耗
在實(shí)際接收機(jī)中,需要使用平方律檢波或包絡(luò)檢波方法合并I、Q支路信號(hào)以消除電文比特翻轉(zhuǎn)的影響,而采用這類檢波器會(huì)引入檢波損耗。包絡(luò)檢波損耗的經(jīng)驗(yàn)公式可表示為[5]
(11)
則采用包絡(luò)檢波器后的信噪比為
(12)
2.2.3 非相干積累功率損耗
為了提高被檢信號(hào)的信噪比,接收機(jī)通常需要對(duì)接收信號(hào)進(jìn)行非相干積分,雖然非相干積分中的積分運(yùn)算能增強(qiáng)信噪比,但積分之前的平方運(yùn)算會(huì)引入平方損耗LSQ,因此信噪比并不隨非相干累積次數(shù)增加而線性增加。
非相干積分增益Gnc的計(jì)算公式為[6]
Gnc=10lgNnc-LSQ.
(13)
式中,Nnc為非相干積分次數(shù)。
圖3示出了不同非相干積分前信噪比條件下的平方損耗經(jīng)驗(yàn)值[7],計(jì)算推導(dǎo)過程可參考原書附錄,該圖表明,平方運(yùn)算對(duì)強(qiáng)度越弱的信號(hào)會(huì)造成越大的平方損耗。
對(duì)于傳統(tǒng)的PMF-FFT算法,一個(gè)部分匹配濾波器長(zhǎng)為X,需要使用串行搜索的方式對(duì)X個(gè)采樣點(diǎn)進(jìn)行相關(guān)累加,得到一個(gè)采樣點(diǎn)的相關(guān)值需要進(jìn)行X次乘法與X-1次加法,因此X個(gè)采樣點(diǎn)需要X2次乘法與X·(X-1)次加法。
對(duì)于改進(jìn)的PMF-FFT方法,其存在一半無效相關(guān)結(jié)果,因而需要將部分匹配濾波器長(zhǎng)度拓展到2X,以得到X個(gè)采樣點(diǎn)的有效值。
對(duì)2X個(gè)采樣點(diǎn)進(jìn)行并行搜索,需要進(jìn)行兩次FFT操作以及一次IFFT操作。
一次2X點(diǎn)FFT需要(2X)lb2X=2X(1+lbX)次復(fù)數(shù)加法運(yùn)算,以及0.5(2X)lb2X=X(1+lbX)次復(fù)數(shù)乘法運(yùn)算。一次復(fù)數(shù)加法相當(dāng)于兩次加法,一次復(fù)數(shù)乘相當(dāng)于4次乘法和3次加法,于是2X個(gè)采樣點(diǎn)并行搜索總運(yùn)算次數(shù)為:4X(1+lbX)次乘法和10X(1+lbX)次加法[7]。表1示出了改進(jìn)前后的PMF-FFT方法搜索X個(gè)采樣點(diǎn)的乘法、加法運(yùn)算量對(duì)比。
表1 相關(guān)累加運(yùn)算量比較
由表1可知,使用FFT在頻域內(nèi)實(shí)現(xiàn)時(shí)域相關(guān)運(yùn)算可以大大降低運(yùn)算量,并隨搜索長(zhǎng)度的增加,并行搜索的優(yōu)勢(shì)越明顯,代價(jià)僅為一倍長(zhǎng)度的匹配濾波器長(zhǎng)度拓展,通過少量的存儲(chǔ)資源消耗換來計(jì)算量上的大大減少,因此該改進(jìn)方法具有較大應(yīng)用價(jià)值。下節(jié)將通過matlab仿真,確定在該改進(jìn)方法中的最優(yōu)參數(shù)組合選取。
本節(jié)主要對(duì)P碼捕獲的算法性能進(jìn)行了仿真分析。仿真條件為: 10.23 MHz的P碼碼率,采樣率為20.46 MHz,在載噪比為35 dB·Hz,多普勒頻偏為6 000 Hz條件下,滿足虛警概率為10-6時(shí),捕獲概率≥90%的性能指標(biāo)的最優(yōu)參數(shù)設(shè)計(jì), 包括部分匹配濾波器長(zhǎng)度2X(其中前X點(diǎn)為本地偽碼,后X點(diǎn)為零填充),分段數(shù)(即濾波器個(gè)數(shù))P,非相干累加次數(shù)q等,搜索滿足約束條件、性能指標(biāo)下,使總運(yùn)算時(shí)間最短的參數(shù)組合。
1) 約束條件
2) 性能指標(biāo)
由捕獲概率和虛警概率計(jì)算得到等效判決信噪比D0:
=[erfc-1(2Pf)-erfc-1(2Pd)]2.
(14)
將Pd=90%,Pf=10-6代入式(14),可得到等效判決信噪比D0=12.60 dB.
本文對(duì)1~10 ms的相干積分總時(shí)間(M·fs),0.001~0.04 ms分段相干積分時(shí)間(X·fs)在q次非相干累加后,達(dá)到等效判決信噪比的最小總運(yùn)算時(shí)間進(jìn)行了仿真,為使其位置更加明顯,在圖中以倒數(shù)形式展現(xiàn),峰值所在位置即為該條件下的最優(yōu)參數(shù)選擇,結(jié)果如下:
計(jì)算機(jī)配置為Intel(R) Pentium(R) CPU G2020處理器,主頻2.90 GHz,4 GB內(nèi)存,64位Win7操作系統(tǒng)。為更好地說明不同參數(shù)組合設(shè)計(jì)會(huì)如何影響總運(yùn)算時(shí)間,特地選取了幾組具有代表性的參數(shù)來進(jìn)行說明。
表2為該改進(jìn)算法在不同總相干積分時(shí)間下,選擇不同分段相干積分時(shí)間的平均搜索時(shí)間(非相干累加次數(shù)q=1)。
然后進(jìn)一步確認(rèn)在此參數(shù)下達(dá)到等效判決信噪比的最小非相干累加次數(shù)q.如圖5(a)所示,不同的分段相關(guān)積分時(shí)長(zhǎng)在不同的總相干積分時(shí)間下,經(jīng)過包絡(luò)檢波后的信噪比也各不相同。因此導(dǎo)致其非相干累加的平方損耗和累加次數(shù)也不相同。圖5(b)中的橫線為滿足捕獲性能指標(biāo)的等效判決信噪比D0,在不同分段相干積分時(shí)間下,選取最接近D0的非相干累加次數(shù)即可滿足性能指標(biāo),同時(shí)使總運(yùn)算時(shí)間最短。
表2 不同積分時(shí)長(zhǎng)下改進(jìn)PMF-FFT算法的平均搜索時(shí)間
不同的分段相干積分時(shí)間使得單次PMF-FFT算法的平均時(shí)間不同,而分段積分時(shí)間不同導(dǎo)致的信噪比和非相干累加次數(shù)的不同,將導(dǎo)致總運(yùn)算時(shí)長(zhǎng)的差異。圖6示出在不同的總相干積分時(shí)長(zhǎng)下,不同分段相干積分時(shí)間達(dá)到等效判決信噪比的總運(yùn)算時(shí)間。
如圖6所示,若選擇總相干積分時(shí)長(zhǎng)為10 ms時(shí),應(yīng)當(dāng)選取分段相干積分時(shí)間為0.039 ms,此時(shí)總運(yùn)算時(shí)長(zhǎng)為0.287 1 s,非相干累加次數(shù)為1,即無需進(jìn)行非相干累加,單次PMF-FFT算法的運(yùn)算已能達(dá)到等效判決信噪比;若選擇總相干積分時(shí)間為4 ms,則應(yīng)當(dāng)選取分段相干積分時(shí)間為0.25 ms,此時(shí)非相干累加次數(shù)為4次。
由以上結(jié)論可以得出,在35 dBHz載噪比,600 0 Hz的多普勒頻率偏移條件下,最優(yōu)參數(shù)組合選取如表3所示。
上述優(yōu)化設(shè)計(jì)結(jié)果為總相干積分時(shí)長(zhǎng)確定后,分段相干積分時(shí)長(zhǎng)與相干累加次數(shù)的最優(yōu)選擇,是滿足“達(dá)到等效判決信噪比條件下總運(yùn)算時(shí)間最少”準(zhǔn)則的結(jié)果。接收機(jī)根據(jù)自身硬件條件、資源使用情況,以及其他P碼捕獲算法(如XFAST算法)相結(jié)合后的參數(shù)設(shè)計(jì)需求,選擇合適的總相干積分時(shí)間,在表3中可找到該時(shí)間下對(duì)應(yīng)的最優(yōu)參數(shù)設(shè)計(jì)組合。若不考慮其他算法的性能要求,選用3 ms作為總相干積分時(shí)長(zhǎng)、0.023 ms為分段相干積分時(shí)長(zhǎng)、進(jìn)行5次非相干累加,可使總運(yùn)算時(shí)間最短。總體來說,對(duì)于不同的總相干積分時(shí)間,分段相干積分時(shí)長(zhǎng)選在0.02~0.04 ms之間較佳。
表3 不同總積分時(shí)長(zhǎng)下最優(yōu)參數(shù)選取組合
本文基于PMF-FFT捕獲算法模型,對(duì)該算法的原理和特性進(jìn)行了詳細(xì)的分析,并通過建立數(shù)學(xué)模型,精確地分析了捕獲流程中,整個(gè)系統(tǒng)的損耗來源,包括多普勒頻偏造成的相干積分損耗、最大頻率偏差造成的FFT模塊最大扇貝損失、包絡(luò)檢波損耗、非相干積分中的平方損耗等,并對(duì)該算法在P碼捕獲中的應(yīng)用做出了改進(jìn)。通過Matlab仿真,得到了載噪比為35 dB·Hz,多普勒頻偏為6 000 Hz條件下,滿足P碼捕獲性能指標(biāo)并使得總運(yùn)算時(shí)間最小的最優(yōu)參數(shù)組合設(shè)計(jì)方案,為該算法的系統(tǒng)參數(shù)設(shè)計(jì)提供了理論依據(jù),具有一定研究?jī)r(jià)值。