劉 憶
(重慶郵電大學(xué) 教務(wù)處,重慶 400065)
在深空探測(cè)過(guò)程中,高精度測(cè)距是探測(cè)任務(wù)的重點(diǎn),它主要以雙向相干測(cè)距為主要的測(cè)距方式,測(cè)距體制的選取原則包括測(cè)距精度足夠高、無(wú)模糊距離大、捕獲/跟蹤時(shí)間短、測(cè)距信號(hào)占用功率合理等[1]。
考慮到偽隨機(jī)(Pseudo-Noise,PN)碼容易獲得長(zhǎng)的周期,使無(wú)模糊距離增大,且保密性和抗干擾性強(qiáng),采用碼分多址技術(shù)可以實(shí)現(xiàn)對(duì)多個(gè)目標(biāo)同時(shí)測(cè)控,所以偽碼測(cè)距技術(shù)在深空探測(cè)中的應(yīng)用是當(dāng)前人們研究的熱點(diǎn)之一。但是利用擴(kuò)頻通信技術(shù)的深空測(cè)距系統(tǒng)相比其他利用擴(kuò)頻通信技術(shù)的系統(tǒng)又有其特點(diǎn)[2]。由于深空探測(cè)器飛行速度超過(guò)了第二宇宙速度,因此產(chǎn)生的多普勒頻偏變化范圍相當(dāng)大,可以達(dá)到幾百千赫,屬于高動(dòng)態(tài)環(huán)境下的大多普勒頻偏問(wèn)題,對(duì)擴(kuò)頻通信系統(tǒng)的影響很大[3-6]。
在深空測(cè)距系統(tǒng)中,偽碼的捕獲是核心的關(guān)鍵技術(shù)之一。目前常用的偽碼捕獲算法主要包括串行搜索算法[7]和并行時(shí)頻二維搜索算法[8]等。串行搜索算法主要是采用時(shí)域上對(duì)偽碼進(jìn)行自相關(guān)運(yùn)算,這種算法利用的資源較少,但是當(dāng)偽碼長(zhǎng)度增加時(shí),整個(gè)相關(guān)運(yùn)算非常耗時(shí)。為了解決串行搜索算法實(shí)時(shí)性低的問(wèn)題,人們提出了基于快速傅里葉變換(Fast Fourier Transform,F(xiàn)FT)的時(shí)頻二維搜索算法。該算法將串行搜索算法中的時(shí)域自相關(guān)改為頻域上的乘法運(yùn)算,同時(shí)將不同頻點(diǎn)上的搜索在一個(gè)時(shí)間點(diǎn)上并行執(zhí)行,這樣大大減少了捕獲用的時(shí)間。但是這種采用FFT的方案非常消耗資源,為了保證搜索的實(shí)時(shí)性,就需要并行多路FFT相關(guān)運(yùn)算同時(shí)進(jìn)行搜索,這對(duì)硬件資源非常有限的現(xiàn)場(chǎng)可編程門陣列(Field Programmable Gate Array,F(xiàn)PGA)來(lái)說(shuō)是一個(gè)巨大的資源消耗。
為此,本文提出了基于時(shí)頻二維搜索的改進(jìn)算法,能夠解決上述大多普勒頻偏環(huán)境下偽碼捕獲系統(tǒng)所需硬件資源消耗與捕獲實(shí)時(shí)性之間的矛盾問(wèn)題。
高動(dòng)態(tài)環(huán)境下由于載波多普勒頻偏不確定,在這種情況下的偽碼捕獲是一個(gè)在時(shí)域搜索相位、在頻域搜索多普勒頻偏的并行的過(guò)程。如果多普勒頻偏已知,并且已經(jīng)進(jìn)行了頻偏補(bǔ)償,根據(jù)偽碼相關(guān)的定義,偽碼的捕獲是一個(gè)時(shí)域上的搜索過(guò)程,即
(1)
式中:i=1,2,…,M-1,M為偽碼序列周期;r(n)為接收信號(hào);c(n)為本地碼產(chǎn)生器產(chǎn)生的本地偽碼信號(hào)。顯然,如果本地測(cè)距碼很長(zhǎng),如M=218-28,那么做完一次相關(guān)需要很長(zhǎng)時(shí)間,這樣并不能滿足捕獲的實(shí)時(shí)性要求。但是如果考慮到時(shí)域卷積等于頻域相乘,那么可以將時(shí)域相關(guān)運(yùn)算轉(zhuǎn)化到頻域做相乘運(yùn)算,這樣可以大大減少相關(guān)所需的時(shí)間。其基本原理如下:
IFFT{FFT[r(n)]×FFT*[c(n)]} 。
(2)
式中:符號(hào)?代表卷積,F(xiàn)FT代表快速傅里葉變換,F(xiàn)FT*代表快速傅里葉變換的共軛,IFFT表示快速傅里葉反變換,F(xiàn)FT[r(n)]表示將時(shí)域信號(hào)r(n)變換到頻域表示,F(xiàn)FT*[c(n)]表示將時(shí)域信號(hào)c(n)變換到頻域然后取共軛。傳統(tǒng)時(shí)頻二維搜索系統(tǒng)框圖如圖1所示。
圖1 傳統(tǒng)的時(shí)頻二維搜索系統(tǒng)框圖
(3)
設(shè)
(4)
Yi=FFT*[c(i)] ,
(5)
所以
R(i,fd)=IFFT(XiYi) 。
(6)
最后對(duì)R(i,fd)進(jìn)行取模運(yùn)算得到模值。得到模值后,將模值與設(shè)定的捕獲峰值檢測(cè)門限(根據(jù)最大相關(guān)值設(shè)定的門限)進(jìn)行比較,如果所得的模值大于設(shè)定的門限值,那么就判定為捕獲成功,取出當(dāng)前的相位和頻點(diǎn),即為當(dāng)前接收到信號(hào)的真實(shí)相位和頻點(diǎn);如果所得的模值小于設(shè)定的門限值,則認(rèn)為捕獲失敗,從而調(diào)整當(dāng)前的載波數(shù)控振蕩器(Numerically Controlled Oscillator,NCO)發(fā)生器,使產(chǎn)生的載波頻率按照一定的步長(zhǎng)Δf進(jìn)行累加,然后再重復(fù)時(shí)頻二維搜索過(guò)程,直至所得的模值大于預(yù)先設(shè)定的峰值檢測(cè)門限為止。如果捕獲成功,則立即轉(zhuǎn)入偽碼跟蹤階段。其算法流程如圖2所示。
圖2 傳統(tǒng)的時(shí)頻二維搜索算法流程圖
通過(guò)上述分析可知,時(shí)頻二維搜索算法相比串行相關(guān)算法能夠提高捕獲的實(shí)時(shí)性。但是時(shí)頻二維搜索算法是以犧牲硬件資源為代價(jià)的。另外,時(shí)頻二維搜索算法中的載波NCO的頻率遞增步長(zhǎng)Δf的設(shè)定很重要。Δf設(shè)定得越小,對(duì)于信號(hào)的捕獲越有利,能夠很好地捕獲出弱信號(hào),但是這樣會(huì)降低捕獲系統(tǒng)的實(shí)時(shí)性。如果改為多個(gè)時(shí)頻二維搜索模塊并行工作,那么會(huì)帶來(lái)很大的資源消耗,不利于工程實(shí)現(xiàn)。Δf設(shè)定得越大,那么多普勒頻偏會(huì)對(duì)偽碼的自相關(guān)峰值帶來(lái)較大影響,很有可能造成捕獲失敗。所以,使用時(shí)頻二維搜索時(shí),在保證捕獲正確的情況下,Δf的設(shè)定需要在實(shí)時(shí)性和資源消耗兩方面進(jìn)行折中。
通過(guò)對(duì)傳統(tǒng)時(shí)頻二維搜索算法的討論發(fā)現(xiàn),傳統(tǒng)時(shí)頻二維搜索算法最大的困難在于載波NCO遞增步長(zhǎng)Δf的選取,既要保證捕獲的正確性和實(shí)時(shí)性,又要考慮在有限硬件資源上的可實(shí)現(xiàn)性,這在多普勒頻偏達(dá)到±200 kHz的大多普勒頻偏環(huán)境下很難實(shí)現(xiàn)。
為了解決這個(gè)問(wèn)題,在時(shí)頻二維搜索的前端首先利用FFT估計(jì)出多普勒頻偏,之后的時(shí)頻二維搜索利用之前估計(jì)出的多普勒頻偏捕獲出當(dāng)前接收信號(hào)的相位。這樣即能滿足捕獲算法的正確性和實(shí)時(shí)性,又能利用較少的資源在硬件上實(shí)現(xiàn)。利用FFT估計(jì)多普勒頻偏算法框圖如圖3所示。
圖3 FFT估計(jì)多普勒頻偏算法框圖
假設(shè)經(jīng)下變頻后的深空接收信號(hào)為
(7)
cos[(2ωIF+ωdoppler)t+θf(wàn)]} 。
(8)
式中:θe=θ1-θ0,θf(wàn)=θ1+θ0
I路信號(hào)通過(guò)低通濾波器(Low Pass Filter,LPF),濾除高頻分量后得到
(9)
同理,Q路信號(hào)通過(guò)LPF,濾除高頻分量后得到
(10)
將此刻得到的zI(t)與zQ(t)相乘,得到
(11)
由于PN2(t)=1,d2(t)=1,則有
(12)
Ud(t)通過(guò)FFT頻率捕獲模塊可得
2fdoppler=FsKdoppler/N。
(13)
式中:Fs為采樣頻率,N為FFT的總點(diǎn)數(shù),Kdoppler為2倍多普勒頻率對(duì)應(yīng)的點(diǎn)數(shù)。
最后通過(guò)捕獲到的多普勒頻率值,反饋控制載波NCO,使得本地載波與接收頻率相等。整體捕獲系統(tǒng)框圖如圖4所示。
圖4 整體捕獲系統(tǒng)框圖
由圖4可見(jiàn),整個(gè)捕獲系統(tǒng)分為兩個(gè)部分,即前期利用FFT估計(jì)多普勒頻偏部分和后期利用時(shí)頻二維搜索算法進(jìn)行偽碼同步部分。在工程實(shí)現(xiàn)中,采用改進(jìn)時(shí)頻二維搜索算法可以在較少的硬件資源消耗下提高整體捕獲算法實(shí)時(shí)性。
假設(shè)偽碼速率為3 Mchip/s,偽碼長(zhǎng)度為M=218-28,中頻為6 MHz,采樣率為24 MHz。為了減少捕獲中FFT的點(diǎn)數(shù),對(duì)下變頻后經(jīng)過(guò)低通濾波器的數(shù)據(jù)進(jìn)行平均降采樣,下降倍數(shù)為4,其中,捕獲中采用的參考碼相位從1開始,中頻數(shù)據(jù)相位偏移量為1 000,多普勒頻偏為136 150 Hz。
圖5和圖6分別給出了利用改進(jìn)后的時(shí)頻二維搜索算法捕獲得到的2倍多普勒頻偏和偽碼相偏。
圖5 捕獲得到的2倍多普勒頻偏結(jié)果
圖6 頻率偏移點(diǎn)數(shù)
從圖5可以看出,由于捕獲得到的2倍多普勒頻偏為272.46 kHz,則實(shí)際捕獲得到多普勒頻偏為272.46 kHz/2=136.23 kHz,相比仿真設(shè)定的多普勒頻偏136.15 kHz,僅存在80 Hz的偏差。從圖6可以得到捕獲的偽碼相偏為250,由于采用了4倍平均降采樣,所以實(shí)際捕獲的相偏為250×4=1 000,與仿真設(shè)定的相位偏移一致。
圖7給出了FPGA實(shí)現(xiàn)上述算法的資源消耗,采用的硬件平臺(tái)為Altera公司Stratix IV系列FPGA芯片EP4SGX230KF40C2,在偽碼捕獲模塊中采用的FFT運(yùn)算點(diǎn)數(shù)為8 192。
圖7 FPGA硬件資源消耗
從圖7可以看出,算法實(shí)現(xiàn)的邏輯資源占芯片總資源的5%,存儲(chǔ)資源占芯片總資源的24%,其中邏輯資源和存儲(chǔ)資源主要用在FPGA FFT核的消耗上,整體硬件資源消耗能夠滿足實(shí)際工程要求。
本文提出的改進(jìn)時(shí)頻二維搜索算法,相比于時(shí)頻二維搜索算法,其主要優(yōu)勢(shì)體現(xiàn)在,在大多普勒頻偏環(huán)境下進(jìn)行頻點(diǎn)捕獲時(shí),改進(jìn)時(shí)頻二維搜索算法能夠大大降低捕獲頻點(diǎn)所需的時(shí)間開銷,從而能夠有效滿足偽碼捕獲的實(shí)時(shí)性要求。
在進(jìn)行傳統(tǒng)時(shí)頻二維搜索算法的仿真實(shí)驗(yàn)時(shí),設(shè)定的信號(hào)仿真環(huán)境與3.1中描述的環(huán)境一致。此外,時(shí)頻二維搜索設(shè)定的頻點(diǎn)累加步長(zhǎng)為Δf=2 kHz。圖8給出了采用傳統(tǒng)時(shí)頻二維搜索算法捕獲得到的頻點(diǎn)值。
圖8 傳統(tǒng)時(shí)頻二維搜索捕獲得到的頻點(diǎn)值
從圖8可以看出,傳統(tǒng)時(shí)頻二維搜索算法捕獲得到的頻點(diǎn)值為5.864 00 MHz,則多普勒頻偏為6 MHz-5.864 00 MHz=136 kHz,相比設(shè)定的多普勒頻偏136.15 kHz,存在150 Hz的偏差??梢?jiàn),利用本文提出的改進(jìn)時(shí)頻二維搜索算法,相比于傳統(tǒng)時(shí)頻二維搜索算法,具有更小的多普勒頻偏估計(jì)偏差。
為了驗(yàn)證改進(jìn)后捕獲算法的實(shí)時(shí)性,本文對(duì)改進(jìn)后捕獲算法和傳統(tǒng)捕獲算法的運(yùn)行時(shí)間進(jìn)行對(duì)比,其中電腦CPU配置為Intel i3-3220,內(nèi)存為8 GB,采用評(píng)估軟件為Quartus II 12.1。圖9和圖10分別給出了改進(jìn)時(shí)頻二維搜索算法和傳統(tǒng)時(shí)頻二維搜索算法在相同捕獲多普勒頻偏條件下完成偽碼捕獲所需要的時(shí)間開銷,其中紅線表示的acquition_longcode是完成整個(gè)偽碼捕獲算法所需要的時(shí)間。從Total Time這一項(xiàng)可以看出,改進(jìn)后的時(shí)頻二維搜索算法完成整個(gè)捕獲需要的時(shí)間是1.089 s,而傳統(tǒng)時(shí)頻二維捕獲算法完成捕獲需要的時(shí)間為194.171 s。
圖9 改進(jìn)時(shí)頻二維搜索算法時(shí)間開銷
圖10 傳統(tǒng)時(shí)頻二維搜索算法時(shí)間開銷
綜上所述,本文提出的改進(jìn)時(shí)頻二維搜索算法不僅具有較小的多普勒頻偏估計(jì)偏差,同時(shí)相比傳統(tǒng)捕獲算法能夠滿足較高的捕獲實(shí)時(shí)性要求。
擴(kuò)頻信號(hào)的正確捕獲是整個(gè)偽碼測(cè)距系統(tǒng)運(yùn)行的關(guān)鍵。在工程應(yīng)用中,對(duì)擴(kuò)頻信號(hào)的捕獲同時(shí)要求具有較好的捕獲實(shí)時(shí)性和較低的硬件資源開銷。在高動(dòng)態(tài)大多普勒頻偏環(huán)境下,系統(tǒng)對(duì)擴(kuò)頻信號(hào)捕獲的實(shí)時(shí)性要求較高,而傳統(tǒng)捕獲算法不能有效滿足捕獲實(shí)時(shí)性的要求?;诖耍疚奶岢隽艘环N改進(jìn)的時(shí)頻二維搜索算法。該算法相比于傳統(tǒng)時(shí)頻二維搜索算法,能夠利用較短的時(shí)間完成大多普勒頻偏和偽碼相偏的捕獲,在有限硬件資源條件下能夠滿足深空飛行器在第一宇宙速度(7.9 km/s)下的信號(hào)捕獲需求,滿足了工程實(shí)現(xiàn)的實(shí)時(shí)性要求。在深空探測(cè)任務(wù)中,高精度測(cè)距為深空探測(cè)器的導(dǎo)航定位提供了重要的測(cè)量元素,而且偽碼測(cè)距與深空通信融合在一起在完成測(cè)距的同時(shí)可實(shí)現(xiàn)對(duì)深空探測(cè)器的遙控和遙測(cè)。因此研究偽碼測(cè)距不僅僅實(shí)現(xiàn)對(duì)深空探測(cè)器距離的測(cè)量,更重要的是可以將測(cè)距偽碼作為擴(kuò)頻序列對(duì)上行遙控信息和下行遙測(cè)信息進(jìn)行擴(kuò)頻傳輸,以實(shí)現(xiàn)深空通信。另外,深空偽碼測(cè)距技術(shù)的算法研究不局限于深空測(cè)距中的應(yīng)用,還可以推廣到所有的直接序列擴(kuò)頻系統(tǒng)的應(yīng)用中去,具有很大的理論研究和實(shí)用價(jià)值。