文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2011)08-108-05
隨著軟件無(wú)線電在衛(wèi)星導(dǎo)航接收機(jī)上的廣泛應(yīng)用,,衛(wèi)星導(dǎo)航接收機(jī)的硬件部分簡(jiǎn)化為射頻前端和高速數(shù)據(jù)采集模塊兩部分,。隨著GPS現(xiàn)代化和伽利略、北斗信號(hào)的發(fā)展,,未來(lái)接收機(jī)必須能夠接收多個(gè)頻點(diǎn)的導(dǎo)航信號(hào),,為了避免多頻下變頻存在的多路頻率混頻的難題,可以在射頻上直接進(jìn)行數(shù)字采樣和數(shù)據(jù)傳輸,。
2009年,,瑞士的洛桑聯(lián)邦理工大學(xué)設(shè)計(jì)出了多頻射頻直接采樣的前端,并對(duì)各級(jí)信號(hào)增益和三階截止點(diǎn)進(jìn)行了詳細(xì)的評(píng)估,。同時(shí)對(duì)多頻信號(hào)的采樣率要求進(jìn)行了分析[1],。2009年,北京航空航天大學(xué)設(shè)計(jì)出了能夠同時(shí)在射頻上直接采集GPS L1,、L2雙信號(hào)的接收機(jī),,采樣率為100 MHz[2]。
國(guó)內(nèi)外目前對(duì)于多頻射頻直接采樣的高速數(shù)據(jù)采集部分研究很少,,北京航空航天大學(xué)之前的方案只是做到雙頻的集成,,采樣率較低。而洛桑聯(lián)邦理工大學(xué)的射頻前端方案成熟但是對(duì)于數(shù)據(jù)采集和定位分析的工作沒(méi)有論述,。能夠同時(shí)接收GPS 3個(gè)頻帶信號(hào),、伽利略信號(hào)以及北斗信號(hào)的接收機(jī)需要的采樣率更高更難以實(shí)現(xiàn)。因此多頻直接采樣接收機(jī)的硬件設(shè)計(jì)工作在國(guó)內(nèi)外均開(kāi)展較少,,其中高速數(shù)據(jù)采集以及多頻射頻前端設(shè)計(jì)是其中的兩個(gè)關(guān)鍵問(wèn)題,。
1 硬件系統(tǒng)設(shè)計(jì)
衛(wèi)星導(dǎo)航系統(tǒng)軟件接收機(jī)的思想是讓寬帶A/D轉(zhuǎn)換器盡可能靠近射頻天線,盡早地將模擬信號(hào)轉(zhuǎn)為數(shù)字信號(hào)[3],,最大程度地用軟件來(lái)實(shí)現(xiàn)接收機(jī)的各種功能,。
本文中數(shù)據(jù)采集系統(tǒng)的工作原理是,使用寬頻天線接收信號(hào)后,,在射頻前端進(jìn)行放大,、濾波和增益控制工作。其中多頻技術(shù)需要使用分路濾波技術(shù),。前端輸出的信號(hào)被送到高速ADC進(jìn)行采樣,,其后通過(guò)FPGA進(jìn)行緩沖和處理(如FIR數(shù)字濾波器處理等)。然后PFGA將數(shù)據(jù)封裝成幀結(jié)構(gòu)通過(guò)以太網(wǎng)口將其傳送到主機(jī)上,。主機(jī)在物理層抓獲以太網(wǎng)數(shù)據(jù)包,,分析MAC地址后將需要的數(shù)據(jù)存儲(chǔ)到硬盤(pán)之中。
1.1 射頻前端設(shè)計(jì)
直接采樣的射頻前端與傳統(tǒng)的采用下變頻技術(shù)的接收機(jī)前端有所不同,。如圖1所示,,直接采樣的射頻前端使用高增益GNSS天線接收信號(hào),。而信號(hào)經(jīng)過(guò)LNA作第一級(jí)放大后,經(jīng)過(guò)1.1 GHz~1.7 GHz帶通濾波,,再使用PA進(jìn)一步放大,。此后射頻信號(hào)分為3路,分別進(jìn)行濾波、放大,、再濾波后合并,,之后使用AGC環(huán)路調(diào)節(jié)輸出信號(hào)功率。
下變頻前端的混頻器頻率由晶振提供,,通過(guò)混頻對(duì)射頻信號(hào)進(jìn)行多級(jí)下變頻,,并進(jìn)行放大和濾波,最后輸出中頻信號(hào)供ADC采集。
在射頻上直接進(jìn)行采樣不需要本地晶振,,但是所有放大器和濾波器均需要在射頻下工作,。多頻前端需要對(duì)不同的頻帶進(jìn)行分路濾波放大,同時(shí)將帶外噪聲盡可能地濾除掉,。本系統(tǒng)使用了實(shí)驗(yàn)室自行設(shè)計(jì)的射頻前端,,能夠在ADC之前得到頻譜形狀如圖2所示的信號(hào)。它包括了GPS的L1,、L2,、L5信號(hào)和伽利略E1、E5a,、E5b以及部分北斗衛(wèi)星的信號(hào),。表1列出了上述導(dǎo)航系統(tǒng)的信號(hào)頻率及帶寬。
前端將信號(hào)放大至ADC可以采樣的電平,對(duì)于ADC08D500,, 1 bit量化的信號(hào)最小輸入能量是-47.92 dBm[5],。GNSS天線的增益為50 dB,兩級(jí)LNA增益共約35 dB, PA增益20 dB,前端總插入損耗約為20 dB, AGC環(huán)路增益動(dòng)態(tài)范圍為-35 dB~+22 dB,使用前端的增益足夠?qū)π盘?hào)進(jìn)行4 bit采樣,。
對(duì)于GNSS信號(hào),,超過(guò)2 bit采樣對(duì)信噪比的改善作用不是很明顯,而太高量化位數(shù)會(huì)增加數(shù)據(jù)處理的困難,。本設(shè)計(jì)選擇存儲(chǔ)了1 bit和2 bit的采樣數(shù)據(jù),,但是在ADC采樣時(shí)仍然進(jìn)行了8 bit采樣,以便于FPGA進(jìn)行FIR濾波,。經(jīng)過(guò)FIR濾波以后的數(shù)據(jù)可以進(jìn)行截位處理,,即截取1 bit或者2 bit進(jìn)行保存。
前端設(shè)計(jì)的主要難點(diǎn)在于以下三個(gè)方面:射頻寬頻帶放大器容易飽和,;分路放大再合路會(huì)給信號(hào)帶來(lái)很大損耗,;射頻AGC電路需要進(jìn)行特殊屏蔽處理。
1.2 采樣率的選擇
衛(wèi)星導(dǎo)航系統(tǒng)使用擴(kuò)頻通信技術(shù),,ADC采集的是噪聲信號(hào),,信號(hào)頻帶上的混疊相當(dāng)于將其他頻帶信號(hào)作為噪聲混疊到目標(biāo)頻帶中,。因此可以容忍一定程度信號(hào)頻譜的混疊。對(duì)于GPS的3個(gè)頻帶,,根據(jù)帶通采樣原理可以計(jì)算需要的采樣頻率,。計(jì)算時(shí)不僅要求信號(hào)采樣后頻譜自身不混疊,同時(shí)不同頻帶的頻譜兩兩之間也不混疊。
對(duì)于GPS的L1,、L2、L5信號(hào)(實(shí)際也包括了伽利略的E1,、E5a),采樣后頻譜不混疊可選用的最低采樣頻率是158 MHz,。若考慮伽利略的E5b,直采系統(tǒng)的最低采樣率為227 MHz [1],。為了滿足不同采樣頻率的要求,,本設(shè)計(jì)采樣頻率合成器生成多種采樣時(shí)鐘,使用FPGA的SPI對(duì)頻率合成器進(jìn)行配置,本文1.3節(jié)中將會(huì)介紹多種采樣時(shí)鐘的生成方法,。
1.3 ADC模塊的設(shè)計(jì)
ADC08D500是美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn)的高速模數(shù)轉(zhuǎn)換芯片,,其取樣率可高達(dá)500 MS/s,使用差分輸入,有效位數(shù)為8 bit,可以進(jìn)行雙通道采樣, 而功耗僅有1.4 W[5],。
ADC08D500除了單通道能實(shí)現(xiàn)最高采樣達(dá)500 MS/s的速率外,,還能夠進(jìn)行雙邊沿采樣(DES),只對(duì)某一路通道的信號(hào)在時(shí)鐘信號(hào)的一個(gè)周期的上下兩個(gè)邊沿進(jìn)行采樣,,利用芯片內(nèi)置的兩個(gè)轉(zhuǎn)換器進(jìn)行交錯(cuò)操作,,最終達(dá)到1 GS/s的采樣率。
ADC采樣的時(shí)鐘來(lái)自于頻率合成器輸出的時(shí)鐘,。為了滿足ADC采樣對(duì)于采樣時(shí)鐘的相位噪聲的要求,,本設(shè)計(jì)使用了10 MHz的原子鐘作為頻率合成器輸入,通過(guò)FPGA的SPI將頻率合成器輸出配置成需要的頻率,,如230 MHz,。此外本文還使用了TCXO作輸入,對(duì)頻率合成器輸出信號(hào)的相位噪聲情況進(jìn)行衡量,。通過(guò)相位噪聲和時(shí)鐘抖動(dòng)的情況計(jì)算出頻率合成器輸出時(shí)鐘總的抖動(dòng)為1.24 ps,,這個(gè)抖動(dòng)情況能夠滿足ADC08D500對(duì)GNSS信號(hào)的采集需要。
ADC08D500的輸出有兩個(gè)通道四組8 bit差分總線,,分別是I[7:0],、Id[7:0]、Q[7:0],、Qd[7:0],,另外還有兩組輸出的差分時(shí)鐘做FPGA的數(shù)據(jù)采集時(shí)鐘。
1.4 高速數(shù)據(jù)傳輸設(shè)計(jì)
將衛(wèi)星導(dǎo)航信號(hào)進(jìn)行數(shù)字化時(shí),,通常將量化位數(shù)選取為1 bit或者是2 bit,。當(dāng)采樣率為230 MHz時(shí),,2 bit采樣數(shù)據(jù)傳輸需要約60 MB/s的接口傳輸速度和硬盤(pán)寫(xiě)入速度。千兆位以太網(wǎng)的理論速度達(dá)1 000 Mb/s,,能夠滿足數(shù)據(jù)傳輸?shù)男枰?,而且ISE工具自帶了Ethernet MAC IP核。因此,,本文中采用以太網(wǎng)進(jìn)行數(shù)據(jù)的傳輸,。
使用以太網(wǎng)傳輸數(shù)據(jù),可以在FPGA實(shí)現(xiàn)TCP/IP協(xié)議功能,,也可以直接通過(guò)以太網(wǎng)的物理層進(jìn)行數(shù)據(jù)傳輸,。Virtex5 FPGA內(nèi)部擁有嵌入式軟核處理器MicroBlaze,能夠進(jìn)行FPGA內(nèi)部的嵌入式開(kāi)發(fā),。開(kāi)發(fā)以太網(wǎng)時(shí)通常在嵌入式系統(tǒng)中添加TCP/IP協(xié)議棧,,常用的TCP/IP協(xié)議棧是Lwip或者是Treck協(xié)議棧[6]。但是使用TCP/IP協(xié)議,,協(xié)議的每一層都會(huì)在數(shù)據(jù)幀前添加各自的幀頭,,再加上協(xié)議的一些檢錯(cuò)重發(fā)等功能,真正待傳輸?shù)臄?shù)據(jù)的吞吐率是很低的,,千兆以太網(wǎng)的速度通常只有200 Mb/s~300 Mb/s,不能滿足本系統(tǒng)對(duì)于數(shù)據(jù)傳輸率的要求,。
在物理層直接傳輸數(shù)據(jù),數(shù)據(jù)傳輸速率幾乎可以達(dá)到以太網(wǎng)的理論傳輸極限(實(shí)測(cè)能超過(guò)900 Mb,,根據(jù)數(shù)據(jù)幀封裝不同有所差異),。雖然沒(méi)有TCP/IP協(xié)議中對(duì)丟包錯(cuò)包等數(shù)據(jù)完整性問(wèn)題的修正功能,但可以通過(guò)上層的校驗(yàn)和序號(hào)發(fā)現(xiàn)數(shù)據(jù)幀錯(cuò)誤和亂序,。下文將討論在主機(jī)端如何在網(wǎng)卡上直接捕獲并存儲(chǔ)高速數(shù)據(jù),。
整個(gè)數(shù)據(jù)采集系統(tǒng)的結(jié)構(gòu)如圖3所示,除了ADC電路的設(shè)計(jì),主要工作在FPGA下完成,。
1.4.1 FPGA數(shù)據(jù)預(yù)處理
本文使用Xilinx公司的Virtex5系列FPGA開(kāi)發(fā)板ML506進(jìn)行數(shù)字信號(hào)處理,,開(kāi)發(fā)環(huán)境基于ISE Design suite 11進(jìn)行。
從ADC傳送出的數(shù)字信號(hào)為8對(duì)或者16對(duì)差分?jǐn)?shù)據(jù)以及1路差分時(shí)鐘,。對(duì)于采樣數(shù)據(jù)的截位處理可以分為直接截位和濾波后截位兩種處理方式,。直接截位是只選擇其中的高位數(shù)據(jù)進(jìn)行傳輸,濾波后截位是接收全部的8 bit數(shù)據(jù),,將數(shù)據(jù)送給數(shù)字濾波器處理后再進(jìn)行截位,,本文采用先濾波后截位的方法,可以選擇保存1 bit或者2 bit數(shù)據(jù),。
ADC08D500器件以230 MHz的高采樣率進(jìn)行8 bit量化時(shí),,輸出數(shù)據(jù)率將非常大。單獨(dú)對(duì)其中任一導(dǎo)航信號(hào)頻帶來(lái)說(shuō),,高達(dá)230 MHz的采樣率都是不必要的,。對(duì)此,,在FPGA中添加入FIR(有限沖激響應(yīng)數(shù)字濾波器),分別濾出采樣后導(dǎo)航信號(hào)各頻帶,,在使用截位輸出來(lái)降低量化位數(shù)的同時(shí),,使用抽取來(lái)降低采樣率。以GPS系統(tǒng)為例,,當(dāng)采樣率為230 MHz時(shí),,L1、L2和L5的中頻分別為195.42 MHz,、77.6 MHz和26.45 MHz,。因此,在FPGA中生成3個(gè)FIR(帶通FIR)就可以濾除帶外信號(hào),,消除信號(hào)互相之間的干擾。具體實(shí)現(xiàn)方法是在MATLAB通過(guò)“ftdtools”濾波器設(shè)計(jì)工具,,計(jì)算濾波器參數(shù)以生成COE形式的濾波器文件,。
將設(shè)計(jì)出的3個(gè)濾波器文件(.COE文件)導(dǎo)入FPGA的FIR IPcore中,就可以生成相應(yīng)的濾波器Verilog代碼,即可獲得對(duì)應(yīng)的頻率幅度響應(yīng)圖,,其效果如圖4所示,。
FIR輸出數(shù)據(jù)可以根據(jù)數(shù)據(jù)傳輸能力和需要進(jìn)行截位,一般只截取最高的符號(hào)位或者選取其中2位,。數(shù)據(jù)分三路進(jìn)行FIR濾波之后,,即可對(duì)每一路數(shù)據(jù)進(jìn)行降采樣處理。直接進(jìn)行抽取就可以降低數(shù)據(jù)量和采樣率,,這將降低后續(xù)數(shù)據(jù)處理復(fù)雜度,。
在對(duì)三路濾波后信號(hào)進(jìn)行傳輸過(guò)程中,通過(guò)以太網(wǎng)封裝幀給不同頻點(diǎn)信號(hào)賦予不同的MAC地址,。主機(jī)捕獲時(shí)可以通過(guò)識(shí)別MAC地址的方法,,將三路數(shù)據(jù)進(jìn)行分類存儲(chǔ)。
1.4.2 以太網(wǎng)數(shù)據(jù)傳輸
V5系列FPGA開(kāi)發(fā)板上有以太網(wǎng)物理芯片88E1111實(shí)現(xiàn)開(kāi)發(fā)板與電腦網(wǎng)卡的以太網(wǎng)物理層連接,,ISE 11套裝中的core generator可以生成Ethernet MAC IP核,,直接例化它就可以進(jìn)行以太網(wǎng)數(shù)據(jù)傳輸?shù)拈_(kāi)發(fā)[7]。其結(jié)構(gòu)如圖5所示,。
直接接收ADC的輸出數(shù)據(jù)或者是FIR截位之后的數(shù)據(jù)作為圖6模塊中的用戶輸入數(shù)據(jù),。因?yàn)樵O(shè)置的MAC核按照字節(jié)來(lái)傳輸數(shù)據(jù),所以在MAC核前面需要添加一個(gè)FIFO進(jìn)行緩沖和串并轉(zhuǎn)換,,進(jìn)入FIFO的數(shù)據(jù)是1 bit或2 bit,,按照整字節(jié)輸出數(shù)據(jù)。
直接發(fā)送的數(shù)據(jù)幀是以太網(wǎng)物理層的數(shù)據(jù)幀,,高層協(xié)議(TCP/IP協(xié)議)并沒(méi)有使用到,。
以太網(wǎng)數(shù)據(jù)幀的包頭首先是8 B的前導(dǎo)碼(7 B原語(yǔ)和1 B幀起始)[7],,然后是6 B的目的MAC地址和6 B的源MAC地址,之后是2 bit的協(xié)議類型或數(shù)據(jù)包長(zhǎng)度,,中間是46~1 500 B的數(shù)據(jù)內(nèi)容,,以及4 bit的校驗(yàn)位,如圖6所示,?;贓MAC核實(shí)現(xiàn)以太網(wǎng)絡(luò)協(xié)議數(shù)據(jù)報(bào)文的發(fā)送具體包括以下幾個(gè)步驟:數(shù)據(jù)輸出緩沖、MAC地址添加,、數(shù)據(jù)FCS校驗(yàn)和原語(yǔ)添加,。最終經(jīng)過(guò)MAC封裝以后,整個(gè)數(shù)據(jù)報(bào)文的長(zhǎng)度為64~1 518 B,。校驗(yàn)位和前導(dǎo)碼是可以選擇自動(dòng)添加的,,所以在輸入數(shù)據(jù)時(shí),通過(guò)編寫(xiě)狀態(tài)機(jī)代碼添加正確的MAC地址,,設(shè)置固定字節(jié)的數(shù)據(jù)包大小就可以讓數(shù)據(jù)正確地傳輸了,。設(shè)計(jì)時(shí)設(shè)置每個(gè)數(shù)據(jù)幀除了幀頭信息以外有1 024 B的數(shù)據(jù),正好是1 KB,,即可方便地觀察數(shù)據(jù)包是否出錯(cuò)和衡量整體數(shù)據(jù)傳輸完整性,。
千兆位以太網(wǎng)使用的時(shí)鐘是ML506板載的晶振分頻出的125 MHz時(shí)鐘,通過(guò)FPGA內(nèi)部的PLL合成,。
1.4.3 上位機(jī)數(shù)據(jù)捕獲
因?yàn)镕PGA發(fā)送數(shù)據(jù)時(shí)僅使用了以太網(wǎng)的物理層,,所以在主機(jī)抓包的時(shí)候僅需要關(guān)注數(shù)據(jù)包的MAC地址信息即可,不需要再對(duì)TCP/IP協(xié)議進(jìn)行分析和處理,。
因此本文采用winpcap(windows packet capture)開(kāi)放代碼來(lái)實(shí)現(xiàn)MAC數(shù)據(jù)報(bào)文的采集功能,。winpcap能夠?yàn)閣in32應(yīng)用程序提供訪問(wèn)網(wǎng)絡(luò)底層的能力,因此獨(dú)立于TCP/IP協(xié)議的以太網(wǎng)數(shù)據(jù)包能夠被上層應(yīng)用程序捕獲和保存,。
由于一般的SATA硬盤(pán)的寫(xiě)入速度在40 MB/s~80 MB/s,,為了保證數(shù)據(jù)能夠完整寫(xiě)入硬盤(pán),應(yīng)盡可能使用高速硬盤(pán),。同時(shí),,在編寫(xiě)捕捉和存儲(chǔ)數(shù)據(jù)的軟件時(shí),應(yīng)該設(shè)立一定的緩沖區(qū)域,。將網(wǎng)絡(luò)采集到的數(shù)據(jù)首先寫(xiě)入內(nèi)存之中,,待累積了一段數(shù)據(jù)之后將其一次性寫(xiě)入硬盤(pán),以減少CPU時(shí)間分配對(duì)寫(xiě)入數(shù)據(jù)完整性的影響,。
2 實(shí)驗(yàn)結(jié)果
通過(guò)SPI配置的不同采樣率對(duì)實(shí)際衛(wèi)星信號(hào)進(jìn)行采集,,存儲(chǔ)下來(lái)的數(shù)據(jù)文件采用實(shí)驗(yàn)室自研的捕獲算法可以成功地捕獲出GPS L1、L2、L5信號(hào),。圖7是在采集的一段數(shù)據(jù)中L2,、L5信號(hào)的捕獲結(jié)果。通過(guò)與下變頻前端采集的數(shù)據(jù)進(jìn)行對(duì)比分析可以發(fā)現(xiàn),,兩個(gè)系統(tǒng)捕獲到的衛(wèi)星數(shù)量,、編號(hào)、多普勒頻偏是一致的,,但直接采樣數(shù)據(jù)的信噪比要略高,。該實(shí)驗(yàn)結(jié)果如表2所示。這說(shuō)明該系統(tǒng)采集的數(shù)據(jù)是正確有效的,。
本文介紹了使用射頻直接采樣技術(shù)的多頻GNSS數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)方法,。本文首先提供了主要的硬件平臺(tái)結(jié)構(gòu)設(shè)計(jì)方案,并對(duì)于射頻前端的電路設(shè)計(jì)和高速數(shù)據(jù)采集這兩個(gè)關(guān)鍵技術(shù)進(jìn)行了詳細(xì)闡述,。在此基礎(chǔ)上,,本系統(tǒng)實(shí)現(xiàn)了多頻多系統(tǒng)衛(wèi)星導(dǎo)航信號(hào)的采集功能,并且與下變頻方法采集的數(shù)據(jù)進(jìn)行了對(duì)比,。實(shí)驗(yàn)表明,,該系統(tǒng)在性能和可擴(kuò)展性方面都要優(yōu)于傳統(tǒng)的下變頻采集系統(tǒng),具備很好的通用性,。隨著技術(shù)的發(fā)展,更多更高性能的射頻放大濾波器件的價(jià)格不再昂貴,,運(yùn)用直接采樣技術(shù)的多頻衛(wèi)星導(dǎo)航接收機(jī)將具備很大的發(fā)展空間,。
參考文獻(xiàn)
[1] RIVERA P E, CHASTELLAIN F,, BOTTERON C,, et al.Design of a GPS and Galileo Multi-Frequency[A].VTC Spring 2009. IEEE 69th Digital Object Identifier: 10.1109/VETECS. 2009.
[2] Liu Hongquan, Kou Yanhong. Design and implementation of a GNSS signal collection system using direct RF sampling [A]. Microelectronics & Electronics, 2009. PrimeAsia 2009. Asia Pacific Conference on Postgraduate Research in Digital Object Identifier: 10.1109/PRIMEASIA.2009.
[3] 姜宇柏,游思晴. 軟件無(wú)線電原理與工程應(yīng)用[M].北京:機(jī)械工業(yè)出版社,,2007.
[4] Mitel Semiconductor. GP2015 GPS Receiver RF Front End. 1996.
[5] National Semiconductor Corporation. ADC08D500 High Performance, Low Power, Dual 8-Bit, 500 MSPS A/D Converter.2008.
[6] ADAM D. Design and implemetation of the LwIP TCP/IP stack[M]. Swedish: Institue of Computer Science. 2001.
[7] Xilinx Inc. UG194“Virtex-5 FPGA Embeded Tri-mode Ethernet MAC User Guide”. 2008.