一种新型格型IIR滤波器的研究与设计

时间:2022-10-29 12:42:12

一种新型格型IIR滤波器的研究与设计

摘要:文章研究了格型IIR滤波器的结构特点,提出了一种新型的格型IIR滤波器结构;基于DSP Builder软件和Altera公司的FPGA芯片,设计了所提出的新型格型 IIR滤波器;通过DSP Builder和Quartus II的仿真分析,新型的格型滤波器的占用逻辑资源减少了51%,器件工作的最高频率提高了95%。文章所提出的格型滤波器能降低FPGA硬件资源利用率,提高IIR滤波器的运算速度。

关键词:IIR;格型滤波器;DSP Builder;FPGA

中图分类号:TN713文献标识码:A文章编号:1009-2374(2010)01-0038-02

在信号处理系统中,数字滤波器是一项重要且普遍应用的技术。它通过一定的数学函数关系来改变输入滤波器信号中所含频率成分的相对比例或滤除某些频率成分。数字滤波器按其响应方式可以分为无限冲激响应滤波器(IIR Filter)与有限冲激响应滤波器(FIR Filter)两种。IIR滤波器与FIR滤波器相比,可用较低阶数获得较高的选择性,在相同的时钟采样速率和相同的晶体管数量的前提下能提供更好的过渡带下降速率,具有广泛的应用性。

格型滤波器在IIR滤波器中起着重要作用。一是它的模块化结构便于实现数据高速并行处理,易于VLSI集成;二是一个n阶格型滤波器可以产生从1阶到n阶的n个横向滤波器的输出性能;它对有限字长的舍入误差不灵敏。由于这些优点,格型滤波器在现代谱估计、自适应滤波、语音处理、线性预测等方面应用广泛。

本文采用FPGA产商Altera公司开发的信号处理软件DSP Builder设计了一种新型格型IIR滤波器。此种格型滤波器较之传统的结构,所占用的逻辑单元大幅度减少,同时进一步提高格型IIR滤波器的运算速度。本文最后以Altera公司的Stratix II 90系列芯片作为FPGA的下载芯片,利用Quartus II软件为开发平台,进行了项目文件的分析、综合、编译适配、时序仿真分析和网表复写。根据最后的实验,新型的IIR滤波器工作的信号频率由原来的26.3MHz提高到现在52.3MHz,所占用的逻辑单元数有原来的372个下降为183个。

一、传统格型滤波器的设计

本数字IIR滤波器的系统实现有各种结构形式。Gay和Marekl于1973年提出了一种经典的格型滤波器结构。其基本单元的形状与快速傅立叶变换中的蝶形单元类似,基本的数学理论是Schur算法。在格型滤波器中 ,分母应用 Schur 算法来分析,分子部分则用 Schur算法对分母处理的结果为正规直交基函数的多项式展开算法进行分析。

稳定的IIR系统应满足以下条件:

N(z)== (1)

N=izi (2)

lN= (3)

由以上三式,可以得到格型滤波器的数学理论Schur算法具体实现。利用N(z)的表达式递推得到N-1(z)。由于两者的阶数相差为1,因此,可以通过相同的方法循环得到从N(z)的所有N个表达式。并且这N个表达式中的常数项绝对值小于z最高次幂的的绝对值。

图1表示一个传统格型IIR滤波器的结构示意图。输入信号在每经过一个相同的模块,递归多项式的次数将降低一次。经过所有的N个模块后,递归多项式变为常熟。通过匹配这些模块的常数,就可以使用简单的乘法和延迟模块把这些串联起来,构成完整的IIR滤波器系统。

二、新型格型IIR滤波器的设计

本文提出的新型格型IIR滤波器结构是基于传统IIR滤波器的结构。具体的结构图如图2所示。

图2为3阶格型IIR滤波器的结构图。由图2所示,为方便计算,N阶格型IIR滤波器的最后一阶信号流入延迟单元的节点记为x1,x1前的信号节点记为m1,同理可得m2,m3,…,mN。由信号系统的基本原理,可以得到以下等式:

x1z-1=m1(4)

由信号流向及递归思想,可以得到:

mi=((x1-mklk)li+mi-1)z-1 (5)

(6)

(7)

因此,(8)

