肖瑞川,劉艷萍,彭成功
(河北工業(yè)大學(xué) 信息工程學(xué)院,天津 300401)
在軟件無線電中,數(shù)字下變頻器位于信號(hào)處理鏈的前端,靠近A/D,由于A/D之后的數(shù)據(jù)速率過高,無法滿足實(shí)時(shí)處理的需要,所以需要數(shù)字下變頻器接收高速的中頻數(shù)字采樣信號(hào),將所需的頻帶下變頻到基帶。
數(shù)字下變頻(DDC)中數(shù)字濾波器的主要作用是抽取、低通濾波,一般由FIR濾波器實(shí)現(xiàn)。但FIR濾波器需要大量的乘法器,且一般DDC中的采樣速率很高,因此FIR濾波器需要工作在很高的頻率,使用資源多、功耗大。由于級(jí)聯(lián)積分梳狀濾波器(CIC)結(jié)構(gòu)只用到加法器和延遲器,沒有乘法器,很適合用作為第一級(jí)濾波器,實(shí)現(xiàn)抽取、低通濾波;第二級(jí)則采用一般的FIR或者FIR實(shí)現(xiàn)的特殊濾波器(如半帶濾波器),此時(shí)它們工作在較低的頻率下,且濾波器的參數(shù)得到了優(yōu)化,因此更容易以較低的階數(shù)實(shí)現(xiàn),節(jié)省資源,降低功耗[1]。
單級(jí)CIC濾波器的頻率響應(yīng)為:

平為:

它與主瓣電平的差值為

單極CIC濾波器的旁瓣電平是比較大的,只比主瓣低13.46 dB,只也就是意味著阻帶衰減很差,一般難以滿足實(shí)用要求,為了降低旁瓣電平,我們可以采用多級(jí)CIC濾波器級(jí)聯(lián)的方法來解決,N級(jí)CIC濾波器旁瓣抑制為:

CIC抽取濾波器包括兩個(gè)基本組成部分:積分部分和梳狀部分,單級(jí)CIC抽取濾波器結(jié)構(gòu)如圖1所示。

圖1 單級(jí)CIC抽取濾波器結(jié)構(gòu)Fig.1 Single stage CIC decimation filter structure
單級(jí)CIC抽取濾波器傳遞函數(shù)為:


可見5級(jí)級(jí)聯(lián)CIC濾波器具有67 dB左右的阻帶衰減,基本能滿足實(shí)際要求。綜合以上分析可知,CIC濾波器的性能由參數(shù)D,M,N共同決定,級(jí)數(shù)N可以控制阻帶衰減和旁瓣抑制,減小通帶混疊。但N值得增加受通帶內(nèi)容差的限制,所以N值不可以太大,一般不超過5級(jí);延遲因子D的取值決定了抽取后幅頻特性曲線的零點(diǎn)位置,加大D值可有效減小混疊,但同時(shí)也會(huì)增加通帶內(nèi)容差;M值決定了CIC濾波器的主瓣寬度和旁瓣寬度以及抽取后的數(shù)據(jù)速率。因此,必須根據(jù)工程對(duì)數(shù)據(jù)和時(shí)鐘速率,通帶寬度,通帶和阻帶的衰減等指標(biāo)要求全面考慮這幾個(gè)參數(shù)的選取。
整個(gè)抽取濾波系統(tǒng)的第一級(jí)用CIC抽取濾波器實(shí)現(xiàn),完成16倍抽取;后面級(jí)聯(lián)一個(gè)半帶濾波器和一個(gè)基二抽取器,最后加上一個(gè)簡(jiǎn)單的FIR低通濾波器即可。在設(shè)計(jì)中由于CIC抽取濾波器通帶衰減不符合要求,所以需要級(jí)聯(lián)一個(gè)ISOP濾波器進(jìn)行補(bǔ)償。整個(gè)抽取濾波系統(tǒng)結(jié)構(gòu)如圖2。

