国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于ZYNQ車載GPS接收機(jī)捕獲模塊的設(shè)計(jì)與實(shí)現(xiàn)

2022-03-22 08:36胡鐵喬趙冬輝
關(guān)鍵詞:頻點(diǎn)接收機(jī)載波

胡鐵喬,趙冬輝

(中國(guó)民航大學(xué)天津市智能信號(hào)與圖像處理重點(diǎn)實(shí)驗(yàn)室,天津 300300)

隨著全球定位系統(tǒng)(GPS,global positioning system)定位精度的不斷提高,GPS 已逐漸成為車輛的基本配置之一[1]。傳統(tǒng)抗干擾GPS 接收機(jī)一般是由RISC 微處理器(ARM,advanced RISC machines)和現(xiàn)場(chǎng)可編程門陣列(FPGA,field programmable gate array)的架構(gòu)方案實(shí)現(xiàn),接收天線通常采用體積大、成本高、功耗高的4 陣列天線或7 陣列天線。但由于車載設(shè)備對(duì)體積、成本、功耗有較高要求,傳統(tǒng)抗干擾接收機(jī)不能直接應(yīng)用到汽車上。因此,有必要研制一款車載抗干擾GPS 接收機(jī)。

目前,國(guó)外的抗干擾GPS 接收機(jī)正在向多通道、多頻點(diǎn)方向發(fā)展[2],國(guó)內(nèi)正處于起步階段,大部分研究只進(jìn)行了仿真驗(yàn)證,部分在硬件平臺(tái)實(shí)現(xiàn)的又不適用于車載。文獻(xiàn)[3]設(shè)計(jì)的基于FPGA 的高動(dòng)態(tài)GPS信號(hào)實(shí)時(shí)捕獲模塊,采用快速傅里葉變換(FFT,fast Fourier transform)并行相關(guān)的信號(hào)捕獲方法,硬件平臺(tái)是數(shù)字信號(hào)處理器(DSP,digital signal process)和FPGA,天線采用體積較大的7 陣列天線,具有一定的抗干擾功能。文獻(xiàn)[4]提出的L1/L2 雙頻車載GPS 軟件接收機(jī)快速捕獲算法,實(shí)現(xiàn)車載雙頻GPS 軟件接收機(jī),但并沒有在硬件平臺(tái)上實(shí)現(xiàn)。文獻(xiàn)[5]設(shè)計(jì)的ZYNQ-7000星載雙模衛(wèi)星導(dǎo)航接收機(jī)在ZYNQ 平臺(tái)上通過仿真數(shù)據(jù)對(duì)算法進(jìn)行驗(yàn)證,實(shí)現(xiàn)GPS 接收機(jī),但尚未驗(yàn)證實(shí)時(shí)數(shù)據(jù)。以上方法均無(wú)法滿足車載設(shè)備需求。

針對(duì)GPS 接收機(jī)的研究現(xiàn)狀,設(shè)計(jì)并實(shí)現(xiàn)滿足車載GPS 接收機(jī)功能需求的捕獲模塊。由于車載設(shè)備對(duì)體積、功耗等方面有較高要求,最終采用威視銳公司的Y320 平臺(tái)。該平臺(tái)的射頻端采用體積小、成本低的雙通道雙天線AD9361,同時(shí)平臺(tái)功耗控制在3 W 以內(nèi);捕獲算法采用基于FFT 的并行碼搜索算法,中頻信號(hào)在ZYNQ 的可編程邏輯(PL)模塊中進(jìn)行捕獲,捕獲結(jié)果發(fā)送到ZYNQ 的處理系統(tǒng)(PS)進(jìn)行處理,通過仿真數(shù)據(jù)與實(shí)際采樣數(shù)據(jù)對(duì)捕獲模塊進(jìn)行功能測(cè)試與性能測(cè)試。測(cè)試結(jié)果表明,該捕獲模塊能夠正確捕獲衛(wèi)星信號(hào),滿足GPS 接收機(jī)需求,為實(shí)現(xiàn)跟蹤、定位、抗干擾等功能提供基礎(chǔ)。此外,該平臺(tái)設(shè)計(jì)的捕獲模塊還可用于機(jī)載GPS 接收機(jī),實(shí)用性較強(qiáng)。

