張 軍,黃 中,邢光輝,任展鵬
(西安黃河機電有限公司 設計研究所,陜西 西安 710043)
基于國產FPGA的數字下變頻仿真設計
張軍,黃中,邢光輝,任展鵬
(西安黃河機電有限公司 設計研究所,陜西西安710043)
文章首先講述了數字下變頻的核心原理,然后利用矩陣實驗室(Matrix Laboratory,MATLAB)對數字下變頻理論進行了規(guī)范的仿真,闡述了一款仿XILINX公司的國產FPGA芯片實現數字下變頻的設計流程,最后利用verilog語言編程實現數字下變頻功能,并進行了驗證。
數字下變頻;FPGA;數控振蕩器(NCO)
數字下變頻(Digital Down Converfer,DDC)在軟件無線電中起著十分關鍵的作用,它是前端A/D采樣轉換器與后段現場可編程門陣列(Field-Programmable Gate Array,FPGA)/數字信號處理(Digital Signal Processing,DSP)處理器之間的橋梁,其性能將直接影響到整個無線電系統(tǒng)的質量。利用FPGA或DSP來實現數字下變頻的設計,對比可以發(fā)現,由于FPGA靈活度高、開發(fā)周期短、高度的集成性以及在線重構等卓越特性,FPGA完成數字下變頻技術已經被廣泛應用。
為了降低基帶信號吞吐速率的運算壓力,制導雷達系統(tǒng)一般會將中頻信號下變頻到基帶信號,而不是直接處理。本文利用MATLAB軟件和FPGA芯片實現數字下變頻功能。
設一個頻率帶限信號x(t),其頻帶限制在(fL,fH)內,如果其采樣速率fs滿足下式:
fL是信號下限頻率,fH是信號上限頻率,fs是采樣速率(本文頻率單位:Hz)。式(1)中,n取滿足fs≥2(fH-fL)的最大正整數(0,1,2,),則用fs進行等間隔采樣所得到的信號采樣值x(nTS)能準確地確定原信號x(t)。式(1)中用帶通信號的中心頻率f0和頻帶寬度B也可用式(2)表示:
必須指出以上理論的適用范圍:只允許在其中一個頻帶上存在信號,而不允許在不同的頻帶上同時存在多種信號,否則將會引起多信號混疊。
一般的數字下變頻功能結構如圖1所示,其中包括數控振蕩器(Numerically Controlled Oscillator,NCO)、混頻器模塊以及抽取和濾波模塊。圖1架構中,NCO產生正交的正余弦本振信號輸入到混頻器,與A/D高速采樣得到的數字中頻信號進行乘積,完成混頻后的信號輸入到濾波器以濾除鏡頻分量和其他干擾分量,最后依據后端速率需求進行抽取。收取濾波器可以采用濾波器(Finite Impulse Response,FIR)、半帶(Half Belt,HB)、積分梳狀濾波器(Cascade Integrator Comb,CIC)組合來實現。
圖1 DDC結構原理
數字下變頻MATLAB仿真流程有產生激勵中頻信號、數字正交分解、濾波和抽取等模塊。數字下變頻就是將感興趣信號分離和提取出來,并將采樣速率降到較低速率,送到基帶信號處理單元。
本仿真案例中頻模擬信號帶寬5MHz的線性調頻信號,中心頻率50 MHz,中采樣頻率40MHz。具體仿真算法是,中頻模擬信號被管理距離(Administrative Distance,AD)進行虛擬高速采樣,數字化后的中頻信號與NCO(直接產生數字余弦信號和正弦信號)產生的本振信號進行混頻?;祛l后則完成了頻譜搬移功能,由于鏡頻分量干擾,通過低通濾波和抽取得到I(n)和Q(n)基帶信號。中頻信號如圖2所示,濾波后基帶信號如圖3所示。圖3驗證了通過MATLAB仿真將其搬移到基帶的正確性。
圖2 量化后的中頻信號
圖3 濾波后基帶I,Q信號
本設計選用國產某芯片(PintoPin仿Xilinx公司QPro Virtex_II XQR2V3000芯片)進行開發(fā),結合MATLAB預先對濾波器指標進行仿真,然后再Xilinx公司的集成開發(fā)環(huán)境ISE 10.1中進行verilog語言編程,并結合Mentor子公司Model Tech出品的Modelsim進行仿真和驗證。
本案例中頻模擬信號帶寬5MHz,根據DDC原理可知,混頻系數根據實際情況,中采樣頻率(fs)、中心頻率(f0)依據以下公式計算得出:根據本設計接收機的信號參數,中頻頻率為50MHz,采樣頻率為40MHz,即:
對原始信號才乘50Mhz的純凈信號cos(50MHz)、sin (50MHz)信號,I路混頻系數:
Q路混頻系數:
由混頻系數可知,Q路的奇數部分都為0,只余下偶數部分,I 路的偶數部分都為0,只余下奇數部分,這時可以將抽取提前,相當于將輸入數據的偶數部分送給 Q 路,將輸入數據的奇數部分送給I路,原來Q路的低通濾波器只剩下偶數部分,I路的低通濾波器只剩下奇數部分。鑒于上述分析,在FPGA實現正交分解時可以不使用直接數字式頻率合成器(Direct Digital Synthesizer,DDS)專用IP核,我們先2倍抽取,再利用乘法器1,-1,循環(huán)項乘,以便節(jié)約大量硬件資源。正交分解之后通過半帶濾波器,最后依據后端數字信號處理單元需求進行數據抽取操作。依據上述分析,基于FPGA的數字下變頻流程圖如圖4所示。
圖4 基于FPGA的數字下變頻流程
混頻后的零中頻信號帶寬為5M,設計半帶HB濾波器系數并將其量化成18位,利用ISE套件的IPCORE把生成好的系數存入coe文件中。FIR濾波器系數理論上越高越好,但考慮到性價比,綜合FPGA資源有限,設計采用121階FIR。本案例利用verilog語言設計FPGA程序,首先產生激勵中頻信號(由MATLAB產生),如圖5 din圖形所示。經過FIFO奇偶抽取和乘法器循環(huán)處理,如圖5 odd_out_buff和even_out_ buff圖形所示,實現了正交分解功能。IQ兩路數據再經過半帶濾波器,濾除鏡像分量保留基帶信號,如圖5 idata和qdata圖形所示,經過與MATLAB數據結果對比,標明FPGA程序產生了正確的基帶信號數據。由于后端數字信號處理單元數據速率的需求,對基帶信號進行兩倍抽取。
最后在國產FPGA上驗證了結果,利用安捷倫的8267D信號源,產生了一個帶寬5MHz的中頻(50MHz)信號輸入給AD芯片,AD將采樣信號直接送給FPGA進行數字下變頻處理,產生了I、Q正交兩路5MHz的基帶信號。
圖5 基于FPGA的數字下變頻Modelsim仿真結果
軟件無線電是數字化新技術的基礎,更是一種高穩(wěn)定性的產品設計思路,隨著新一代超高速采樣AD芯片的惠及大眾,以及高端FPGA價格的回歸,軟件無線電在新一代無線系統(tǒng)中將得到廣泛的應用。本論文首先介紹了軟件無線電的基礎理論,即帶通采樣定理以及它的適用范圍。然后利用MATLAB對數字下變頻理論進行了規(guī)范的仿真,最后利用verilog語言編程實現數字下變頻(DDC)功能。由于FPGA實現速度快,而且設計和修改靈活性強,可滿足大部分通信系統(tǒng)中對數字下變頻性能的要求,因此具備廣泛推廣的實用價值。
[1]樓才義,徐建良,楊小牛.軟件無線電原理與應用(2版)[M].北京:電子工業(yè)出版社,2014.
[2]徐江山,陳振華,金鑫,等. 一種X波段船舶導航雷達射頻接收機設計[J]. 現代雷達,2016(4):68-72.
[3]李飛,馮曉東,李華會.可變帶寬數字下變頻的設計與FPGA實現[J].電子技術與應用,2016(4):35-38.
Simulation design of digital down conversion based on domestic FPGA
Zhang Jun, Huang Zhong, Xing Guanghui, Ren Zhanpeng
(Design Institute of the Yellow River Xi'an Mechanical and Electrical Co., Ltd.,Xi'an 710043, China)
This paper describes the core principle of digital down conversion,then makes use ofthe digital down conversion theory to realize the standard simulation, expounds the design process of the FPGA chip based on a copy of XILINX company to realize digital down conversion, fnally uses verilog language programming to realize the function of digital down conversion,and carries a verifcation of it.
digital down conversion; FPGA; numerically controlled oscillator(NCO)
張軍(1988— ),男,陜西武功,碩士,助理工程師;研究方向:雷達信號處理算法,數字中頻收發(fā)機和嵌入式軟件測試。