基于FPGA的導(dǎo)航抗干擾接收機(jī)數(shù)字變頻的實現(xiàn)
摘要 根據(jù)衛(wèi)星信號結(jié)構(gòu)、頻率特征設(shè)計和實現(xiàn)了導(dǎo)航抗干擾接收系統(tǒng)中,基于軟件無線電的上下變頻模塊。根據(jù)系統(tǒng)的A/D采樣頻率與轉(zhuǎn)換位數(shù)、阻帶衰減要求、頻率選擇性、增益,輸入輸出頻率在Matlab中建模。確定了DDC和DUC的設(shè)計方案,并在硬件上實現(xiàn),重點是NCO和濾波器組設(shè)計,包括梳狀濾波器、半帶濾波器和補(bǔ)償濾波器。構(gòu)建完成系統(tǒng)后進(jìn)行了仿真驗證,可滿足系統(tǒng)設(shè)計要求。
本文引用地址:http://cafeforensic.com/article/201610/308419.htm導(dǎo)航接收機(jī)作為衛(wèi)星導(dǎo)航系統(tǒng)的主要組成部分,是市場大規(guī)模和產(chǎn)業(yè)化的核心環(huán)節(jié)。研究導(dǎo)航接收機(jī)關(guān)鍵技術(shù),對建設(shè)我國有自主知識產(chǎn)權(quán)的衛(wèi)星導(dǎo)航接收系統(tǒng)有具有現(xiàn)實意義。因此,對用戶端接收機(jī)、拓寬應(yīng)用范圍是GNSS研究的熱點。同時衛(wèi)星導(dǎo)航信號弱、易受干擾會直接影響衛(wèi)星導(dǎo)航系統(tǒng)在復(fù)雜干擾環(huán)境下發(fā)揮的作用。因此需研制具有抗干擾能力的接收系統(tǒng)。本文主要根據(jù)衛(wèi)星信號結(jié)構(gòu)、頻率特征設(shè)計了導(dǎo)航抗干擾接收系統(tǒng)中基于軟件無線電的上下變頻模塊。
1 DDC和DUC的系統(tǒng)設(shè)計
導(dǎo)航抗干擾系統(tǒng)中的數(shù)字接收機(jī)所采用的是數(shù)字混頻正交變換,但該方法在高采樣率時,混頻后端的濾波器需要較高的濾波器階數(shù),對硬件資源的要求高,導(dǎo)致使用資源過多、功耗過大等問題。因此在實際的上下變頻技術(shù)應(yīng)用中,多速率信號處理濾波器組常選擇CIC積分梳狀濾波器級聯(lián)HB半帶濾波器、級聯(lián)補(bǔ)償FIR濾波器的組合結(jié)構(gòu),來滿足設(shè)計要求。
1.1 設(shè)計指標(biāo)
開發(fā)工具采用Xilinx公司的ISE,芯片采用Xilinx公司的FPGA—spantan3E。數(shù)字中頻信號中心頻率為70 MHz,帶寬為20 MHz,采樣率為90 MHz,濾波器阻帶衰減60 dB。下變頻中,經(jīng)NCO提供的20 MHz本振信號混頻到零頻上,完成4倍的抽取。上變頻經(jīng)過4倍插值,混頻到70 MHz中頻上,采樣率由22.5 MHz升至90 MHz。
1.2 建立DDC和DUC設(shè)計方案
首先在Matlab中進(jìn)行建模,確定濾波器組參數(shù),包括濾波器級數(shù)、系數(shù)等。濾波器組方案采用2倍多級CIC濾波器抽取,級聯(lián)2級抽取半帶濾波器,最后級聯(lián)多級補(bǔ)償FIR濾波器。由此確定半帶濾波器和補(bǔ)償濾波器的系數(shù)和級數(shù),幅頻特性如圖1所示。
由此可得出設(shè)計的數(shù)字下變頻結(jié)構(gòu)如圖2所示,包括數(shù)控振蕩器NCO模塊、數(shù)字混頻器模塊、CIC濾波器模塊、HB半帶濾波器模塊和FIR補(bǔ)償濾波器模塊。數(shù)字上變頻結(jié)構(gòu)是數(shù)字下變頻的逆過程,兩者的工作原理、結(jié)構(gòu)和實現(xiàn)互相對應(yīng)。
1.3 DDS的設(shè)計
為避免使用大容量存儲器,可以考慮利用算法來產(chǎn)生正余弦樣本。CORDIC算法是一種基于矢量旋轉(zhuǎn)的坐標(biāo)計算方法。該算法的基本思想是通過一系列固定的、與運算技術(shù)相關(guān)的角度不斷偏擺以逼近所需的旋轉(zhuǎn)角度。它有線性的收斂域和序列的特性,只要迭代次數(shù)足夠,即可保證結(jié)果有足夠的精度。當(dāng)輸入90MHz的基準(zhǔn)時鐘,步進(jìn)字設(shè)為954 437 176(十進(jìn)制),將輸出2 MHz的正余弦離散波形,圖3所示為DDS模塊在Modelsim中仿真結(jié)果。
與使用ROM查找表法相比,CORDIC算法產(chǎn)生DDS的優(yōu)勢有:(1)所有運算都可通過移位和加減運算實現(xiàn),無需耗費硬件乘法器資源,易于實現(xiàn)。(2)可使用循環(huán)迭代方法,節(jié)約硬件資源。(3)可通過流水線法,提高工作頻率。
1.4 濾波器組的設(shè)計
CIC濾波器的結(jié)構(gòu)簡單,沒有乘法器,只有加法器,積分器和寄存器,適合工作在高采樣率。而且,CIC濾波器是一種基于零極點相消的FIR濾波器,實現(xiàn)上減少了復(fù)雜度與資源消耗,已被證明是在高速抽取或插值系統(tǒng)中的有效單元。
單級CIC濾波器的傳遞函數(shù)為
單級CIC濾波器旁瓣電平較大、阻帶衰減較差、降低旁瓣電平,可以采用多級CIC濾波器級聯(lián)的方法實現(xiàn)。根據(jù)Matlab建模要達(dá)到60 dB阻帶抑制比,需要5級級聯(lián)。此時,阻帶衰減為單級衰減(13.36 dB)的5倍。由CIC濾波器的傳遞函數(shù),使用Verilog語言即可寫出一個5級、抽取率為2的CIC抽取濾波器和CIC插值濾波器,都由5級積分器和梳狀器級聯(lián)構(gòu)成。但在用FPGA實現(xiàn)的過程中,Integrator模塊里,會出現(xiàn)溢出問題。在設(shè)計過程中為防止數(shù)據(jù)溢出,必須相應(yīng)地擴(kuò)大數(shù)據(jù)的位數(shù),以減少誤差。有相應(yīng)公式,內(nèi)部運算單元寬度
REG_WIDTH=L+Nlog2(DM) (2)
其中,L為數(shù)據(jù)寬度;D為抽取因子;M為差分延遲。
半帶濾波器的本質(zhì)是FIR濾波器,只是有1/2的系數(shù)為0,其實現(xiàn)結(jié)果與傳統(tǒng)的FIR濾波器基本相同,將為零的系數(shù)通過延遲單元實現(xiàn),同等條件下復(fù)雜度更低。因此,在實現(xiàn)時也可通過FIR Compiler IP核來實現(xiàn)。根據(jù)Matlab建模的結(jié)果,生成定點量化的半帶濾波器系數(shù),并寫入磁盤,生成coe文件,然后再加載到FIR Complier配置界面中。
在ISE13.1中FIR濾波器的IPCore是FIR Complier,其功能強(qiáng)大,對于半帶的抽取、內(nèi)插、希爾伯特變換等都能完成,其結(jié)構(gòu)包含乘加結(jié)構(gòu)和分布結(jié)構(gòu)。
補(bǔ)償濾波器是針對CIC濾波器而設(shè)計的,因為CIC濾波器并不具備一個平的、寬的通帶,而多級CIC濾波器會加劇通帶的這種不平坦,所以為了修正通帶內(nèi)的衰減,可以通過級聯(lián)一個FIR濾波器對其幅度響應(yīng)進(jìn)行補(bǔ)償。這個FIR濾波器的幅度響應(yīng)取CIC幅度響應(yīng)的倒數(shù)時,正好可以修正多級CIC濾波器的通帶上的迅速衰降,在擴(kuò)展其通帶帶寬的同時提高了阻帶衰減。則補(bǔ)償FIR濾波器的幅值響應(yīng)公式為
由此產(chǎn)生FIR濾波器系數(shù),并由FIR Complier生成。
2 系統(tǒng)的集成與驗證
2.1 下變頻
系統(tǒng)中的各個模塊包括數(shù)控振蕩器模塊、5級級聯(lián)的CIC抽取與內(nèi)插濾波器模塊、半帶抽取與內(nèi)插濾波器模塊和FIR補(bǔ)償濾波器模塊。最后通過編寫頂層文件,實現(xiàn)各個模塊的互聯(lián),以最終集成導(dǎo)航抗干擾接收系統(tǒng)中DUC和DDC的功能。
首先在Matlab中產(chǎn)生一個帶寬為20 MHz;中心頻率為70 MHz;頻譜為矩形的信號,以fs=90 MHz的頻率采樣,則其頻譜將在f軸上以fs為周期延拓,原本在70 MHz的頻率上產(chǎn)生的帶寬為20 MHz的中頻信號則會向左以fs的頻率進(jìn)行周期延拓,并在最靠近零頻的負(fù)頻率軸上產(chǎn)生中心頻率為-20 MHz的一個副本。同時由于信號為實信號,將產(chǎn)生-20 MHz與20 MHz上的兩個副本,信號的頻譜如圖4所示。
產(chǎn)生16 384個采樣點,將這些數(shù)值歸一化并轉(zhuǎn)換為4位16進(jìn)制數(shù)值,導(dǎo)入DDC的Testbech中,可驗證DDC模塊的功能與正確性。如圖5所示為Modelsim中的仿真結(jié)果,DIN為輸入信號,DOUT_Q與DOUT_I為DDC模塊的輸出信號,分別為正交分量和同相分量,其輸出速率降低了75%。
將4 096個同相分量數(shù)據(jù)和4 096個正交分量數(shù)據(jù)導(dǎo)入Matlab中進(jìn)行頻譜分析。可觀察到輸入頻譜為矩形的信號,經(jīng)過DDC后其波形和頻譜如圖6所示。將輸入波形與頻譜對比,可以看到,其通帶平坦度與阻帶衰減良好,符合預(yù)期。
2.2 上變頻
將DDC的輸出信號輸入DUC模塊中,可對數(shù)字上變頻模塊進(jìn)行驗證,信號速率為22.5 MHz,帶寬20 MHz,頻譜如圖6所示。
將DDC輸出的4 096個數(shù)據(jù)歸一化并轉(zhuǎn)換為4位16進(jìn)制數(shù)值,導(dǎo)入DUC的Testbech中。圖7為DUC模塊對采樣率為22.5 MHz,帶寬20 MHz的基帶信號進(jìn)行數(shù)字上變頻的結(jié)果。
將16 384個數(shù)據(jù)導(dǎo)入Matlab中進(jìn)行頻譜分析??捎^察到輸入頻譜為矩形信號,經(jīng)過DUC后其波形和頻譜如圖8所示。
上變頻后數(shù)據(jù)速率上升到90 MHz,以70 MHz的采樣率進(jìn)行采樣,經(jīng)過周期延拓后,中心頻率在20 MHz上。將輸入波形與頻譜對比,數(shù)字上變頻設(shè)計的結(jié)果符合設(shè)計期望。
在資源使用上,芯片Spantan3s1600e可以滿足資源需求。其資源占用率如表1所示。
可以看到,Slice的數(shù)據(jù)在50%~70%之間。此時,可以最大限度地發(fā)揮芯片的性能,也為以后的平臺拓展留下空間。從上述數(shù)據(jù)可以看出,Xilinx芯片的資源利用率是可行的。
2 結(jié)束語
設(shè)計和實現(xiàn)了導(dǎo)航抗干擾接收系統(tǒng)中的上下變頻模塊。介紹了FPGA芯片的選擇以及集成開發(fā)環(huán)境。并依據(jù)導(dǎo)航抗干擾接收系統(tǒng)的各種參數(shù),對濾波器組仿真并建模,對DUC DDC中每個模塊的FPGA進(jìn)行設(shè)計及功能仿真,通過對整個系統(tǒng)的集成驗證,證明結(jié)果符合設(shè)計要求,基于FPGA的數(shù)字變頻系統(tǒng)應(yīng)用范圍廣泛、通用性高、修改參數(shù)方便、資源使用率較少,可用于通信、信號處理等相關(guān)領(lǐng)域移植。
評論