《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 帶殘余補(bǔ)償?shù)耐馔茮_激響應(yīng)低成本FIR濾波器實(shí)現(xiàn)
帶殘余補(bǔ)償?shù)耐馔茮_激響應(yīng)低成本FIR濾波器實(shí)現(xiàn)
2015年電子技術(shù)應(yīng)用第6期
葉 豐1,徐 紅2,黃朝耿3
1.杭州國(guó)芯科技股份有限公司,浙江 杭州310012; 2.浙江工業(yè)大學(xué) 信息工程學(xué)院,浙江 杭州310023; 3.浙江財(cái)經(jīng)大學(xué) 信息學(xué)院,浙江 杭州310018
摘要: 基于帶殘余補(bǔ)償?shù)耐馔茮_激響應(yīng)設(shè)計(jì)技術(shù),利用硬件描述語(yǔ)言編程在集成電路上對(duì)FIR數(shù)字濾波器進(jìn)行了綜合。該技術(shù)利用沖激響應(yīng)的準(zhǔn)周期特性近似濾波器系數(shù),有效降低了FIR濾波器常系數(shù)乘法的復(fù)雜度,并通過(guò)殘余補(bǔ)償降低濾波器階數(shù),同時(shí)應(yīng)用子項(xiàng)共享技術(shù)進(jìn)一步減少加法器個(gè)數(shù)。綜合結(jié)果表明所提方法可以有效節(jié)省高階FIR濾波器硬件資源的消耗,適用于低成本數(shù)字系統(tǒng)設(shè)計(jì)。
中圖分類號(hào): TN713
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2015)06-0042-03
Implementation of low-cost FIR digital filters based on extrapolated impulse response with residual compensation
Ye Feng1,Xu Hong2,Huang Chaogeng3
1.Hangzhou Nationalchip Science&Technology Co.Ltd.,Hangzhou 310012,China; 2.College of Information Engineering,Zhejiang University of Technology,Hangzhou 310023,China; 3.School of Information,Zhejiang University of Finance & Economics,Hangzhou 310018,China
Abstract: Filter impulse responses are quasi-periodic and filter coefficients can be approximated by extrapolation techniques. In this paper, a hardware technique for implementing FIR filters based on extrapolated impulse response is proposed to achieve low hardware cost on VLSI. Residual compensation can perfectly restore filter coefficients and the subexpression space technology can effectively reduce the number of adders in multiplierless FIR filters. The results of hardware synthesis show that the proposed method can efficiently save hardware resources consumption applicable to low-cost design of digital systems.
Key words : FIR digital filter;extrapolated impulse response;subexpression sharing;ASIC;FPGA

  0 引言

    有限沖激響應(yīng)(FIR)數(shù)字濾波器系數(shù)敏感度低,能保證絕對(duì)穩(wěn)定和線性相位,因此在集成電路設(shè)計(jì)中應(yīng)用廣泛。當(dāng)把設(shè)計(jì)好的數(shù)字濾波器由專用集成電路(Application Specific Integrated Circuit,ASIC)或可編程集成電路(Field Programmable Gate Array,FPGA)實(shí)現(xiàn)時(shí),輸入與常系數(shù)之間的乘法可以通過(guò)加法器和移位操作來(lái)實(shí)現(xiàn)[1]。外推沖激響應(yīng)FIR濾波器利用沖激響應(yīng)的準(zhǔn)周期特性來(lái)近似濾波器系數(shù),并通過(guò)殘余補(bǔ)償完美重建原系數(shù),進(jìn)一步與子項(xiàng)空間技術(shù)結(jié)合,有效減少濾波器實(shí)現(xiàn)時(shí)加法器的個(gè)數(shù),從而降低復(fù)雜度,節(jié)省硬件實(shí)現(xiàn)成本。

1 帶殘余補(bǔ)償?shù)耐馔茮_激響應(yīng)FIR濾波器

    一個(gè)典型線性相位FIR濾波器的沖激響應(yīng)具有準(zhǔn)周期(quasi-periodic)特性,如圖1所示。其主要特點(diǎn)表現(xiàn)為:能量主要集中在主瓣(center lobe),而旁瓣(side lobes)的能量逐漸降低(lobe0~lobe2)。假定每個(gè)旁瓣具有相同數(shù)量的采樣點(diǎn),且選擇幅度最小的旁瓣lobe2作為原型瓣(prototype lobe),則外推沖激響應(yīng)濾波器的基本思想就是利用原型瓣近似得到其他旁瓣[2-4]。