圖2 數(shù)字下變頻抽取濾波系統(tǒng)結(jié)構(gòu)Fig.2 Structure diagram of the DDC decimation filter system
信號(hào)指標(biāo)要求為帶內(nèi)波動(dòng)小于0.6 dB,帶外抑制大于60 dB;初步擬定CIC濾波器的通帶紋波為0.5 dB,半帶濾波器的通帶紋波為0.1 dB,它們的阻帶衰減均為60 dB。
CIC濾波器的參數(shù)[3-4]為:通帶截至頻率fc=B=60 kHz,抽取倍數(shù)D1=16,輸入采樣率fs=6.144 MHz,可得到帶寬比例因子b=B/(fs/D1)=0.156 25,則單級(jí)CIC濾波器無混疊信號(hào)帶寬內(nèi)的阻帶衰減A≈-201gb≈16.12 dB,不滿足要求,所以必須進(jìn)行級(jí)聯(lián),而當(dāng)進(jìn)行5級(jí)級(jí)聯(lián)時(shí),即當(dāng)N=5時(shí),A=80.6 dB,阻帶衰減大于60 dB,滿足阻帶衰減的要求。但是單級(jí)CIC濾波器通帶內(nèi)容差為dB,采用多級(jí)級(jí)聯(lián),即N=5時(shí),δ=1.7585dB,由此可見,帶內(nèi)紋波大于設(shè)計(jì)要求0.5,不滿足設(shè)計(jì)要求,所以必須對(duì)其進(jìn)行補(bǔ)償,在此選用內(nèi)插二階多項(xiàng)式ISOP濾波器與之級(jí)聯(lián)進(jìn)行補(bǔ)償。
ISOP濾波器的系統(tǒng)傳遞函數(shù)為P(x)=(1+cz-1+z-2)/|c+2|,其中I是正整數(shù),c是實(shí)數(shù)。它是二階多項(xiàng)式S(z)=(1+cz-1+z-2)/|c+2的插值后的變化形式。系統(tǒng)傳輸函數(shù)p(ejω)的頻響為|p(ejω)|=|c+2cosIeω|/|c+2|。由S(z)頻響的性質(zhì)可知,P(z)得頻響在ω∈[0,π/I]區(qū)間是單調(diào)遞增,并且是2π/I以為周期的,其中I是插值率??梢?,在的區(qū)間上,P(z)是能夠補(bǔ)償CIC抽取濾波器帶內(nèi)的單調(diào)衰減的。為了補(bǔ)償級(jí)聯(lián)CIC抽取濾波器帶內(nèi)的衰減,在區(qū)間ω∈[0,π/I]單調(diào)遞增的寬度應(yīng)該與輸入2πf0保持一致。因此可以得到I=kM。
如級(jí)聯(lián)CIC濾波器的各參數(shù)已確定,ISOP濾波器的參數(shù)則可用傳統(tǒng)的濾波器設(shè)計(jì)方法來設(shè)計(jì)。對(duì)每一個(gè)滿足1≤k≤的k值,按照下列方法求出c:1)給定最小的;2)將它帶入|H(ejω)P(ejω)-1|<δ,1≤ω≤2πfc,其中H(ejω)是 給定的級(jí)聯(lián)CIC抽取濾波器傳輸函數(shù),P(ejω)是待求得ISOP濾波器傳輸函數(shù);3)求出c值。由此,對(duì)應(yīng)每個(gè)k按照以上步驟可以得到使最小的(k,c)對(duì),也就得到了優(yōu)化的ISOP濾波器。因?yàn)镮SOP濾波只需要一次乘法和兩次加法運(yùn)算,可見運(yùn)算量是很小的,且對(duì)減小通帶衰減非常有效,因此,它是補(bǔ)償濾波器設(shè)計(jì)很好的選擇。
在文中的設(shè)計(jì)中信號(hào)的歸一化通帶寬度Fc=60/6144=0.009 8,而抽取因子M=16,則由可以得到k=1,2,3。再根據(jù)以上步驟進(jìn)行優(yōu)化設(shè)計(jì),得到(k,c)=(1,-6.8)。通過分析CIC濾波器和ISOP補(bǔ)償濾波器的頻譜可以看出CIC濾波器的通帶紋波大于系統(tǒng)要求的0.5 dB,大致為1.75 dB,補(bǔ)償后的帶內(nèi)紋波得到了改善,約為0.27 dB,滿足了設(shè)計(jì)的要求,但是補(bǔ)償是以減小阻帶衰減為代價(jià)的。

圖3 CIC濾波器和ISOP濾波器幅頻特性曲線Fig.3 CIC filter and ISOP filters amplitude-frequency characteristic curve

