文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2017.07.016
中文引用格式: 趙玉東,秦紅磊,,張潤萍. 多通道GNSS數(shù)據(jù)采集平臺的設(shè)計與實現(xiàn)[J].電子技術(shù)應(yīng)用,,2017,43(7):63-66.
英文引用格式: Zhao Yudong,,Qin Honglei,,Zhang Runping. The design and implementation of multi-channel GNSS data acquisition platform[J].Application of Electronic Technique,,2017,43(7):63-66.
0 引言
目前,數(shù)據(jù)采集技術(shù)已經(jīng)廣泛應(yīng)用于雷達(dá),、導(dǎo)航,、通信、圖像處理等領(lǐng)域,,為各類系統(tǒng)提供了真實有效的實測數(shù)據(jù),,以便于精度和可靠性驗證。在衛(wèi)星導(dǎo)航中,,利用陣列天線方法進(jìn)行抗多徑,、抗干擾的理論研究已比較深入,但利用硬件平臺采集實測數(shù)據(jù)并進(jìn)行結(jié)果驗證的研究在國內(nèi)還較少,。由于平臺需要將每個天線陣元接收到的信號進(jìn)行同步采集存儲,,并要保證數(shù)據(jù)的準(zhǔn)確性和可靠性,因此該平臺需具備多通道無失真高速數(shù)據(jù)采集和大容量數(shù)據(jù)存儲的能力,。為了解決這一問題,,本設(shè)計采用傳輸速率較高的PCIE串行總線,并以Xilinx公司Kintex7-325T系列FPGA芯片作為處理核心,,設(shè)計并實現(xiàn)了多通道高速GNSS數(shù)據(jù)采集平臺,,具備廣泛的應(yīng)用價值。
1 系統(tǒng)總體架構(gòu)
本文所設(shè)計的多通道衛(wèi)星導(dǎo)航采集存儲系統(tǒng)由多陣元天線陣列,、多通道下變頻模塊、高速A/D轉(zhuǎn)換模塊,、FPGA,、SATA硬盤組成,系統(tǒng)總體架構(gòu)如圖1所示,。
天線陣列由8個導(dǎo)航測量型天線組成,,能夠接收來自不同方向的GPSL1及北斗B1、B3等多個頻點(diǎn)的信號,。多路下變頻設(shè)備是將每個天線陣元接收到的射頻信號進(jìn)行下變頻處理,,再將其輸入至各個A/D采集通道中,。數(shù)字中頻信號在FPGA內(nèi)部進(jìn)行緩存打包,然后通過操控PCI Express硬核,,將數(shù)據(jù)由PCIE總線寫至PC內(nèi)存,,最后搬移至臺式電腦的固態(tài)硬盤中,完成整個采集存儲的過程,。
2 系統(tǒng)硬件結(jié)構(gòu)
2.1 射頻前端的設(shè)計與實現(xiàn)
本次設(shè)計使用的下變頻板卡為實驗室自主研發(fā)產(chǎn)品,,以北斗二代RNSS區(qū)域信號接收機(jī)射頻芯片為核心,可以接收B1,、B2,、B3以及GPS L1、GLONASS L1,、L2頻點(diǎn)的信號(芯片內(nèi)只有一個射頻通道,,通過SPI接口和S0、S1撥碼開關(guān)選擇信號選擇其中一個頻點(diǎn)工作),,經(jīng)放大,、變頻、濾波等處理后,,輸出模擬或數(shù)字中頻信號供基帶芯片使用,。通過設(shè)置SPI寄存器,片內(nèi)通道的幅頻特性可以設(shè)置為適合BPSK-2,、BPSK-10以及MBOC(6,,1,1/11)等不同的信號體制,,下變頻頻率參數(shù)如表1所示,。
該芯片的射頻前端帶寬可以配置,能夠降低射頻前端濾波器對擴(kuò)頻碼相關(guān)峰的影響,,從而滿足抗多徑算法基帶處理的要求,。芯片結(jié)構(gòu)及原理如圖2所示。
由于天線陣列抗多徑算法需要同時處理多路中頻導(dǎo)航數(shù)據(jù),,為此,,在本設(shè)計中將8塊下變頻板卡同時放入一個機(jī)箱中,并解決所有板卡的供電與外接時鐘的輸入問題,。機(jī)箱布局如圖3所示,。
2.2 AD采集平臺的設(shè)計與實現(xiàn)
本文設(shè)計的采集平臺是由基于PCIE總線的FPGA開發(fā)板和多路AD采集子板組成。AD采集板的主要功能是采集外部的模擬數(shù)據(jù),,配置每個AD采樣通道的采樣時鐘,,并將數(shù)據(jù)通過FMC接口輸入FPGA中;而FPGA開發(fā)板主要功能是將AD輸入的數(shù)據(jù)進(jìn)行處理,,包括數(shù)據(jù)的格式轉(zhuǎn)換,、緩存,,以及向PCIE總線打包發(fā)送等,兩塊板卡通過FMC-HPC高速接口相連,。FPGA開發(fā)板的結(jié)構(gòu)框圖如圖4所示,。
該板卡主芯片采用Xilinx Kintex-7 FPGA xc7k325t-ffg900-2,芯片具有PCI Express Endpoint模塊,、高速串行通信接口,、DDR3內(nèi)存接口和自定義I/O接口。支持PCI Express 1/2/4/8Lane,,符合PCI Expressv1.1/2.0,,每個lane的傳輸速率是2.5 Gb/s。整板DDR3內(nèi)存總?cè)萘窟_(dá)到1 GB(支持最大2 GB),。DDR3 SDRAM時鐘最高達(dá)303.03 MHz,。DDR3 SDRAM顆粒采用128 M×16 bit。4個DDR3顆粒組成一個64 bit 1 GB緩存,。
本次設(shè)計采用的AD采集卡是具有8通道模數(shù)轉(zhuǎn)換器(ADC)的FPGA夾層卡,,采用ADS62P49芯片,具有14 bit分辨率,,最大采樣速率達(dá)250 MS/s,。ADC時鐘設(shè)計由AD9516芯片提供。AD9516參考時鐘為10 MHz,,可選板上10 MHz的VCXO,,也可選擇從板外提供時鐘。板卡采用高引腳數(shù)(HPC)連接器,,輸入信號可以是單端信號,,也可以是差分信號對。該板卡結(jié)構(gòu)框圖如圖5,。
3 PCIE DMA通信鏈路的實現(xiàn)
DMA控制器是利用PCIE總線進(jìn)行高效率數(shù)據(jù)傳輸?shù)闹匾侄?。本設(shè)計中的DMA控制器負(fù)責(zé)在驅(qū)動程序的控制下,將ADC FIFO中的數(shù)據(jù)搬移到PC內(nèi)存中,。
本文中的DMA控制器的代碼基于Xilinx公司提供的xapp1052 DMA demo進(jìn)行了修改,,主要由RX Engine、TX Engine和EP_MEM構(gòu)成,,如圖6所示,。由于本文只涉及數(shù)據(jù)采集接收,所以只針對TX Engine模塊與EP_MEM模塊加以說明,。
3.1 TX_ENGINE的設(shè)計
TX_ENGINE模塊負(fù)責(zé)按照PCIE協(xié)議緩存打包數(shù)據(jù),,并控制PCIE接口發(fā)送TLP給PC,,從而實現(xiàn)對PC內(nèi)存的讀寫和對PC請求的回應(yīng),。
3.2 EP_MEM的設(shè)計
EP_MEM模塊是整個FPGA的控制中心,,DMA的控制和數(shù)據(jù)采集以及回放的控制都在該模塊內(nèi)實現(xiàn)。數(shù)據(jù)采集時,,將adc_run_en置位,,ADC即開始工作,并將采集到的數(shù)據(jù)放入TX FIFO中,。主控Process若檢測到驅(qū)動程序請求數(shù)據(jù),,并且TX FIFO中數(shù)據(jù)大于16 KB時,即啟動一次Mwr DMA操作,,將16 KB搬移到驅(qū)動程序的緩沖區(qū)中,。搬移完畢后,向驅(qū)動程序緩沖區(qū)的首地址寫入一個非零的數(shù)據(jù),,以通知驅(qū)動操作完成,。數(shù)據(jù)由FIFO單次寫入內(nèi)存的流程如圖7所示。
4 連續(xù)存儲數(shù)據(jù)的實現(xiàn)
當(dāng)需要采集的數(shù)據(jù)量小于1 GB時,,可以先將采集到的數(shù)據(jù)整體保存在內(nèi)存中,,再一次性寫入文件。由于內(nèi)存大小的限制,,不能一次性開辟足夠大的存儲空間,,但可以采用多次開辟內(nèi)存的操作。即當(dāng)一個空間存滿之后,,隨即將所得到的數(shù)據(jù)寫到硬盤中的目標(biāo)文件中,;然后再次開辟一段空間,向新的內(nèi)存空間中繼續(xù)寫入數(shù)據(jù),,再將數(shù)據(jù)轉(zhuǎn)移到硬盤當(dāng)中,。這一方法將一次大規(guī)模存儲操作變成多次小規(guī)模寫入操作,實現(xiàn)了不限制容量的存儲過程,。另一方面,,為了減少每次數(shù)據(jù)由內(nèi)存寫入硬盤的時間,將每次開辟的內(nèi)存空間大小定位16 KB,,即當(dāng)內(nèi)存每次從FIFO中讀取16 KB數(shù)據(jù)時,,就立刻將其轉(zhuǎn)送到硬盤中的目標(biāo)文件,此時每個開辟內(nèi)存的間斷時間是可以忽略不計的,。該方法實現(xiàn)的流程如圖8所示,。
5 信號采集測試
5.1 單通道信號采集測試
用正弦波信號源作為AD輸入,設(shè)置采樣率為62.5 MHz,、量化位數(shù)為16 bit,、使用單通道ADC采集頻率為1 MHz的正弦信號,再將數(shù)據(jù)經(jīng)PCIE總線存儲至硬盤中。使用MATLAB作出數(shù)據(jù)圖像,,得到的結(jié)果如圖9所示,。
由圖中可以看出,信號在時域是連續(xù)不失真的,,且沒有明顯的雜波干擾,。
再使用單通道衛(wèi)星導(dǎo)航信號作為數(shù)據(jù)源進(jìn)行測試。信號源是由衛(wèi)星導(dǎo)航模擬器產(chǎn)生的GPSL1頻點(diǎn)的中頻信號,,中頻為42.966 MHz,,AD采樣率配置為62.5 MHz,存儲數(shù)據(jù)文件大小為20 GB,,得到頻譜如圖10所示,。從圖中看出,中頻頻點(diǎn)位置與預(yù)設(shè)值一致,,并且頻譜圖像符合GPSL1信號BPSK調(diào)制規(guī)律,。
5.2 系統(tǒng)整體測試結(jié)果
將整套測試設(shè)備置于室外環(huán)境中進(jìn)行實測信號驗證,測試位置為北京航空航天大學(xué)新主樓大平臺,,測試頻點(diǎn)為GPSL1信號,,得到8個通道的經(jīng)緯高均值和標(biāo)準(zhǔn)差統(tǒng)計結(jié)果如表2所示。由表2看出,,該采集平臺采集存儲的數(shù)據(jù)在經(jīng)度,、緯度兩個維度解出的定位誤差均在10 m以內(nèi),高度誤差在20 m范圍左右,,滿足了GPS定位要求,。
6 結(jié)論
為滿足衛(wèi)星導(dǎo)航抗多徑算法中對于同一時刻多通道原始數(shù)據(jù)的需求,本文設(shè)計并實現(xiàn)了一種以FPGA為處理核心,、PCIE串行總線為高速通信介質(zhì),、固態(tài)硬盤為存儲設(shè)備的高速多路數(shù)據(jù)采集與存儲平臺。經(jīng)過對該系統(tǒng)的全面測試,,結(jié)果表明系統(tǒng)可以同時準(zhǔn)確采集并存儲多通道衛(wèi)星導(dǎo)航實際數(shù)據(jù),。由于PCIE協(xié)議的通用性,該平臺可適用于任何帶有PCIEx8及以上接口的PC系統(tǒng)中,。在未來的設(shè)計中也可以擴(kuò)展為多塊板卡同時工作,,使得該平臺可以適用于更多通道的數(shù)據(jù)采集與存儲中,具備廣闊的應(yīng)用前景,。
參考文獻(xiàn)
[1] BRAASCH M.Optimum antenna design for DGPS ground reference stations[C].ION GPS 1994.Salt Lake City,,UT:1994:1291-1297.
[2] NEHORAI A,PALDI E.Vector-sensor array processing for electromagnetic sourcelocalization[J].IEEE Trans.Signal Processing,,1994,,42(2):376-398.
[3] MIRON S,,MARS J I.Vector-sensor music for polarized seismicsources localization[J].EURASIP Journal on Applied Signal Processing,2005,,1(1):74-84.
[4] 夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計教程[M].北京:北京航空航天大學(xué)出版社,,2008.
[5] 張琴,馬游春,,李錦明.基于PCI Express高速數(shù)據(jù)采集卡的接口設(shè)計[J].測控技術(shù),2010,,29(2):63-66.
[6] 沈輝,,張萍.FPGA在PCI Express總線接口中的應(yīng)用[J].現(xiàn)代電子技術(shù),2010,,33(14):109-111.
[7] 劉寧.基于PCI Express接口的高速數(shù)據(jù)傳輸系統(tǒng)的設(shè)計與實現(xiàn)[D].太原:中北大學(xué),,2008.
[8] 薛小剛,葛毅敏.XilinxISE9.XFPGA/CPLD設(shè)計指南[M].北京:人民郵電出版社,,2007.
[9] 劉凱,,徐欣.基于Virtexs的PCI-Express總線接口設(shè)計[J].現(xiàn)代電子技術(shù),2005(20):107-109.
[10] 石峰,,吳建飛,,劉凱,等.基于Xilinx FPGA的PCIE接口實現(xiàn)[J].微處理機(jī),,2008(6):18-22.
作者信息:
趙玉東,,秦紅磊,張潤萍
(北京航空航天大學(xué) 電子信息工程學(xué)院,,北京100191)