wdz2-t1.gif

    一個(gè)2N階零相位FIR濾波器的傳輸函數(shù)可寫(xiě)為:

    wdz2-gs1.gif

    假設(shè)外推沖激響應(yīng)濾波器有L個(gè)旁瓣,且每個(gè)旁瓣長(zhǎng)度為d,則式(1)可重新表示為:

wdz2-gs2-3.gif

    外推沖激響應(yīng)濾波器在設(shè)計(jì)時(shí)只需考慮未參與外推的系數(shù)h(0)~h(M)和h(M+Ld+1)~h(N)、原型瓣的系數(shù)h(M+(L-1)d+1)~h(M+Ld)以及尺度因子α0~αL-1,因此乘法計(jì)算復(fù)雜度與直接實(shí)現(xiàn)相比大大降低,但對(duì)于相同的性能要求,外推沖激響應(yīng)濾波器需要更高的階數(shù)[2-4]。這主要是由于外推降低了濾波器系數(shù)的自由度,外推出的系數(shù)僅僅是最優(yōu)值的近似,因此為了滿足給定的性能要求,只能提高階數(shù)。為了解決這個(gè)問(wèn)題,可以將系數(shù)外推近似產(chǎn)生的誤差補(bǔ)償回去,從而在不增加濾波器階數(shù)的情況下滿足性能要求,這種方法稱為殘余補(bǔ)償(residual compensation)。

    假設(shè)一個(gè)2N=18階的線性相位FIR濾波器,選取系數(shù)h(5)~h(7)為原型瓣,旁瓣系數(shù)h(2)~h(4)通過(guò)原型瓣外推得到,尺度因子為α0,hr(2)~hr(4)為外推近似過(guò)程中產(chǎn)生的誤差,作為殘余補(bǔ)償回去,實(shí)現(xiàn)結(jié)構(gòu)如圖2所示。

wdz2-t2.gif

    因此,帶殘余補(bǔ)償?shù)耐馔茮_激響應(yīng)濾波器傳輸函數(shù)可寫(xiě)為:

wdz2-gs4.gif

    對(duì)圖2結(jié)構(gòu)需要做幾點(diǎn)說(shuō)明:

    (1)圖2為尾系數(shù)(h(8)~h(9))不參與外推的結(jié)構(gòu),如果尾系數(shù)也參與外推,具體結(jié)構(gòu)會(huì)有所差異[4];

    (2)式(4)對(duì)應(yīng)的參數(shù):N=9,M=1,L=2,d=3;

    (3)較直接實(shí)現(xiàn)多出了兩個(gè)延時(shí)鏈(Extra Delay Chains),延時(shí)鏈的長(zhǎng)度等于瓣的長(zhǎng)度d,這里為3。延時(shí)鏈?zhǔn)沟每傃訒r(shí)單元數(shù)量比直接實(shí)現(xiàn)多出2(d-1)個(gè),會(huì)增加一定的硬件消耗;

    (4)雖然參數(shù)數(shù)量沒(méi)有減少(h(0),h(1),hr(2),hr(3),hr(4),h(5),h(6),h(7),h(8),h(9),仍然為10個(gè)),但外推使得系數(shù)取值范圍大大降低,優(yōu)化設(shè)計(jì)時(shí)加法器的個(gè)數(shù)和位數(shù)都會(huì)減少[4],從而降低硬件成本。

2 子項(xiàng)共享技術(shù)

    圖2中輸入信號(hào)與濾波器的各個(gè)常系數(shù)h(0),h(1),hr(2),hr(3),hr(4),h(5),h(6),h(7),h(8),h(9)相乘屬于多常數(shù)乘法(Multiple Constants Multiplication,MCM)問(wèn)題,可以通過(guò)加法器和移位操作來(lái)實(shí)現(xiàn)。子項(xiàng)空間技術(shù)可以有效降低MCM問(wèn)題中加法器的個(gè)數(shù),從而降低FIR濾波器的實(shí)現(xiàn)復(fù)雜度[5]。

    一個(gè)離散子項(xiàng)空間中的元素可以通過(guò)下式構(gòu)建[5]

    wdz2-gs5.gif