1 捕獲原理

GPS 接收機(jī)接收到第m 顆衛(wèi)星信號(hào)為

式中:Am為振幅;Cm(t)為C/A 碼,周期1 ms,碼速率為1.023 MHz;Dm(t)為導(dǎo)航數(shù)據(jù);f1為載波頻率;θ1為頻偏;n(t)為均值0、方差σ2的帶限高斯白噪聲。

為了提取衛(wèi)星信號(hào)中的導(dǎo)航數(shù)據(jù),首先要對(duì)衛(wèi)星信號(hào)進(jìn)行捕獲。捕獲原理是利用接近Sm(t)的載波頻率f1生成的本地載波去除衛(wèi)星信號(hào)的載波成分,再與本地生成的C/A 碼進(jìn)行乘法運(yùn)算,去除衛(wèi)星信號(hào)的C/A碼,最終獲得峰值與峰值所在位置,即載波頻率與C/A 碼。捕獲過程就是獲取信號(hào)的載波頻率與C/A 碼的粗略值。算法具體原理分析詳見文獻(xiàn)[3],不再贅述。

捕獲一般分為時(shí)域串行捕獲、基于FFT 并行相關(guān)捕獲和匹配濾波器捕獲[6]。捕獲主要有3 個(gè)步驟:①確定將要進(jìn)行捕獲的衛(wèi)星號(hào);②確定載波頻率;③確定C/A 碼相位[7]。具體流程如下:首先,產(chǎn)生本地載波信號(hào)和指定衛(wèi)星的C/A 碼,通過混頻生成本地信號(hào);然后,實(shí)際信號(hào)和本地信號(hào)進(jìn)行FFT 和快速傅里葉逆變換(IFFT,inverse fast Fourier transform),檢測(cè)本地信號(hào)和實(shí)際信號(hào)的相關(guān)程度,當(dāng)本地信號(hào)與實(shí)際信號(hào)的載波頻率接近,C/A 碼也完全相同時(shí),才會(huì)輸出峰值,即捕獲到指定衛(wèi)星。圖1 是基于FFT 并行碼相位捕獲框圖。

圖1 基于FFT 并行碼相位捕獲框圖Fig.1 Block diagram of parallel code phase acquisition based on FFT

2 總體設(shè)計(jì)

傳統(tǒng)GPS 接收機(jī)采用ARM 與FPGA 架構(gòu),有時(shí)也采用DSP 與FPGA 架構(gòu)。在理論上,ARM 是一種微處理器,具有較強(qiáng)的事務(wù)管理能力,在控制方面具有一定優(yōu)勢(shì),但數(shù)據(jù)處理能力一般;DSP 具有強(qiáng)大的數(shù)據(jù)處理能力與處理速度,但控制方面能力一般;FPGA 通過硬件描述語(yǔ)言實(shí)現(xiàn)數(shù)字電路功能;ARM 或DSP與FPGA 組合時(shí)需要電路連接,并使用通信總線進(jìn)行通信,本文中使用的ZYNQ 芯片的PL 與PS 通信取消了通信總線,減少了資源消耗。在開發(fā)實(shí)現(xiàn)上,ARM、DSP、PS 均使用C 語(yǔ)言,F(xiàn)PGA、PL 使用Verilog HDL 語(yǔ)言。在性能上,ZYNQ 芯片集成度高、功耗較低、體積較小,但ZYNQ 芯片相比較于FPGA、ARM、DSP 而言問世時(shí)間較短,國(guó)內(nèi)外對(duì)其研究的相關(guān)內(nèi)容較少,可參考資料也較少。