圖4 CIC濾波器級(jí)聯(lián)ISOP濾波器帶內(nèi)紋波圖Fig.4 CIC filter and ISOP filters amplitude-frequency characteristic curve

圖5 Modelsim仿真圖Fig.5 Simulation diagram
文中采用VHDL語言描述,在quartusII11.0開發(fā)環(huán)境下進(jìn)行仿真綜合,在modelsim軟件下進(jìn)行仿真。結(jié)構(gòu)中包括5個(gè)積分器,一個(gè)16倍的抽取器,最后是5個(gè)梳狀濾波器。仿真結(jié)果如圖所示。仿真過程通過Matlab產(chǎn)生30 kHz的正弦信號(hào),疊加上1.2 MHz的正弦信號(hào)作為噪聲。通過modelsim仿真結(jié)果,可以發(fā)現(xiàn)完成了對(duì)信號(hào)16倍的抽取。利用Matlab對(duì)輸入輸出信號(hào)頻譜信號(hào)進(jìn)行分析,可以發(fā)現(xiàn)濾波器很好的濾除了高頻分量。輸入輸出信號(hào)頻譜如下圖6,圖7所示,圖6是輸入信號(hào)的頻譜,圖7是輸出信號(hào)頻譜。

圖6 輸入信號(hào)頻譜圖Fig.6 Input signal frequency spectrum diagram

圖7 輸出信號(hào)頻譜圖Fig.7 Output signal spectrum diagram
文中以多速率數(shù)字信號(hào)處理理論為基礎(chǔ),分析了CIC抽取濾波器的原理和設(shè)計(jì)方法,并介紹了通過ISOP濾波器對(duì)CIC濾波器進(jìn)行通帶補(bǔ)償。通過對(duì)指標(biāo)參數(shù)的分析,以Matlab為工具設(shè)計(jì)了符合系統(tǒng)要求的CIC濾波器,并通過仿真證明了設(shè)計(jì)方案是可行的。最后通過FPGA[7-8]對(duì)該設(shè)計(jì)方案進(jìn)行了仿真綜合并利用Matlab進(jìn)行了頻譜分析,可以發(fā)現(xiàn)該設(shè)計(jì)很好的完成了信號(hào)的抽取和濾波。
[1]楊小牛,樓才義,徐建良.軟件無線電技術(shù)與應(yīng)用[M].北京:北京理工大學(xué)出版社,2010.
[2]李翔,萬棟義.數(shù)字下變頻中抽取技術(shù)研究[J].電子科技大學(xué)學(xué)報(bào),2006,35(4):471-473.LI Xiang,WAN Dong-yi.Digital down-conversion extraction technology research[J].Journal of university of electronic science and technology,2006,35(4):471-473.
[3]劉彬彬,林偉.基于Matlab和FPGA的CIC濾波器的設(shè)計(jì)[J].電子器件,2010,33(2):231-234.LIU Bin-bin,LIN Wei.Design and implement of CIC filter with Matlab and FPGA[J].Chinese Journal of Electr on Devices,2010,33(2):231-234.
[4]姜宇柏,游思晴.軟件無線電原理與工程應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2007.
[5]UweMeyer-Baese.數(shù)字信號(hào)處理的FPGA實(shí)現(xiàn)[M].劉凌,譯.北京:清華大學(xué)出版社,2006.
[6]徐尚中,何東健,萬海軍.基于FPGA的DDC中抽取濾波系統(tǒng)的設(shè)計(jì)[J].微計(jì)算機(jī)信息,2008,24(9-2):132-134.XU Shang-zhong,HE Dong-jian,WAN Hai-jun.Based on the FPGA DDC extraction of filtering system design[J].Micro computer information,2008,24(9-2),132-134.
[7]王維松,王金生,章偉,等.十字路口智能交通燈控制系統(tǒng)的FPGA實(shí)現(xiàn)[J].電子科技,2012(9):37-39.WANG Wei-song,WANG Jin-sheng,ZHANG Wei,et al.FPGA implementation of the intelligent traffic light control system for crossroads[J].Electronic Science and Technology,2012(9):37-39.
[8]何光明,黃云.多相濾波的數(shù)字相干檢波原理及FPGA實(shí)現(xiàn)[J].電子科技,2010(8):58-61.HE Guang-ming,HUANG Yun.Principles of polyphase filtering for digital quadrature detection and its realization on FPGA[J].Electronic Science and Technology,2010(8):58-61.