其中S是一組子項(xiàng)基,簡(jiǎn)稱基組。式(5)中y(i)2q(i)是某個(gè)子項(xiàng)基的移位,稱為一個(gè)子項(xiàng),K定義為子項(xiàng)的個(gè)數(shù)。例如S可以寫(xiě)為:{0,±1,±3,±5},有時(shí)也簡(jiǎn)寫(xiě)為:{3,5}。在構(gòu)建一個(gè)子項(xiàng)基時(shí)需要的加法器個(gè)數(shù)稱為這個(gè)子項(xiàng)基的階數(shù),顯然S的階數(shù)為2。

    如果某個(gè)變量與多個(gè)常數(shù)相乘,則用來(lái)實(shí)現(xiàn)公共子項(xiàng)的加法器都可以共享,從而達(dá)到減少加法器個(gè)數(shù)的目的。以兩個(gè)系數(shù)為例,如圖3所示,子項(xiàng)共享比直接實(shí)現(xiàn)節(jié)省一個(gè)加法器。因此,合理利用子項(xiàng)共享,可以有效降低數(shù)字濾波器的硬件消耗[5]

wdz2-t3.gif

3 硬件實(shí)現(xiàn)結(jié)構(gòu)

    下面舉例說(shuō)明外推補(bǔ)償FIR濾波器的一般結(jié)構(gòu)框圖。以16階的濾波器為例,假設(shè)h(1)~h(6)包含三個(gè)具有準(zhǔn)周期性的旁瓣。選擇系數(shù)幅度最小的瓣h(5)~h(6)作為原型瓣,并假設(shè)h(1)~h(2)旁瓣的尺度因子為α0,h(3)~h(4)旁瓣的尺度因子為α1,則外推補(bǔ)償FIR濾波器的實(shí)現(xiàn)結(jié)構(gòu)如圖4所示。

wdz2-t4.gif

    具體實(shí)現(xiàn)方法說(shuō)明如下:

    (1)式(4)對(duì)應(yīng)的參數(shù):N=8,M=0,L=3,d=2。

    (2)系數(shù)與輸入x(n)乘法的實(shí)現(xiàn):如前所述,屬于多常數(shù)乘法問(wèn)題,多常數(shù)為:h(0),hr(1),hr(2),hr(3),hr(4),h(5),h(6),h(7),h(8),可以采用子項(xiàng)共享技術(shù)來(lái)減少加法器的個(gè)數(shù)。

    (3)各尺度因子乘法的實(shí)現(xiàn):也屬于常數(shù)乘法問(wèn)題,但不能與上述系數(shù)進(jìn)行子項(xiàng)共享,只能在尺度因子之間進(jìn)行共享。

    (4)系數(shù)的正負(fù)問(wèn)題:在實(shí)現(xiàn)過(guò)程中全部采用補(bǔ)碼加法運(yùn)算。

4 綜合結(jié)果

    本節(jié)將以文獻(xiàn)[4]中120階的高通濾波器L1為例,基于帶殘余補(bǔ)償?shù)耐馔茮_激響應(yīng)技術(shù),采用Verilog HDL進(jìn)行濾波器的RTL級(jí)描,并用不同的工具分別在ASIC和FPGA上進(jìn)行綜合比較。L1濾波器的通帶邊界頻率為0.8π,阻帶邊界頻率為0.74π,通帶波動(dòng)小于0.005 7,阻帶波動(dòng)小于0.000 1。具體系數(shù)參閱文獻(xiàn)[4]中的表5。

    選擇h(37)~h(45)作為原型瓣,h(1)~h(9),h(10)~h(18),h(18)~h(27),h(28)~h(36)通過(guò)原型瓣外推得到,尺度因子分別為16,-8,4,-2。與輸入的多常數(shù)乘法系數(shù)為:h(0),hr(1)~hr(36),h(37)~h(60),比原系數(shù)h(0)~h(60)的取值范圍要小很多,因此可以有效減少加法器的個(gè)數(shù)[4]。對(duì)應(yīng)子項(xiàng)共享的基組為:{3,5,7,9,13,15,19,23,25,29,33,41,63,73,89,111,135,145,157,171,177,197},具體實(shí)現(xiàn)結(jié)構(gòu)可以通過(guò)圖4進(jìn)行擴(kuò)展,式(4)對(duì)應(yīng)的參數(shù):N=60,M=0,L=5,d=9。

    這里采用三種不同的實(shí)現(xiàn)方法進(jìn)行比較:

    (1)直接實(shí)現(xiàn),即輸入與濾波器系數(shù)h(0)~h(60)直接相乘實(shí)現(xiàn);

    (2)子項(xiàng)共享實(shí)現(xiàn),即在系數(shù)h(0)~h(60)之間進(jìn)行優(yōu)化和子項(xiàng)共享實(shí)現(xiàn),共需要164個(gè)加法器[5];

    (3)外推補(bǔ)償+子項(xiàng)共享實(shí)現(xiàn),簡(jiǎn)稱外推共享,共需要150個(gè)加法器[4]。

    ASIC硬件資源的消耗可以通過(guò)設(shè)置某個(gè)約束條件后綜合的面積來(lái)衡量[6]。選擇55 nm的CMOS工藝進(jìn)行綜合,時(shí)序約束條件分別設(shè)置為100 MHz、200 MHz。綜合結(jié)果見(jiàn)表1。