綜上,設(shè)計(jì)的捕獲模塊總體框圖如圖2 所示。捕獲功能在PL 中實(shí)現(xiàn)。為實(shí)現(xiàn)捕獲模塊功能,在PS 中對(duì)捕獲模塊進(jìn)行初始化并對(duì)捕獲結(jié)果進(jìn)行處理。其工作流程如下:①PS 的初始化模塊將初始載波頻率、載波搜索步長(zhǎng)、搜索衛(wèi)星號(hào)、搜索時(shí)間等信息即FreCode發(fā)送PL;②時(shí)鐘生成模塊生成捕獲模塊的工作時(shí)鐘;③中頻信號(hào)進(jìn)入信號(hào)預(yù)處理模塊,將40 MHz 采樣頻率降為5.714 286 MHz 的數(shù)據(jù)速率;④在復(fù)乘模塊與直接數(shù)字頻率合成技術(shù)(DDS,direct digital synthesis)模塊產(chǎn)生的本地載波相乘,去除載波信號(hào);⑤在平均采樣模塊對(duì)信號(hào)進(jìn)行5 或6 點(diǎn)采樣,目的是降低FFT模塊的運(yùn)算量;⑥平均采樣后數(shù)據(jù)進(jìn)行FFT;⑦將FFT后的運(yùn)算結(jié)果與C/A 碼FFT 共軛復(fù)乘;⑧復(fù)乘結(jié)果進(jìn)行IFFT 運(yùn)算;⑨對(duì)IFFT 后的數(shù)據(jù)取模值,存儲(chǔ)在模值存儲(chǔ)模塊;⑩遍歷存儲(chǔ)器,搜索到最大值與次大值;1○將最大值與次大值及其位置發(fā)送到PS 的捕獲結(jié)果處理模塊。

圖2 捕獲模塊總體框圖Fig.2 Framework of acquisition modules

3 系統(tǒng)硬件實(shí)現(xiàn)

3.1 硬件平臺(tái)

硬件平臺(tái)采用威視銳公司的Y320 平臺(tái),該平臺(tái)上集成了ZYNQ -XC7Z020-CLG400ABX1829 芯片與AD9361 射頻收發(fā)器。ZYNQ 芯片包含2 部分:PS 和PL。圖3 是ZYNQ 芯片的簡(jiǎn)化模型,簡(jiǎn)單來說,PS等價(jià)于一個(gè)雙核ARM,PL 等價(jià)于FPGA,PS 與PL之間的通信采用AXI4-Lite 總線。圖4 是Y320 硬件平臺(tái)。

圖3 ZYNQ 芯片的簡(jiǎn)化模型Fig.3 Simplified model of ZYNQ architecture

圖4 Y320 硬件平臺(tái)Fig.4 Y320 hardware platform

1)PS 部分

PS 部分主要由2 片Cortex-A9 芯片構(gòu)成。此外,PS 還包括各種接口,如DDR 存儲(chǔ)器接口、通用異步收發(fā)器接口、通用輸入輸出接口等。

2)PL 部分

PL 部分是由邏輯片與可配置邏輯塊構(gòu)成,每個(gè)接口都有對(duì)應(yīng)配套的輸入/輸出塊。除此以外,還有2 個(gè)特殊模塊:①隨機(jī)存取存儲(chǔ)器(RAM,random access mo mery),每個(gè)塊RAM 大小都為36 kB,專門用于存儲(chǔ)大量數(shù)據(jù);②DSP48E1 是專門的乘加運(yùn)算器。

3)AXI4-Lite 總線

AXI4-Lite 總線在工作時(shí)采用握手結(jié)構(gòu),當(dāng)主設(shè)備與從設(shè)備之間進(jìn)行通信時(shí),需要Tready、Tvalid 進(jìn)行握手。當(dāng)接收方準(zhǔn)備好接收數(shù)據(jù)時(shí)將Tready 信號(hào)拉高,通知發(fā)送方下一個(gè)時(shí)鐘脈沖到來時(shí)可以接收數(shù)據(jù),當(dāng)Tready 拉高后,發(fā)送方將Tvalid 拉高,表示數(shù)據(jù)有效,只有Tready 與Tvalid 都為高時(shí)才可以進(jìn)行通信。

4)AD9361 芯片

AD9361 是ADI 公司的零中頻射頻收發(fā)器[8]。接收端可以接收兩路射頻信號(hào),發(fā)射端可以發(fā)射兩路射頻信號(hào),射頻頻率為0.07~6.00 GHz,采樣帶寬為0.2~56.0 MHz。接收端和發(fā)射端均采用12 位數(shù)/模轉(zhuǎn)換器,且支持頻分雙工與時(shí)分雙工。

