顧睿文,黃仰博,蘇映雪,歐 鋼
(國(guó)防科學(xué)技術(shù)大學(xué)電子科學(xué)與工程學(xué)院衛(wèi)星導(dǎo)航定位技術(shù)工程研究中心,湖南 長(zhǎng)沙 410073)
全球定位系統(tǒng)能夠?yàn)橛脩籼峁┚_的定位、測(cè)速、授時(shí)服務(wù)(PVT服務(wù)),在國(guó)民經(jīng)濟(jì)的快速發(fā)展的今天已經(jīng)得到廣泛的應(yīng)用[1]。相關(guān)產(chǎn)業(yè)帶來(lái)的經(jīng)濟(jì)效益和社會(huì)效益也迅速增加,人民對(duì)其的重視程度也日益提高。然而,國(guó)內(nèi)高性能導(dǎo)航接收機(jī)芯片幾乎都是國(guó)外設(shè)計(jì)制造,開(kāi)發(fā)高性能導(dǎo)航接收機(jī)芯片愈發(fā)重要。近年來(lái),隨著北斗二代一期系統(tǒng)的建成和投入使用,國(guó)內(nèi)在導(dǎo)航接收機(jī)的研究和開(kāi)發(fā)有了較大的進(jìn)展,但是離國(guó)外高性能導(dǎo)航接收機(jī)的技術(shù)水平有一定的差距。
目前,主流的導(dǎo)航接收機(jī)設(shè)計(jì)基本架構(gòu)是FPGA+DSP或者FPGA+ARM的工作模式,其中相關(guān)器,載波NCO,碼NCO等適宜硬件處理的在FPGA中實(shí)現(xiàn),通道調(diào)度,環(huán)路鑒別器計(jì)算和環(huán)路濾波等是在DSP或者ARM中實(shí)現(xiàn)。這樣就導(dǎo)致了研發(fā)時(shí)間較長(zhǎng),研發(fā)過(guò)程也較為復(fù)雜。利用Xilinx公司提供的協(xié)處理器[2],實(shí)現(xiàn)環(huán)路的跟蹤和通道的調(diào)度,在單片F(xiàn)PGA內(nèi)實(shí)現(xiàn)導(dǎo)航接收機(jī)的跟蹤環(huán)路,在不損失性能的基礎(chǔ)上實(shí)現(xiàn)資源的優(yōu)化。
本文分析了導(dǎo)航接收機(jī)的設(shè)計(jì)和跟蹤的基本原理,分析了載波環(huán)、碼環(huán)的基本設(shè)計(jì)和環(huán)路鑒別
器的算法性能分析,而后設(shè)計(jì)了基于FPGA的導(dǎo)航接收機(jī)跟蹤環(huán)路,并在Xilinx公司的Virtex-4系列的XC4VSX55芯片上實(shí)現(xiàn)了用Verilog編程的硬件邏輯電路和基于內(nèi)嵌協(xié)處理器核的跟蹤算法的嵌入式開(kāi)發(fā)。
導(dǎo)航接收機(jī)的基帶處理部分主要包括捕獲,跟蹤,同步和鎖定檢測(cè)及定位解算。在捕獲成功后,導(dǎo)航接收機(jī)還需要再進(jìn)行載波同步和碼同步。載波環(huán)路用于復(fù)現(xiàn)輸入信號(hào)的載波相位,與輸入信號(hào)進(jìn)行相關(guān)后除去載波[3];碼環(huán)用于復(fù)現(xiàn)輸入信號(hào)的碼相位,從而得到接收信號(hào)的信號(hào)時(shí)間。接收機(jī)的本地時(shí)間減去信號(hào)時(shí)間即偽距值。經(jīng)過(guò)位同步和幀同步后,得到導(dǎo)航電文數(shù)據(jù)。圖1為導(dǎo)航接收機(jī)基帶信號(hào)處理跟蹤環(huán)路基本結(jié)構(gòu)框圖。
圖1 導(dǎo)航接收機(jī)基帶信號(hào)處理跟蹤環(huán)路基本結(jié)構(gòu)框圖
1)載波環(huán)
載波跟蹤是對(duì)載波相位和多普勒的精確估計(jì)。由于前端數(shù)字下變頻時(shí)采用免混頻處理,在數(shù)字下變頻后,會(huì)有一定頻率的殘余載波,該殘余載波將和信號(hào)多普勒一起在載波環(huán)中去除。
接收機(jī)的載波同步主要是使得接收機(jī)本地振蕩頻率與數(shù)字下變頻后的信號(hào)頻率基本一致,且本地載波相位與接收到的載波相位基本一致。在導(dǎo)航接收機(jī)中,載波跟蹤環(huán)主要包括相位鎖定環(huán)(PLL)和頻率鎖定環(huán)(FLL)[4]。PLL跟蹤精度較高,但其動(dòng)態(tài)跟蹤范圍較小,而FLL可以跟蹤動(dòng)態(tài)范圍較大的信號(hào),但是精度較低。一般載波跟蹤環(huán)路采用FLL輔助PLL,先利用FLL將頻率誤差縮小到PLL可跟蹤范圍,再通過(guò)PLL達(dá)到良好地跟蹤精度。
數(shù)字鎖相環(huán)(PLL)是一個(gè)基本的同步部件[5]。將積分累加后的I支路和Q支路經(jīng)過(guò)鑒相后,根據(jù)鑒別器算出相位誤差,通過(guò)環(huán)路濾波器后,控制載波NCO頻率控制字,從而達(dá)到控制載波相位的目的。鎖相環(huán)的鑒別器可采用以下幾種方法,其具體性能如表1所示。
表1 鎖相環(huán)鑒別器算法比較[6]
數(shù)字鎖頻環(huán)(FLL)[7]與鎖相環(huán)原理類似,與鎖相環(huán)不同的是,鎖頻環(huán)輸出的是頻率誤差,鎖相環(huán)輸出的是相位誤差。這就使得鎖頻環(huán)主要實(shí)現(xiàn)頻率同步。鎖頻環(huán)的頻率鑒別器主要有以下幾種,具體性能比較如表2所示。
表2 鎖頻環(huán)鑒別器算法比較[6]
2)碼環(huán)
碼環(huán)的作用是跟蹤信號(hào)中偽隨機(jī)碼相位的變化,使得本地產(chǎn)生的偽隨機(jī)碼和GNSS中頻信號(hào)的偽隨機(jī)碼同相。常用的實(shí)現(xiàn)方式是使用DLL(延遲鎖定環(huán))。
DLL跟蹤環(huán)路的方式和鎖相環(huán)跟蹤的方式很類似,將本地產(chǎn)生的超前碼和滯后碼送入相關(guān)器中和信號(hào)進(jìn)行相關(guān)運(yùn)算,鑒別出超前碼和滯后碼與接收碼序列的相位關(guān)系,通過(guò)碼環(huán)鑒別器和環(huán)路濾波器的調(diào)整實(shí)現(xiàn)碼環(huán)的跟蹤,如圖2所示為碼環(huán)的基本結(jié)構(gòu)。
圖2 碼環(huán)基本結(jié)構(gòu)框圖
從圖1中可知,中頻信號(hào)與本地載波相乘得到正交分量和同相分量,而后和移位寄存器產(chǎn)生的三路碼積分累加,產(chǎn)生IE、QE、IP、QP、IL、QL六個(gè)累加值,再送入碼環(huán)鑒別器(DLL)中計(jì)算本地碼和接收碼的相位差,調(diào)整碼NCO的頻率控制字,實(shí)現(xiàn)碼環(huán)的跟蹤[9]。目前主要的算法有歸一化超前減去滯后包絡(luò),非相干超前減去滯后功率,歸一化非相干超前減去滯后功率,歸一化相干點(diǎn)積,準(zhǔn)相干點(diǎn)積。
因輸出誤差在1個(gè)碼片范圍內(nèi)呈線性特征,歸一化的超前減滯后包絡(luò)鑒別器得到廣泛應(yīng)用。
其鑒別器算法為
error=0.5(RSSE-RSSL)×
(RSSE+RSSL),
式中:
本課題亦使用了歸一化的超前減滯后包絡(luò)鑒別器作為碼環(huán)鑒別器。
采用Xilinx公司的Virtex-4系列XC4VSX55芯片,利用其帶有的協(xié)處理器可方便的實(shí)現(xiàn)導(dǎo)航信號(hào)的跟蹤過(guò)程??紤]協(xié)處理器的處理能力及硬件資源的優(yōu)化,設(shè)計(jì)環(huán)路框圖如圖3所示。
圖3 導(dǎo)航接收機(jī)跟蹤環(huán)路FPGA內(nèi)實(shí)現(xiàn)框圖
與傳統(tǒng)的設(shè)計(jì)相比,FPGA內(nèi)跟蹤環(huán)路主要從以下3個(gè)方面優(yōu)化。
1)設(shè)計(jì)協(xié)處理器硬件加速器[10],用于擴(kuò)展協(xié)處理器的運(yùn)算能力,增強(qiáng)協(xié)處理器在處理復(fù)雜運(yùn)算中的能力。
由于協(xié)處理器只能實(shí)現(xiàn)加減法等簡(jiǎn)單指令,為增強(qiáng)協(xié)處理器的處理能力,設(shè)計(jì)了一個(gè)乘法器,一個(gè)除法器,一個(gè)FFT模塊和一個(gè)反正切函數(shù)模塊作為是協(xié)處理器的硬件加速器,在協(xié)處理器中定義了控制函數(shù)控制硬件加速器的使用,通過(guò)總線讀寫方式控制硬件加速器的使用調(diào)度,很好的增強(qiáng)了協(xié)處理器的整體能力。
2)通過(guò)時(shí)分復(fù)用的方式,節(jié)約相關(guān)累加器資源。
如圖4所示為復(fù)用和積分累加器的實(shí)現(xiàn)框圖,通過(guò)時(shí)分復(fù)用控制信號(hào)控制碼發(fā)生器發(fā)生的早準(zhǔn)晚信號(hào)進(jìn)行3倍復(fù)用,并與基帶數(shù)據(jù)輸入依次進(jìn)行相關(guān)運(yùn)算,將相關(guān)后的數(shù)據(jù)經(jīng)過(guò)延時(shí)控制后進(jìn)行累加。這樣就節(jié)約了2/3的相關(guān)累加器資源。
圖4 積分累加器結(jié)構(gòu)框圖
3)通過(guò)設(shè)計(jì)相關(guān)值預(yù)處理模塊,減輕協(xié)處理器壓力,使得協(xié)處理器能同時(shí)處理更多通道,增強(qiáng)協(xié)處理器工作的實(shí)時(shí)性。
圖6示出了環(huán)路收斂過(guò)程中載波環(huán)鑒相器輸出值變化。從圖中可明顯看出,鑒相器輸出值逐漸趨向穩(wěn)定,環(huán)路收斂良好。與常規(guī)設(shè)計(jì)相比,該設(shè)計(jì)在不損失性能的基礎(chǔ)上實(shí)現(xiàn)了資源的優(yōu)化,滿足了設(shè)計(jì)要求。
圖5 相關(guān)值預(yù)處理模塊仿真時(shí)序
圖6 導(dǎo)航接收機(jī)環(huán)路跟蹤結(jié)果
分析了導(dǎo)航接收機(jī)現(xiàn)階段架構(gòu)的特點(diǎn),分析了導(dǎo)航接收機(jī)跟蹤環(huán)路的基本工作原理和不同鑒別器算法下鎖頻環(huán),鎖相環(huán)和延遲鎖定環(huán)路的性能,并根據(jù)需求給出了一種導(dǎo)航接收機(jī)跟蹤環(huán)路的設(shè)計(jì)方案,利用FPGA運(yùn)行速度快,內(nèi)部協(xié)處理器使用靈活的特點(diǎn),在不降低性能的情況下節(jié)約硬件資源,為高性能導(dǎo)航接收芯片提供了一種思路。
[1]唐小妹,徐鵬程,王飛雪.兩種相位鑒別器下導(dǎo)航接收機(jī)跟蹤環(huán)路性能分析及比較.[J].國(guó)防科技大學(xué)學(xué)報(bào),2010,32(2):85-90.
[2]吳舜曉.全數(shù)字導(dǎo)航接收機(jī)協(xié)處理器技術(shù)研究[D].長(zhǎng)沙:國(guó)防科學(xué)技術(shù)大學(xué)碩士學(xué)位論文,2009.
[3]劉紫城,傅興華.基于北斗衛(wèi)星導(dǎo)航的載波跟蹤算法研究.[J].現(xiàn)代科技,2009,8(12):40-42.
[4]張晶泊.GNSS 軟件接收機(jī)高動(dòng)態(tài)載波跟蹤環(huán)路關(guān)鍵技術(shù)研究 [D].大連:大連海事大學(xué),2012.
[5]賈東升.導(dǎo)航接收載波恢復(fù)技術(shù)研究.[D].長(zhǎng)沙:國(guó)防科學(xué)技術(shù)大學(xué)碩士學(xué)位論文,2003.
[6]謝 鋼.GPS 原理與接收機(jī)設(shè)計(jì) [M].北京:電子工業(yè)出版社,2009.
[7]邱致和,王萬(wàn)義.GPS原理與應(yīng)用[M].北京:電子工業(yè)出版,2001:80-85.
[8]唐小妹.高性能導(dǎo)航接收機(jī)中載波恢復(fù)與載噪比估計(jì)研究.[D].長(zhǎng)沙:國(guó)防科學(xué)技術(shù)大學(xué)碩士學(xué)位論文,2005.
[9]王建平.GNSS接收機(jī)跟蹤環(huán)路的設(shè)計(jì)與實(shí)現(xiàn).[D]北京:北京郵電大學(xué),2010.
[10]葉淑群,陳鴻鵬,梁士坤.實(shí)現(xiàn)基于FPGA 的硬件算法加速器[J].寶雞文理學(xué)院學(xué)報(bào)·自然科學(xué)版,2006,26(2):154-155.