wdz2-b1.gif

    從表1可以看出,外推共享實(shí)現(xiàn)FIR濾波器相比較直接實(shí)現(xiàn)和子項(xiàng)共享實(shí)現(xiàn),ASIC綜合結(jié)果具有更小的面積消耗,節(jié)省了實(shí)現(xiàn)成本。但由于增加了延遲鏈,在低階濾波器或是延遲鏈很長(zhǎng)的情況下,外推共享實(shí)現(xiàn)相對(duì)于子項(xiàng)共享實(shí)現(xiàn)的優(yōu)勢(shì)并不明顯。

    下面再通過(guò)FPGA對(duì)三種不同的實(shí)現(xiàn)方法進(jìn)行綜合比較。分別選擇Cyclone III系列的EP3C120F780I7和Stratix III系列的 EP3SE50F484C2兩種型號(hào)的FPGA,綜合工具選用Quartus II 13.1。不同系列的FPGA綜合指標(biāo)會(huì)有所不同,結(jié)果如表2。

wdz2-b2.gif

    從表2可以看出,EP3C120F780I7用較少的存儲(chǔ)器來(lái)實(shí)現(xiàn)延遲鏈,而EP3SE50F484C2用寄存器來(lái)實(shí)現(xiàn)延時(shí)鏈,總體的邏輯消耗由于加法器個(gè)數(shù)的減少都明顯降低,從而節(jié)省FIR濾波器FPGA實(shí)現(xiàn)時(shí)的成本。

5 結(jié)論

    本文通過(guò)Verilog HDL編程實(shí)現(xiàn)了帶殘余補(bǔ)償?shù)耐馔茮_激響應(yīng)FIR數(shù)字濾波器,并結(jié)合子項(xiàng)共享技術(shù)進(jìn)一步減少實(shí)現(xiàn)時(shí)加法器的個(gè)數(shù),從而有效降低FIR濾波器的硬件消耗,尤其對(duì)于高階FIR濾波器的低成本設(shè)計(jì)具有實(shí)際的應(yīng)用意義。

參考文獻(xiàn)

[1] 徐紅,葉豐,黃朝耿.基于子項(xiàng)空間技術(shù)的低復(fù)雜度FIR濾波器實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2014,40(6):33-35.

[2] LIM Y C,LIU B.Extrapolated impulse response FIR filters[J].IEEE Trans.Circuits Syst.,1990,37(12):1548-1551.

[3] YU Y J,SHI D,LIM Y C.Subexpression encoded extrapolated impulse response FIR filter with perfect residual compensation[C].Proc.IEEE ISCAS,2008:2446-2449.

[4] YU Y J,SHI D,LIM Y C.Design of extrapolated impulse response FIR filters with residual compensation in subexpression space[J].IEEE Trans.Circuits Syst.I,Reg.Papers,2009,56(12):2621-2633.

[5] Yu Y J,LIM Y C.Design of linear phase FIR filters in subexpression space using mixed integer linear programming[J].IEEE Trans.Circuits Syst.I,Reg.Papers,2007,54(10):2330-2338.

[6] 虞希清.專用集成電路設(shè)計(jì)實(shí)用教程[M]第二版.杭州:浙江大學(xué)出版社,2013.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。