AD9361 各種參數(shù)的配置是通過編程方式寫入寄存器實(shí)現(xiàn)的,AD9361 能否正確配置十分重要,這關(guān)乎到AD9361 能否正常工作及后續(xù)ZYNQ 芯片能否讀取正確數(shù)據(jù)。PS 通過總線讀寫AD9361 寄存器,控制AD9361 工作狀態(tài)。這里將數(shù)據(jù)傳輸模式設(shè)置為全雙工、接口時(shí)鐘160 MHz、采樣頻率40 MHz、本振頻率1 575.42 MHz、帶寬1.5 MHz、接收射頻增益為63 dB。圖5 是AD9361 功能框圖。

圖5 AD9361 功能框圖Fig.5 Functional block diagram of AD9361

3.2 功能實(shí)現(xiàn)

為實(shí)現(xiàn)實(shí)時(shí)捕獲,模塊使用3 種時(shí)鐘頻率:5.714 286、80、200 MHz。需要用160 MHz 時(shí)鐘進(jìn)行分頻與倍頻。C/A 碼速率為1.023 MHz,根據(jù)奈奎斯特定理,采樣頻率≥2.046 MHz 即可,這里設(shè)置采樣速率為5.714 286 MHz。AD9361 采樣頻率為40 MHz,因此對(duì)采集后的數(shù)據(jù)進(jìn)行7 倍抽取。捕獲模塊主要包括初始化,時(shí)鐘生成,信號(hào)預(yù)處理,復(fù)乘,平均采樣,F(xiàn)FT 與IFFT計(jì)算,最大值,次大值搜索,捕獲結(jié)果處理8 個(gè)模塊。

1)初始化模塊

初始化模塊對(duì)處理器進(jìn)行參數(shù)配置,并啟動(dòng)捕獲程序。

2)時(shí)鐘生成模塊

Vivado 中有專門進(jìn)行分頻與倍頻的IP 核,調(diào)用Clocking Wizaard 模塊,選擇混合模式時(shí)鐘管理器的架構(gòu),主時(shí)鐘頻率設(shè)置為160 MHz,輸出時(shí)鐘頻率設(shè)置為80 MHz 和200 MHz,輸出時(shí)鐘占空比設(shè)置為50%,相位設(shè)置為0。由于5.714 286 MHz 時(shí)鐘的頻率較低,因此不能在此模塊生成,由信號(hào)預(yù)處理模塊產(chǎn)生。

3)信號(hào)預(yù)處理模塊

調(diào)用有限長(zhǎng)單位沖擊響應(yīng)濾波器(FIR,finite impulse response)模塊,濾波器模式設(shè)置為抽取,采樣頻率設(shè)置為40 MHz,工作時(shí)鐘160 MHz,先濾波再抽取。由于因此抽取速率設(shè)置為7,每7 個(gè)時(shí)鐘才輸出一次數(shù)據(jù),相當(dāng)于采樣率降低了7 倍,每次輸出數(shù)據(jù)時(shí)都會(huì)產(chǎn)生一個(gè)Tvalid 脈沖,表示數(shù)據(jù)有效,這個(gè)脈沖頻率即為捕獲模塊數(shù)據(jù)輸入速率,為5.714 286 MHz。最后把Matlab 生成的系數(shù)文件導(dǎo)入濾波器模塊。

4)復(fù)乘模塊

根據(jù)文獻(xiàn)[3],載波頻率至少需要搜索20 kHz 的帶寬,設(shè)置步頻為666.67 Hz,共計(jì)31 個(gè)頻點(diǎn)。PS 將數(shù)字中頻頻率發(fā)給PL,PL 的DDS 模塊產(chǎn)生對(duì)應(yīng)頻率的載波。

采樣存儲(chǔ)模塊地址大小為11 428 bit,數(shù)據(jù)輸入速率為5.714 286 MHz,因此可以存2 ms 的數(shù)據(jù),每存入1 ms 數(shù)據(jù)便按200 MHz 時(shí)鐘頻率讀取數(shù)據(jù)進(jìn)行下一步。這里采用的是乒乓架構(gòu),目的是實(shí)現(xiàn)實(shí)時(shí)計(jì)算。

復(fù)乘模塊將生成的載波與存儲(chǔ)模塊讀取的數(shù)據(jù)在200 MHz 時(shí)鐘下進(jìn)行混頻。