其中ak,bk满足Levinson-Durbin递归的条件,具体的数值可以参考Levinson-Durbin算法来求得,读者可以参考文献[4],在此不再赘述。本文采用软件DSP Builder来仿真所提出的新型格型滤波器的性能,具体的电路实现为图3。其中,仿真的信号源是Matlab软件中 Simulink库的随机信号发生器、正弦信号发生器和两端口示波器。

三、滤波器电路的仿真

DSP Builder在算法友好的开发环境中帮助设计人员生成DSP设计硬件表征,从而缩短了DSP设计周期。采用DSP Builder设计的第一步是在Matlab中的Simulink进行设计输入,即在Simulink的环境中建立MDL模型文件。用模块化的方式调用Altera DSP Builder和其他Simulink中的模块,构成系统级的仿真,具体的算法级仿真如图3所示。

输入格型IIR滤波器的信号采用频率分别为98MHz、201MHz的正弦信号与随机噪声信号的叠加,其中随机噪声信号的幅度为4,所输入的正弦信号的幅度为10。格型滤波器的采样频率为489MHz,要求能够滤除高频信号和随机噪声信号。

仿真波形如图3所示,下方图是输入信号,上方图是输出信号。输入信号通过IIR格型滤波器后基本上变成单频的正弦信号输出。可见,该IIR滤波器可以比较好的消除随机噪声信号和高频信号。

Matlab中的Simulink对已经设计好的格型IIR滤波器系统进行编译,通过调用DSP Builder的Signal Compiler工具可直接生成QuartusⅡ工程文件,再调用QuartusⅡ完成综合,网表生成和适配,直至完成FPGA的配置下载过程。本文选用的FPGA芯片为Stratix II EP2S90F1020C4。仿真结果是,传统格型IIR滤波器所占用的逻辑单元数为372个,信号最高工作频率为26.3MHz,滤波器的建立时间为7.813ns,保持时间为0.194ns。本文提出的新型格型IIR滤波器所占用的逻辑单元数为183个,信号最高工作频率为58.3MHz,滤波器的建立时间为7.708ns,保持时间为0.233ns。

由上面两组仿真数据对比可知,IIR滤波器的建立时间、保持时间和关键路径延时相差不大。延时的大小与连线的长短和逻辑单元的数目有关,同时还受器件的制造工艺、工作电压、温度等条件的影响。因此,单纯的改变系统电路结构并不能根本的改善IIR滤波器的建立时间、保持时间等参数的大小。但新型格型IIR滤波器下载到Stratix II EP2S90F1020C4中所占用的逻辑单元数比传统的格型IIR滤波器减少51%,器件工作的最高频率较之传统格型IIR滤波器提高了95%。由此得出,新型格型IIR滤波器在占用资源数和工作速度等性能都有较大改善。

四、结论

采用格型IIR滤波器的数学理论,提出了一种新型的滤波器电路图。在此基础上,利用DSP Builder工具设计了3阶新型格型IIR滤波器。通过与传统格型IIR滤波器的仿真结果的对比得出,本文提出的格型IIR滤波器提高了信号的最高工作频率和减少所占用FPGA芯片的逻辑单元数等性能指标。本文的研究成果对利用DSP Builder进行数字信号处理和格型IIR滤波器的设计具有一定的参考价值。

参考文献

[1]翟海涛,杨军,朱江.一种基于FPGA的高速FIR滤波器的设计[J].信息化研究,2009,(4).

[2] R.W. Jones,B.L Olsen,B.R. Mace. Comparison of convergence characteristics of adaptive IIR and FIR filters for active noise control in a duct. Applied Acoustics[J].2007,68(7).

[3]彭煊,杨红卫,刘金福,等.基于Schur运算格的线性ICA估计算法[J].电子学报,2004,(3).

[4]Koukoutsis,Error sources and error propagation in the Levinson-Durbinalgorithm[J].Signal Processing,IEEE Transactions on 1993,41(4).

[5]Braslavsky,J.H.,Middleton,R.H,Feedback Stabilization Over Signal-to-Noise Ratio Constrained Channels[J].Automatic Control,IEEE Transactions on ,2007,52(8).

上一篇:多媒体音视频技术在教学中的应用 下一篇:基于多传感器智能轮椅的硬件系统设计