文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2014)03-0032-03
在軟件無(wú)線電的接收機(jī)設(shè)計(jì)中,數(shù)字下變頻(DDC)技術(shù)是其核心技術(shù)之一[1-2]。數(shù)字中頻軟件無(wú)線電接收機(jī)由模擬預(yù)處理、ADC、DDC組成。它的主要功能是將ADC數(shù)字化后的高速數(shù)字中頻信號(hào)進(jìn)行低通濾波和抽取降速,使之成為低速的基帶信號(hào)。對(duì)數(shù)字信號(hào)完成處理之后,將基帶信號(hào)送給DSP器件完成FFT運(yùn)算、解調(diào)、解碼等功能。
在以往的數(shù)字下變頻結(jié)構(gòu)設(shè)計(jì)中,要么是通過(guò)增加抽取濾波器的級(jí)數(shù)來(lái)提高數(shù)字下變頻器的強(qiáng)壯性[3],要么是通過(guò)改變FIR濾波器的結(jié)構(gòu)以降低運(yùn)算復(fù)雜度,進(jìn)而實(shí)現(xiàn)高效的數(shù)字下變頻器結(jié)構(gòu)[4],很少在考慮多級(jí)濾波器設(shè)計(jì)的同時(shí),引入多帶寬設(shè)計(jì)的思路來(lái)擴(kuò)展數(shù)字下變頻器的適用范圍。本設(shè)計(jì)基于Xilinx芯片的開發(fā)平臺(tái),實(shí)現(xiàn)了一種可變帶寬的多級(jí)濾波器數(shù)字下變頻結(jié)構(gòu),該結(jié)構(gòu)已經(jīng)在許多開發(fā)平臺(tái)中使用,并在部分項(xiàng)目中得到實(shí)際應(yīng)用。
1 DDC的結(jié)構(gòu)原理
數(shù)字下變頻器的基本工作原理:將AD信號(hào)與數(shù)控振蕩器(NCO)產(chǎn)生的兩路正交本地載波信號(hào)相乘,然后通過(guò)濾波和抽取降低采樣速率,最后再由低通濾波器濾除其中的高頻分量,最終得到下變頻后的基帶I/Q信號(hào)[5]。一般前兩級(jí)濾波和抽取采用CIC濾波,最后一級(jí)利用FIR濾波器濾除高頻分量。典型的DDC基本結(jié)構(gòu)如圖1所示[6],輸入的模擬中頻信號(hào)由ADC采樣得到數(shù)字中頻信號(hào),然后分別與NCO產(chǎn)生的兩路正交本振信號(hào)相乘,將數(shù)字中頻搬移至基帶。對(duì)于混頻后的信號(hào),采樣速率很高,通過(guò)CIC的抽取和濾波達(dá)到降低采樣速率和濾除雜波的功能,最后通過(guò)一個(gè)低通濾波器(LPF)過(guò)濾高頻分量,得到I/Q信號(hào)并輸出。下面分別對(duì)結(jié)構(gòu)框圖中各模塊的設(shè)計(jì)加以說(shuō)明。
1.1 NCO的設(shè)計(jì)
數(shù)控振蕩器NCO(Numerically Controlled Oscillator)一般可以通過(guò)查找表的方法產(chǎn)生兩路正余弦波,或者通過(guò)坐標(biāo)旋轉(zhuǎn)數(shù)字式計(jì)算機(jī)(CORDIC)產(chǎn)生。NCO產(chǎn)生的正交本振信號(hào)輸入到數(shù)字混頻器,完成與AD采樣之后的數(shù)字信號(hào)混頻的功能。本文中采用查找表的方式設(shè)計(jì)出一款相位精度為32 bit、輸出精度為16 bit的NCO。圖2所示為基于查找表結(jié)構(gòu)下的NCO設(shè)計(jì)原理圖。
2 仿真驗(yàn)證及硬件實(shí)現(xiàn)
如前文所述,設(shè)計(jì)出完整的數(shù)字下變頻結(jié)構(gòu),包括對(duì)AD信號(hào)的混頻、抽取和濾波,最后再通過(guò)低通濾波器實(shí)現(xiàn)IQ信號(hào)的輸出。下面首先通過(guò)Matlab仿真軟件中的FDATool工具對(duì)具體的FIR濾波器系數(shù)進(jìn)行設(shè)計(jì),然后將整個(gè)數(shù)字下變頻結(jié)構(gòu)在Xilinx的FPGA芯片中加以實(shí)現(xiàn)。
2.1 Matlab仿真驗(yàn)證
Matlab的FDATool工具可以根據(jù)用戶需要設(shè)計(jì)出滿足不同情況需求的濾波器系數(shù)[7]。在本設(shè)計(jì)結(jié)構(gòu)中,需要實(shí)現(xiàn)多種帶寬,因此對(duì)FIR系數(shù)進(jìn)行設(shè)計(jì)時(shí)要考慮到將通帶截止頻率設(shè)計(jì)到對(duì)應(yīng)帶寬的范圍之內(nèi),同時(shí)阻帶截止頻率也要設(shè)計(jì)合理,這樣才能保證阻帶衰減可以接受。表1給出了3種帶寬下的兩級(jí)CIC濾波器與FIR濾波器抽取倍數(shù)的對(duì)應(yīng)關(guān)系。
如圖5所示為121階、帶寬為1 MHz的Blackman窗函數(shù)的FIR濾波器幅頻特性圖。通過(guò)歸一化將系數(shù)轉(zhuǎn)換為16 bit的整數(shù)形式。
進(jìn)一步,可以通過(guò)FDATool繼續(xù)設(shè)置另外兩種帶寬的FIR濾波器系數(shù)組,然后通過(guò)Xilinx的IP core generator產(chǎn)生的FIR IP核把系數(shù)組加載進(jìn)去,最終實(shí)現(xiàn)完整的濾波器結(jié)構(gòu)。
2.2 硬件實(shí)現(xiàn)
本設(shè)計(jì)中,通過(guò)Xilinx的IP核產(chǎn)生出NCO、CIC、FIR模塊。AD信號(hào)的采樣時(shí)鐘為102.4 MHz,NCO的輸出本振為32.4 MHz,兩級(jí)CIC分別設(shè)置為3級(jí)和5級(jí),F(xiàn)IR濾波器需要將Matlab仿真的濾波器系數(shù)組加入其中。然后通過(guò)Verilog硬件編程語(yǔ)言將各個(gè)模塊組合到一起,實(shí)現(xiàn)完整的數(shù)字下變頻設(shè)計(jì)。
3 設(shè)計(jì)結(jié)果
綜上所述,通過(guò)Matlab仿真驗(yàn)證及Xilinx的FPGA硬件實(shí)現(xiàn),成功地設(shè)計(jì)出一種適用于多帶寬情況的數(shù)字下變頻結(jié)構(gòu)。表2給出了Xilinx的FPGA(xc5vsx95t-1)部分資源使用說(shuō)明。
圖6所示為ModelSim仿真下的DDC各級(jí)輸出仿真波形圖。其中,輸入的AD為34 MHz正弦波信號(hào),輸出結(jié)果為4倍抽取后得到的在1 MHz帶寬下的IQ信號(hào)波形圖。
本文實(shí)現(xiàn)了一種可變帶寬的多級(jí)濾波器設(shè)計(jì),帶寬范圍覆蓋了100 kHz、600 kHz、1 MHz 3檔。這種結(jié)構(gòu)僅限于對(duì)帶寬要求不高的信號(hào)分析。考慮到實(shí)際的信號(hào)處理環(huán)境,對(duì)于調(diào)制樣式識(shí)別中的AM/FM等窄帶信號(hào)以及衛(wèi)星信號(hào)等帶寬在20 MHz以上的寬帶信號(hào)的分析也十分重要。因此,還可以通過(guò)更換資源更豐富的芯片,設(shè)計(jì)包括寬帶在內(nèi)的多級(jí)濾波器數(shù)字下變頻器,以滿足多路帶寬的需求。另外,對(duì)于DDC處理后的IQ信號(hào),還可以在FPGA芯片中引入FFT結(jié)構(gòu),將時(shí)域信號(hào)轉(zhuǎn)換為頻域信號(hào),達(dá)到減少DSP工作量的目的,這些應(yīng)用都可以作為后續(xù)工作的研究?jī)?nèi)容。
參考文獻(xiàn)
[1] 許若圣,周依林.基于軟件無(wú)線電的數(shù)字下變頻器設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2006,32(4):123-126.
[2] 楊小牛,樓才義,徐建良.軟件無(wú)線電原理與應(yīng)用[M].北京:電子工業(yè)出版社,2001.
[3] 申?yáng)|,羅進(jìn)文.數(shù)字下變頻器中多級(jí)抽取濾波器的設(shè)計(jì)與實(shí)現(xiàn)[J].蘭州交通大學(xué)學(xué)報(bào),2004,23(4):71-73.
[4] 高志成,肖先賜.寬帶數(shù)字下變頻的一種高效實(shí)現(xiàn)結(jié)構(gòu)[J]. 電子與信息學(xué)報(bào),2001,23(3):255-260.
[5] 宗孔德.多抽樣率信號(hào)處理[M].北京:清華大學(xué)出版社,1996.
[6] 張玉良,吳偉陵,田寶玉.寬帶數(shù)字下變頻器的一種新的實(shí)現(xiàn)結(jié)構(gòu)[J].電路與系統(tǒng)學(xué)報(bào),2003,8(4):95-99.
[7] 薛年喜.MATLAB在數(shù)字信號(hào)處理中的應(yīng)用[M].北京:清華大學(xué)出版社,2003.