5)平均采樣模塊

對(duì)一組數(shù)據(jù)延時(shí)2 個(gè)時(shí)鐘,另一組不進(jìn)行延時(shí),延時(shí)的一組偏移量為2,未延時(shí)的一組偏移量為0。設(shè)置偏移量的目的是將精度提高到半碼片。由于數(shù)據(jù)輸入速率為5.714 286 MHz,在1 ms 內(nèi)有5 714 個(gè)數(shù)據(jù),為減少后期FFT 與IFFT 的運(yùn)算時(shí)間和運(yùn)算量并減少PL 的IP 核的資源消耗,采用了平均采樣方案,即按照規(guī)則對(duì)數(shù)據(jù)進(jìn)行5 或6 個(gè)數(shù)據(jù)點(diǎn)累加,最后得到兩組1 024 個(gè)數(shù)據(jù)點(diǎn)。

6)FFT 與IFFT 模塊

Matlab 計(jì)算C/A 碼的FFT 共軛并轉(zhuǎn)換為coe 文件,存儲(chǔ)在PL 的只讀存儲(chǔ)器(ROM,read-only memory)中。FFT 模塊對(duì)累加模塊輸出的數(shù)據(jù)進(jìn)行FFT 再與C/A碼的FFT 共軛進(jìn)行復(fù)乘。最后進(jìn)行IFFT 運(yùn)算,共計(jì)需要處理2×31 次的1 024 點(diǎn)IFFT。

FFT 模塊是捕獲的關(guān)鍵模塊。Vivado 的FFT 模塊和以前開發(fā)軟件ISE 的FFT 模塊相比有較大不同,Vivado 中刪除原有的輸入數(shù)據(jù)計(jì)數(shù)標(biāo)志,增加了新的輸入數(shù)據(jù)有效的握手信號(hào)。

圖6 是Vivado 中FFT 的IP 核示意圖。下面介紹參數(shù)配置與關(guān)鍵端口。

圖6 FFT 模塊IP 核Fig.6 Intellectual Property core of FFT module

FFT 變換點(diǎn)數(shù)設(shè)置為1 024。架構(gòu)選擇并行流水線結(jié)構(gòu),該結(jié)構(gòu)雖消耗資源最大,但運(yùn)算最快。輸入數(shù)據(jù)格式為定點(diǎn),輸出數(shù)據(jù)進(jìn)行截位,輸入、輸出位寬均為16 bit,F(xiàn)FT 計(jì)算結(jié)果以自然順序輸出。

圖6 中關(guān)鍵的輸入端口有6 個(gè):①aresetn 是FFT復(fù)位信號(hào),1 bit,低電平有效,是FFT 模塊優(yōu)先級(jí)最高的信號(hào);②aclk 是FFT 工作時(shí)鐘,1 bit,頻率為80 MHz;③aclken 是FFT 時(shí)鐘使能信號(hào),1 bit,高電平有效,只有當(dāng)高電平時(shí),F(xiàn)FT 模塊才進(jìn)行計(jì)算,否則將暫停,直到高電平的到來;④s_axis_config_tdata 是FFT/IFFT 與衰減因子配置端口,16 bit,低10 bit 有效;⑤s_axis_data_tvalid 是輸入數(shù)據(jù)有效標(biāo)志,1 bit;⑥s_axis_data_tdata是數(shù)據(jù)輸入端口,32 bit,攜帶未經(jīng)處理的樣本數(shù)據(jù),第0~15 bit 為實(shí)部,第16~31 bit 為虛部。

圖6 中關(guān)鍵的輸出端口有4 個(gè):①s_axis_data_tready是狀態(tài)準(zhǔn)備標(biāo)志,1 bit,表示準(zhǔn)備接收數(shù)據(jù);②m_axis_data_tdata 是數(shù)據(jù)輸出端口,32 bit,包含處理后的數(shù)據(jù),第0~15 bit 為實(shí)部,第16~31 bit 為虛部;③m_axis_data_tuser 是輸出數(shù)據(jù)計(jì)數(shù)標(biāo)志,16 bit,低10 bit有效;④m_axis_data_tvalid 是輸出數(shù)據(jù)有效標(biāo)志,1 bit。

