搜索
您的当前位置:首页FIR滤波器的高速实现

FIR滤波器的高速实现

来源:智榕旅游
维普资讯 http://www.cqvip.com 第21卷第1期 数 据 采 集 与 处 理 Vo1.21 No.1 2OO6年3月 Journal of Data Acquisition Processing Mar.2006 文章编号:1004—9037(20O6)01—0118—05 FIR滤波器的高速实现 袁 菁 高 勇 (1.四川大学电子信息学院,成都,610065; 2.重庆金美通信有限责任公司,重庆,400030) 摘要;介绍了一种实现FIR滤波器高速运算的有效方法 该方法在传统的滤波嚣系数奇偶对称性的基础上,根据 系数经SystemView软件量化后成比例的特点,利用加法运算采简化卷积中大量繁琐耗时的乘法运算;同时推导 出奇偶对称性的运算规律并给出详细运算步骤和计算公式。最后给出该算法分别与仅利用系数对称性、直接卷 积两方法相比较的加速比。仿真结果表明,文中所采取的优化措施能够提高信号处理速度。 关键词:有限冲击响应滤波器;卷积运算;奇偶对称性 中图分类号:TN713.7;TP301.6;TN911.72 文献标识码:A Realization of High Speed for FIR Filter Yuan Jing 。Gao Yong ’ (1.College of Electronics and Information Engineering,Sichuan University,Chengdu,610065,China; 2.Chongqing Jinmei Communication Company limited,Chongqing,400030,China) Abstract:An effective method for the high speed FIR filter is presented.The method is based on the traditional odd—even symmetry of filter coefficients,and reduces the multiplication in convolution by using the addition and the characteristic of proportional coefficients after quan— tifiying in the SystemView software.And rules and formulas of the odd—even symmetry are de— duced.Finally。the method is compared with the symmetry of coefficients and the direct convo— lution.Simulation results indicate that the optimization method can improve the signal process— ing speed. Key words:FIR filter;convolution calculation;odd—even symmetry FIR滤波器在实际中得到了广泛应用,在一些 偶对称性为基础,充分利用滤波器系数量化后其系 实时信号处理场合,实现FIR滤波器时面临信号处 数内在的比例关系,进一步减少计算量。 理速度的压力。如何提高其处理速度。具有现实的 # ., 研究意义。传统优化卷积的方法是利用滤波器系数 1 滤波器系数对称性的利用 的奇偶对称性,将系数分为两部分以利用相互之间 设h( )( =0,1,2,…,N一1)为滤波器的冲激 的映射关系,这样与直接卷积方法相比较,可以大 响应, ( )为长度是 的输入信号,则滤波器可实 大减少计算量,提高信号处理速度E z,zll。近几年涌现 现差分方程 出了许多种新的优化算法,如通过循环卷积完成线 N一1 性卷积【3“]、算术傅里叶变换(AFT) 和利用数论 ( )一2 h(正) ( 一k)一h( )* ( )(1) 一0 变换计算循环卷积 等。 如果h(n)偶对称,h(i)一^(N~l—i)i一0,1, 本文在设计应用于某设备的一个100阶带通 滤波器(系数偶对称)时,采用SystemView软件对 l,则 ( )为 ( )与^( )的前 项卷积的 系数进行量化后,观察到在其前5O个系数中相互 值。Y2( )为x(n)与h( )的后 项卷积的值。 之间存在比例关系,于是提出在DSP实现时,以奇 基金项目:四川大学青年基金(200406)资助项目。 收稿日期:2005一O1—23;修订日期:2005—09—16 }§ ^ }维普资讯 http://www.cqvip.com 第l期 袁菁,等:FIR滤波器的高速实现 l19 ∑^(志) (,2一是) =0 ≤ 一1 [ ㈤ ㈩… ( N ) N N 1 ( + )..・ ( + N一2) ) Y1(,2)= ( + 一1) … ( +Ⅳ一2)] 一 ≤删一2 [ l(o) l(1)..・ ( N 1) N- -h(志) (,2一是) ( N)q-y ̄(。) ( N+1)+ ) = 一M+l … M--I ̄ ≤ + 一2 ( + N一2)+ ( 一2) 主oN-(M—1)… ( + N一2)] (4) ,。k) 。O≤,2≤ N一1 2优化方法 一 为了说明清楚举例如下:设计一带通滤波器通 Y2(,2)==: 带为[O.1352,0.1434]、通带波动1 dB、通带增益0 N≤,2≤ 一2 dB、阻带增益一60 dB、阻带下界小于0.115 2、阻带 上界大于0.163 4、滤波器阶数为100。利用Sys— 斗 , temView软件的“线性系统滤波”工具箱_8 设计滤 波器。激活“DSP模式”对滤波器系数进行9位量 化得到表1数据,限于篇幅,仅列出前5O阶系数,后 一1≤ ≤ + 一2 5O阶系数与前5O阶呈现偶对称关系。 经推导h(,2)和x(n)卷积的结果 (,2)与Y (,z), 表1滤波器系数 系数 结果 系数 结果 系数 结果 系数 结果 h(o)0.000 000 000 h(13)0.005 859 375 h(26) 一0.003 906 250 h(39) 一0.035 1 56 25O h(1)0.000 000 000 h(14)0.005 859 375 h(27)0.O13 671 875 h(40) 一0.015 625 000 h(2)0.000 000 000 h(15)0.O01 953 l25 h(28)0.021 484 375 h(41)0.015 625 000 h(3) 一0.O01 953 125 h(16) 一0.003 906 250 h(29)0.015 625 000 h(42)0.037 109 375 h(4)0.000 000 000 h(17) 一0.009 765 625 h(30) 一0.005 859 375 h(43)0.O3l 250 000 h(5)0.000 000 000 h(18) 一0.007 812 500 h(31) 一0.023 437 500 h(44)0.003 906 250 h(6)0.001 953 l25 h(19)0.000 000 000 h(32) 一0.025 390 625 h(45)0.027 343 750 h(7)0.00l 953 125 h(20)0.009 765 625 h(33) 一0.007 812 500 h(46)0.041 015 625 h(8)0.000 000 000 h(21)0.O13 671 875 h(34)0.01 5 625 000 h(47) ~0.023 437 500 h(9) 一0.O01 953 125 h(22)0.007 8l2 500 h(35)0.03l 250 000 h(48)0.009 765 625 h(10) 一0.003 906 250 h(23)0.005 859 375 h(36)0.023 437 500 h(49)0.O37 109 375 h(11) 一0.003 906 250 h(24) 一0.015 625 000 h(37) 一0.001 953 125 h(12)0.000 000 000 h(25) 一0.015 625 000 h(38) 一0.027 343 750 维普资讯 http://www.cqvip.com 12O 数 据 采 集 与 处 理 第21卷 从表1看出:将前5O阶系数除以 0.001 953 125(即 1),发现每一阶都是它的整数 倍。利用这些倍数关系可以简化繁琐耗时的乘法运 算,方法如下: (1)计算出每个输入离散数据z( )与公约数去 (本文取去)相乘得到值 ( ); (2)分别计算出口 ( )与2 ( 为正整数,本文 取m=1,2,3)的积口2( ),a ( ),口8(f),剩余各项按 倍数关系相加,取反或直接赋值即可得到,例如: 由表1知:h(13)=3×0.001 953 125=h(14), 则mediate[ ][13]一mediate[f][14]一口 ( )+ 口 ( );h(17)=5×0.001 953 125,贝0 mediate[ ] E177=mediateEi][13]+口2( )。其OOmediate[i][j] 表示输入第 +1个输入值z(f)与滤波器系数^( ) 相乘的结果 因此当输入长度为D的离散序列时,对于本文 的例子可用D×4次乘法和D×11次加法代替D× 5O次乘法运算,从而减少了计算量。对于其他参数 的滤波器只要根据倍数关系,稍做修改即可。 当输入第Ⅳ+1(Ⅳ为滤波器的阶数)个离散值 z(Ⅳ)时,存储区中第一个输入值 (o)与滤波器第 一个系数h(o)的乘积值mediate[O][O]将不需要在 后面的计算中使用。为了节省空间,可以将z(Ⅳ)与 h(o)乘积的结果存入mediate[O][O],即 ) ( )=mediatel e叫 J J[力(5) 式中:ram为取余运算;i∈[Ⅳ+1,D];j;∈ [。, 一 ]。 这样即使在输入数据z( )不断增加的情况下 也只需要N× 个存储空间;而直接卷积需N×D 个存储空间,且随着输入数据的增加,存储空间不 断增加。 当输入数据z(f)的长度D≥Ⅳ时,程序流程如 图1所示,根据式(4)的原理详细算法如下: (1) ̄l--remf }≠o,在输入序列后面补Ⅳ一 个0,此时数据长度为D。; (2)前 一1项的卷积结果(即图2(a)矩阵中 实斜线上的各数之和为 ( )一∑x(i一.7)・^(.『)一 。 ∑ m e d e 一 ., J 图1程序流程图 [ ., ] ∈[。, N—1] (6) (3)第 项到第Ⅳ一2项的卷积结果(即图2 (a)中右折虚线上的各数之和)为 一百 ( )=∑z( )・h(N一1+J—f)+ 一 ∑x(i一 )・^( )一 o Ⅳ 一 士∑mediate[j]IN一1+J— ]+ j竺。 一 ∑mediate[/一 ][力 J=o ∈[ N,Ⅳ一1] (7) 当系数奇对称时,式中第一项取负号 (4)中间第Ⅳ・正一l到第Ⅳ・(正+ 1)一2项 的卷积结果(即图2(b)中反Z形线上各数之和)为 维普资讯 http://www.cqvip.com 第1期 袁菁。等;FIR滤波器的高速实现 l21 j,( )=∑meJ 0 diate[-/一 —N・志][力± 当 —N’(志+ 1)~ ItS,i-Ⅳ・(志+丢)< 0,式中第一项为O;当系数奇对称时,式中第一、三 ∑mediate[-/+_『+1一N.k]Ej]+ 项取负号. 一Ⅳ( +{)+ ∑ mediateEj]Ei一_『~N・k+11 (6)第N。£一1项到第N ・(£+ )一2项的卷 积值(即图2(d)中实折线上各数之和)为 ∈[Ⅳ・志~ ,Ⅳ・(志+丢)一2] (8) j,( )= i—N・(f~2)一1 式中志=1,2,3…,£,£= 。当 =Ⅳ・志一l时, — 土 ∑mediate[j][-/一N・(£一1)3+ J=0 N・k<0,式中第一项为0;当系数奇对称时,式中 第二项取负号。 (5)中间第N・(k+1)~l到第Ⅳ・(志+ 1)一2项卷积结果(即图2(c)中z形线上各数之和) ∈[N一 ,N・ 丢)_2] ㈣ 为 ∑ 当系数奇对称时,式中第一项取负号。 m e t— ・(¨ d (7) ̄D-+-N~1项到第D+N一2项的卷积值 _y( )一土 ∑ mediateEj] e J=0 (如图2(d)中虚斜线上各数之和)为 IN・(志+1)一1+J— ]+ + ., (f):土 ∑mediate[/+.『+1一N・£][力 一 十 ∑mediate[-/一_『~N・垂][力-4- J 0 一 ∈『-D+ N—l。D+Ⅳ~2] (11) N・(^+1)一2一i Ⅳ ∑mediate-[/+ +1一N・志][ ] 当系数奇对称时,式(11)取负号。图2中的矩形框 1J r●L ., 表示mediate的存储情况。 ●_J ∈[N・(点+专)一1,N・(矗+1)一2](9) 图2 Z形算法计算过程示意图 需要说明的是:当输入数据长度小于滤波器阶 说明问题和显示清楚,未加噪声)。此信号经过滤波 数,即D<Ⅳ时,不满足上述规律,因此不采用这种 器后只留下频率为0.125的正弦波。 方法;若滤波器系数为奇数阶,很容易推导出类似 图3(a)是数据长度为300点时输入信号的频 偶数阶的公式,限于篇幅本文没有给出。 谱,比较图3(b,C)可知,两者滤波结果并无较大差 。 3计算机仿真 异。表2列出了数据长度D不同时,本文的优化方 法与直接卷积方法(方法1)、利用偶对称方法(方法 ・ 为了验证优化效果,采用C编程进行计算机仿 2)相比较的结果。从表2可以看出:本文的方法具 真测试。测试信号是由3个归一化频率分别为 有较好的加速比;随着输入序列长度的增加加速比 0.083 8,0.125,0.166 2的正弦波叠加而成(为了 降低。 维普资讯 http://www.cqvip.com 122 数 据 采 集 与 处 理 第21卷 l5O 40 瑚 馨5O 釜20 蓑20 0 ——一 0 一一一I 。 …. 0.1 O.2 0.3 0.4 0.5 0 0.1 0.2 0.3 0.4 0.5 0.1 0.2 0.3 0.4 0.5 归一化频率 归一化频率 归一化频率 (a)输入信号 (b)直接卷积法 (c)本文方法 图3不同方法得到的频谱图 表2 3种方法的运算时间及加速比 4结束语 ber of dispersive regions[J].IEEE Trans on Signal Processing,2002,5O(12):3008—3017. 本文实现FIR滤波器时,在充分利用系数奇偶 [53 Tufts D W,Sadasiv G.The arithmetic Fourier trans— 对称性的基础上,进一步利用滤波器的系数经量化 form[J].IEEE ASSP Mag,1988,1:13-17. 后存在的比例关系来减少计算量,以提高处理速 [6] Sun Qi.Some results in the application of the RUm.. 度。仿真分析结果表明,本文的方法具有较好的加 ber theory tO digital signal processing and public key 速比,并能有效控制所需的存储空间。 systems[J].Contemporary Mathematics,1 998,77 (6):l07一ll2. 参考文献: [7] 王玉坤,张作群,黄广轶.FIR数字滤波器的DSP实 [1] 丁玉美,高西全.数字信号处理[M].2版.西安:西 现[J].自动化技术与应用,2004,23(7):61—62. 安电子科技大学出版社,2001:195—197. [8] 青松,程岱松.数字通信系统的SystemView仿真与分 [2] Roberto C.Modern digital signal processing[M]. 析[M].北京:北京航空航天大学出版社,2001:37— Beijing:China Machine Press,2003:157 l6O. 4O. [3] 王保强,沈镇芳,实时信号处理中高速卷积的实现 作者简介:袁菁(1981),女,硕士研究生,研究方向:通信信 [J],电子测量与仪器学报,1994,8(1):26—31. 号处理,E—mail;yuanjing1213@163.com;高勇(1969一),男, [4] Akihiko S.A fast convergence algorithm for sparse— 博士,副教授,研究方向 通信抗干扰技术、电子侦察、软件 tap adaptive FIR filters identifying an unknown hum一 无线电、高速信号处理等。 ; } 羹 ; 

因篇幅问题不能全部显示,请点此查看更多更全内容

Top