文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2015.12.011
中文引用格式: 周云,馮全源. 數(shù)字下變頻中抽取濾波器的設(shè)計(jì)及FPGA實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,,2015,41(12):45-47,,50.
英文引用格式: Zhou Yun,,F(xiàn)eng Quanyuan. Design and FPGA implementation of decimation filter in DDC[J].Application of Electronic Technique,2015,,41(12):45-47,,50.
0 引言
數(shù)字下變頻是軟件無(wú)線電接收機(jī)的關(guān)鍵模塊,高速數(shù)字信號(hào)進(jìn)行變頻,、降采樣,、濾波,將高速中頻信號(hào)變?yōu)榈退倩鶐盘?hào)[1-2],,便于后級(jí)處理,。其中,降采樣和濾波是下變頻的關(guān)鍵模塊,,由抽取濾波器來(lái)完成[3],。由于多級(jí)結(jié)構(gòu)可以大大降低濾波器的階數(shù)[4],允許每一級(jí)歸一化過(guò)渡帶寬比較寬[5],,抽取濾波器一般采用多級(jí)結(jié)構(gòu)實(shí)現(xiàn),,常用結(jié)構(gòu)如圖1所示,級(jí)聯(lián)積分梳狀(Cascaded integrator-com,,CIC)濾波器通常作為第一級(jí)抽取濾波器[1-6],。
為縮短關(guān)鍵路徑,,從而提高采樣速度,濾波器常采用并行處理及流水線技術(shù)[6],。CIC濾波器中有反饋回路,,加入流水線寄存器則會(huì)導(dǎo)致反饋回路不同步,從而無(wú)法采用流水線技術(shù),;FIR濾波器則可以采用并行處理及流水線技術(shù),。對(duì)于半帶濾波器(Half-band Filter, HBF)而言,采用分布式算法則可以很好地兼容并行處理與流水線技術(shù),,且無(wú)需速率受限的乘法器資源,。本設(shè)計(jì)對(duì)流水線式全并行分布式算法進(jìn)行改進(jìn)用以實(shí)現(xiàn)HBF,而并行處理提高采樣率是采用復(fù)制硬件的方法[7],,全并行結(jié)構(gòu)的HBF則是復(fù)制使用LUT,,在滿足處理速度的要求下,本文將HBF置于數(shù)據(jù)位寬最小的輸入級(jí)(如圖2),。
1 抽取濾波器整體設(shè)計(jì)及Simulink建模仿真
本文將64倍抽取的總抽取率分為3級(jí)實(shí)現(xiàn):2倍抽取的前置HBF,、16倍抽取的CIC抽取濾波器以及2倍抽取的FIR補(bǔ)償濾波器,如圖2所示,。各級(jí)指標(biāo)如表1所示,。
Simulink是MATLAB中的一種可視化仿真工具,可以對(duì)動(dòng)態(tài)系統(tǒng)進(jìn)行建模仿真及分析,,支持多速率系統(tǒng),,廣泛應(yīng)用于數(shù)字信號(hào)處理領(lǐng)域的建模仿真。本文的系統(tǒng)模型如圖3所示,。
頂層系統(tǒng)使用3路信號(hào)選擇器作為輸入接口,,輸入信號(hào)經(jīng)由矩形框內(nèi)所示子系統(tǒng)即抽取濾波器進(jìn)行降采樣及濾波。其中FIR補(bǔ)償濾波器的系數(shù)由本文2.3節(jié)得到,。設(shè)置輸入控制信號(hào)為“1”,,選擇采樣率為200 MHz的頻率分別為1 MHz、4 MHz,、10 MHz的混合正弦信號(hào)作為抽取濾波器的輸入信號(hào),,各級(jí)輸出信號(hào)的頻譜如圖4所示。
2 抽取濾波器的FPGA實(shí)現(xiàn)
2.1 前置半帶濾波器
HBF是近一半的系數(shù)為0的FIR濾波器,,在多速率系統(tǒng)中采用HBF可以大大縮小硬件規(guī)模,。本文結(jié)合表分割技術(shù)與并行處理的優(yōu)勢(shì)進(jìn)行改進(jìn),以達(dá)到第一級(jí)高速處理的目的,??紤]內(nèi)積公式:
考慮N=LP,L,、P均為正整數(shù),,則n=l·P+p,,l=0,1,,…,,L-1,p=0,,1,,…,P-1,,式(2)改寫(xiě)為:
本文35階高速HBF系數(shù)對(duì)稱,,且有近一半系數(shù)為零,選擇P=4,,將整個(gè)LUT表分解為2個(gè)4輸入和1個(gè)2輸入的子表,。改進(jìn)后的算法結(jié)構(gòu)如圖5所示,相比于文獻(xiàn)[8],,查表后的流水線式加法樹(shù)比移位累加器的實(shí)時(shí)性更高;并行及流水線處理處理可以有效提高濾波器的處理速度,,且表分割技術(shù)使得該并行結(jié)構(gòu)不必以過(guò)多的資源消耗為代價(jià),。
2.2 CIC抽取濾波器
CIC濾波器結(jié)構(gòu)簡(jiǎn)單,是高速抽取或插值系統(tǒng)中非常有效的單元[9],。單級(jí)CIC濾波器第一旁瓣抑制為13.46 dB,,阻帶衰減極不理想[10]。為達(dá)阻帶衰減的指標(biāo),,本文采用多級(jí)CIC濾波器級(jí)聯(lián)的結(jié)構(gòu)實(shí)現(xiàn),。N級(jí)CIC濾波器歸一化傳遞函數(shù)如下[11]:
其中R是抽取因子,M是梳狀部分中延遲量,,該設(shè)計(jì)取M為1,。由式(4)知N級(jí)R倍抽取的CIC的幅頻響應(yīng):
可計(jì)算出,R=5時(shí)即可滿足阻帶衰減的需求,。本文首先實(shí)現(xiàn)所有的積分器,,然后是16倍抽取,最后實(shí)現(xiàn)梳狀部分,。對(duì)于多級(jí)CIC濾波器而言,,可以剪除一些較低有效位而不影響系統(tǒng)的完整性[7]。本文采用逐級(jí)剪除的方法,,以減少位寬截?cái)嘁鸬牧炕肼?,并?jié)省資源占用。該設(shè)計(jì)中CIC濾波器輸入位寬19 bit,,輸出為20 bit,,內(nèi)部最大位寬為40 bit,。逐級(jí)剪除后,CIC濾波器各級(jí)位寬如表2所示,。CIC濾波器頻率響應(yīng)如圖6,。可見(jiàn),,通帶衰減是CIC濾波器的主要弊端之一,,故而需要補(bǔ)償濾波器進(jìn)行通帶補(bǔ)償。
2.3 CIC補(bǔ)償濾波器
補(bǔ)償濾波器通常處于較低速率的位置,,以減小硬件復(fù)雜度,。為避免頻譜混疊,本文的補(bǔ)償濾波器的通帶邊界頻率fc應(yīng)滿足:fc≤fs_cic/4R,,fs_cic是CIC濾波器的輸入采樣頻率,。
本文補(bǔ)償濾波器選取fc=1.56 MHz。因其頻率響應(yīng)是CIC濾波器頻響的倒數(shù)[12],,即:
基于式(6),,利用MATLAB中firceqrip函數(shù)計(jì)算出其浮點(diǎn)型系數(shù),再進(jìn)行量化,。經(jīng)反復(fù)試驗(yàn),,補(bǔ)償濾波器長(zhǎng)度為33即可。此時(shí),,補(bǔ)償后的濾波器通帶波紋小于0.01 dB,,補(bǔ)償濾波器及補(bǔ)償后的濾波器頻響如圖6??梢?jiàn),,補(bǔ)償濾波器設(shè)計(jì)較為合理。由于CIC濾波器輸出位寬20 bit,,位寬較大,,該濾波器不再使用圖3所示結(jié)構(gòu),選用IP核導(dǎo)入濾波器系數(shù),,選擇脈動(dòng)陣列乘累加結(jié)構(gòu)實(shí)現(xiàn),。
3 系統(tǒng)驗(yàn)證及分析
利用MATLAB生成采樣率為200 MHz,頻率分別為1 MHz,、18 MHz的混合正弦信號(hào)數(shù)據(jù)寫(xiě)入TXT文檔,,之后將數(shù)據(jù)讀入到FPGA寄存器,在時(shí)鐘激勵(lì)下,,模擬ADC的輸出,,作為系統(tǒng)的輸入。Modelsim仿真結(jié)果如圖7所示,。
由圖7(a)可知,,每隔63個(gè)輸入數(shù)據(jù)有一個(gè)輸出,,達(dá)到了64倍抽取的目的;且圖7(b)顯示波形較為平滑,,位寬截?cái)嘁鸬恼`差基本可以忽略,,表明本文中的逐級(jí)剪除的位寬階段方式是有效的。
4 結(jié)論
本文針對(duì)數(shù)字下變頻中降采樣率的要求,,設(shè)計(jì)了一種的HBF前置的抽取濾波器結(jié)構(gòu),。利用Simulink對(duì)系統(tǒng)進(jìn)行了建模仿真,并詳細(xì)說(shuō)明了FPGA實(shí)現(xiàn)各級(jí)濾波器的設(shè)計(jì)方法,,對(duì)整個(gè)系統(tǒng)進(jìn)行了Modelsim仿真驗(yàn)證,。結(jié)果表明,本文設(shè)計(jì)的抽取濾波器工作性能良好,,完全達(dá)到了實(shí)際需求指標(biāo),。且本文的設(shè)計(jì)方案具有較強(qiáng)的工程應(yīng)用價(jià)值,目前已用到中頻200 MHz的數(shù)字下變頻系統(tǒng)中,。
參考文獻(xiàn)
[1] XU P,,XIA W,HE Z S.A design of VB-DDC using DA-based systolic FIR filter[J].Applied Mechanics and Materials,,2012,,130:3950-3953.
[2] 趙良羽.可變帶寬的多級(jí)濾波器數(shù)字下變頻設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2014(3):32-34.
[3] 王亞磊,,張浩,楊亞光,,等.一種基于FPGA的抽取濾波器的實(shí)現(xiàn)與優(yōu)化[J].微電子學(xué)與計(jì)算機(jī),,2013(9):30.
[4] 吳笑峰,劉紅俠,,李迪,,等.高精度Σ-?駐 ADC中的數(shù)字抽取濾波器設(shè)計(jì)[J].中南大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,,41(3):1038.
[5] 徐以濤,,王金龍.軟件無(wú)線電數(shù)字中頻處理的優(yōu)化設(shè)計(jì)[J].信號(hào)處理,2002(4):299-302.
[6] 張立立,,楊華,,黃錦元.基于FPGA技術(shù)的數(shù)字中頻系統(tǒng)的設(shè)計(jì)[J].電子器件,2015(1):126-129.
[7] PARHI K K.VLSI digital signal processing systems: design and implementation[M].John Wiley & Sons,,2007:47-61.
[8] 朱效效,,蔡俊,陸偉.基于優(yōu)化DA算法濾波器的設(shè)計(jì)及其FPGA實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,,2015(2):59-60,,64.
[9] Meyer-Baese U.Multirate Signal Processing[M].Digital Signal Processing with Field Programmable Gate Arrays. Springer Berlin Heidelberg,,2014:305-416.
[10] 劉彬彬,林偉.基于Matlab和FPGA的CIC濾波器的設(shè)計(jì)[J].電子器件,,2010(2):231-234.
[11] DOLECEK G J,,LADDOMADA M.An improved class of multiplierless decimation filters: Analysis and design[J].Digital Signal Processing,2013,,23(5):1773-1782.
[12] Altera Corporation,,Understanding CIC compensation filters,Application Note 455,,Ver.1.0,,April 2007.