FFT 模塊工作時(shí),首先進(jìn)行復(fù)位,將復(fù)位信號(hào)aresetn 置0,至少保持2 個(gè)時(shí)鐘脈沖,然后將時(shí)鐘使能信號(hào)aclken 置1,表示FFT 開始工作,同時(shí)將配置信息s_axis_config_tdata 寫入。當(dāng)時(shí)鐘使能信號(hào)置1 后的下一個(gè)時(shí)鐘,狀態(tài)準(zhǔn)備標(biāo)志s_axis_data_tready 被置1,表示可以接收數(shù)據(jù)。由于狀態(tài)準(zhǔn)備標(biāo)志s_axis_data_tready 和輸入數(shù)據(jù)有效標(biāo)志s_axis_data_tvalid 是握手信號(hào),只有兩個(gè)信號(hào)都置1 時(shí),數(shù)據(jù)才能進(jìn)行傳輸,因此時(shí)鐘使能信號(hào)置1 后的下一個(gè)時(shí)鐘將輸入數(shù)據(jù)有效標(biāo)志s_axis_data_tvalid 置1。最后在輸出數(shù)據(jù)有效標(biāo)志m_axis_data_ tvalid 置1 時(shí),數(shù)據(jù)輸出端口m_axis_data_tdata 輸出數(shù)據(jù),且計(jì)數(shù)標(biāo)志m_axis_data_tuser 開始輸出數(shù)據(jù)編號(hào)。

7)最大值、次大值搜索模塊

將IFFT 輸出結(jié)果取模再進(jìn)行平方,然后存到RAM中。RAM 地址共計(jì)1 024×31×2 =63 488 bit,第1 ms的數(shù)據(jù)直接存入RAM 中,以后每1 ms 的數(shù)據(jù)進(jìn)行模值平方累加后,與上1 ms 的模值平方累加結(jié)果相加并存入相應(yīng)位置,直到最后1 ms 時(shí)尋找最大值與次大值,并記錄其位置。

8)捕獲結(jié)果處理模塊

捕獲所得最大值與次大值及其位置,在PS 中進(jìn)行處理,計(jì)算出衛(wèi)星載波頻率與C/A 碼。

4 仿真驗(yàn)證

捕獲模塊的驗(yàn)證通過Vivado 2018.3 與Matlab R2019a 實(shí)現(xiàn)。信號(hào)采樣頻率為40 MHz,在捕獲程序中數(shù)據(jù)輸入速率為5.714 286 MHz。由于AD9361 是零中頻架構(gòu),但經(jīng)過測(cè)試,中心頻率并不是真正的0 Hz,而是存在15 kHz 左右頻率偏移,因此中頻為15 kHz,數(shù)據(jù)長(zhǎng)度為10 ms。測(cè)試分兩部分:第一部分是功能測(cè)試,第二部分是性能測(cè)試。

4.1 功能測(cè)試

該測(cè)試目的是在Matlab 程序中計(jì)算出捕獲衛(wèi)星的衛(wèi)星號(hào)和C/A 碼,在衛(wèi)星號(hào)與C/A 碼已知的情況下,驗(yàn)證PL 程序算法的正確性。

功能測(cè)試分為以下3 步:

(1)設(shè)置AD9361 采樣時(shí)長(zhǎng)為10 ms;

(2)采樣數(shù)據(jù)在Matlab 程序中進(jìn)行捕獲;

(3)采樣數(shù)據(jù)轉(zhuǎn)換為coe 文件存入PL 的ROM 中,在PL 中進(jìn)行捕獲。

在Matlab 程序中捕獲的衛(wèi)星號(hào)為1~37,搜索頻點(diǎn)為1~31,偏移量為1 或3,碼相位為1~1 024,分別對(duì)應(yīng)PL 中捕獲的衛(wèi)星號(hào)為0~36,搜索頻點(diǎn)為0~30,偏移量為0 或2,碼相位為0~1 023。圖7 為Matlab 捕獲結(jié)果圖。表1 與表2 分別是Matlab 和PL 捕獲10 ms數(shù)據(jù)的結(jié)果。

從圖7 中可以看出,在10 ms 數(shù)據(jù)中捕獲到5 顆衛(wèi)星,PRN 編號(hào)(PrnNo)分別為4、7、8、11、27。頻點(diǎn)、偏移量、C/A 碼結(jié)果在表1 中給出。Matlab 中計(jì)數(shù)是從1 開始,PL 中計(jì)數(shù)是從0 開始,因此表2 數(shù)值與表1 相差1。通過表2、表1 捕獲結(jié)果對(duì)照,發(fā)現(xiàn)捕獲的頻點(diǎn)與C/A 碼相同,證明PL 中捕獲算法正確。

圖7 Matlab 捕獲結(jié)果Fig.7 Acquisition results from Matlab

表1 Matlab 捕獲結(jié)果Tab.1 Acquisition results from Matlab

表2 PL 捕獲結(jié)果Tab.2 Acquisition results from PL

圖8 是通過集成邏輯分析(ILA,integrated logic analysis)查看PL 捕獲7 號(hào)衛(wèi)星的結(jié)果圖。

圖8 Vivado ILA 核輸出捕獲結(jié)果Fig.8 Output of Vivado ILA core acquisition results

下面以7 號(hào)衛(wèi)星為例介紹PL 捕獲結(jié)果,其中:PrnNo 寬度5 bit,輸入信號(hào)表示當(dāng)前要捕獲的衛(wèi)星號(hào);CapMsNo 寬度5 bit,輸入信號(hào)表示捕獲模塊輸入數(shù)據(jù)的時(shí)間長(zhǎng)度(ms);dsp_int5 寬度1 bit,輸出信號(hào)為PS的中斷信號(hào),表示當(dāng)前衛(wèi)星捕獲結(jié)束,將捕獲峰值與峰值位置通過AXI4-Lite 總線發(fā)送給PS,在PS 中進(jìn)行門限判斷與信息存儲(chǔ);CapPeak 寬度16 bit,輸出信號(hào)表示捕獲的最大峰值;max_placeout_w 寬度16 bit,輸出信號(hào)表示最大峰值的位置,第0~9 bit 為C/A碼,第10 bit 為平均采樣累加偏移量,第11~15 bit 為峰值頻點(diǎn)。由圖8 可知,最大值位置為40 949,二進(jìn)制表示為1001 1111 1111 0101,因此,C/A 碼為1 013,偏移量為2,頻點(diǎn)為19;

4.2 性能測(cè)試

性能測(cè)試目的是將PL 程序下載到硬件上,對(duì)比手機(jī)軟件捕獲衛(wèi)星數(shù)與PL 實(shí)時(shí)捕獲衛(wèi)星數(shù)。圖9 是通過手機(jī)軟件查看當(dāng)時(shí)能夠捕獲到的衛(wèi)星號(hào)。圖10 是通過串口打印的PL 連續(xù)捕獲10 次的衛(wèi)星C/A 碼。每顆衛(wèi)星捕獲時(shí)長(zhǎng)為10 ms,共計(jì)32 顆衛(wèi)星,連續(xù)捕獲10 次,共計(jì)使用時(shí)間為10×32×10 =3 200 ms。性能測(cè)試分為3 步:

圖9 實(shí)時(shí)衛(wèi)星號(hào)Fig.9 Real time satellite number

圖10 PL 捕獲的衛(wèi)星C/A 碼結(jié)果Fig.10 C/A code phase acquired by PL

(1)設(shè)置AD9361 采集時(shí)長(zhǎng)為10 ms;

(2)PL 中實(shí)時(shí)捕獲;

(3)通過串口連續(xù)打印出10 次捕獲的衛(wèi)星C/A 碼結(jié)果。

圖10 中一共打印出10 行、37 列數(shù)據(jù),行對(duì)應(yīng)第1~10 次捕獲,列對(duì)應(yīng)1~37 號(hào)衛(wèi)星C/A 碼。表3 是將圖10 中數(shù)據(jù)進(jìn)行整理的結(jié)果,其中,C/A 碼為0 表示未捕獲到衛(wèi)星,可以看出,捕獲的衛(wèi)星C/A 碼比較穩(wěn)定。

表3 PL 捕獲圖10 整理結(jié)果Tab.3 Acquisition results from PL of Fig.10

圖11 是將1 024 點(diǎn)C/A 碼作為縱軸、時(shí)間作為橫軸在Matlab 中進(jìn)行畫圖得出的,可以看出隨著時(shí)間的增加,C/A 碼也隨之增加,具有一定的線性關(guān)系。

圖11 衛(wèi)星C/A 碼與捕獲時(shí)間的關(guān)系Fig.11 Relationship between satellite C/A code phase and acquisition time

由圖9 可知,手機(jī)軟件查看到當(dāng)時(shí)空中共有9 顆GPS 衛(wèi)星,PL 捕獲模塊可以捕獲到其中的7 顆。經(jīng)過多次測(cè)試,本文設(shè)計(jì)的捕獲模塊能夠捕獲到的衛(wèi)星數(shù)是手機(jī)軟件捕獲到的衛(wèi)星數(shù)的70%~80%。

表4 為測(cè)試結(jié)果2020年11月13日的對(duì)比情況。通過功能測(cè)試結(jié)果可知,捕獲模塊可以正確得到衛(wèi)星信號(hào)的頻點(diǎn)與C/A 碼,說明捕獲算法正確。但在性能測(cè)試中,捕獲模塊捕獲衛(wèi)星數(shù)少于手機(jī)軟件,出現(xiàn)這種結(jié)果的原因可能有兩點(diǎn):①ZYNQ 平臺(tái)是一個(gè)通用信號(hào)平臺(tái),并不是專用信號(hào)平臺(tái);②AD9361 射頻段的噪聲系數(shù)較大。綜上兩點(diǎn)都有可能影響到捕獲結(jié)果。

表4 2020年11月13日測(cè)試結(jié)果對(duì)比Tab.4 Comparison of results on 13 November 2020

5 結(jié)語(yǔ)

針對(duì)車載抗干擾GPS 接收機(jī)的需求,設(shè)計(jì)并實(shí)現(xiàn)了基于Y320 平臺(tái)的GPS 接收機(jī)捕獲模塊。對(duì)所設(shè)計(jì)模塊進(jìn)行了Matlab 仿真測(cè)試與Vivado 硬件測(cè)試,通過數(shù)據(jù)驗(yàn)證表明,捕獲模塊可以正確捕獲衛(wèi)星信號(hào),滿足設(shè)計(jì)要求。相比于目前傳統(tǒng)抗干擾GPS 接收機(jī)硬件平臺(tái),所設(shè)計(jì)模塊具有體積小、功耗低、成本低的特點(diǎn),同時(shí)為下一步車載抗干擾GPS 接收機(jī)的研制奠定一定基礎(chǔ)。

猜你喜歡
頻點(diǎn)接收機(jī)載波
低成本GNSS接收機(jī)監(jiān)測(cè)應(yīng)用精度分析
功率放大器技術(shù)結(jié)構(gòu)及在雷達(dá)接收機(jī)中的應(yīng)用
GNSS接收機(jī)FLASHADC中比較器的設(shè)計(jì)
淺談雄安新區(qū)某酒店WLAN建設(shè)方案
基于頻率引導(dǎo)的ESM/ELINT接收機(jī)的設(shè)計(jì)與實(shí)現(xiàn)
安恒利為浙江衛(wèi)視跨年演唱會(huì)無(wú)線系統(tǒng)保駕護(hù)航
低載波比下三電平NPC逆變器同步SVPWM算法
中國(guó)移動(dòng)LTE FDD&TDD載波聚合部署建議
800M LTE網(wǎng)絡(luò)≠關(guān)閉C網(wǎng)
為什么更快解讀LTE—ACat.9三載波聚合
义马市| 七台河市| 垦利县| 定陶县| 玛沁县| 新余市| 柏乡县| 淅川县| 同仁县| 五台县| 竹山县| 蒲江县| 西贡区| 沁水县| 泗阳县| 横峰县| 荥阳市| 南雄市| 嘉黎县| 黄大仙区| 哈巴河县| 祁连县| 宁明县| 泉州市| 嘉兴市| 平利县| 珠海市| 阿荣旗| 伽师县| 永福县| 成安县| 民县| 安塞县| 新乡市| 遂溪县| 鸡泽县| 射阳县| 宁远县| 乌恰县| 同仁县| 滕州市|