全文详解IIR滤波器原理与设计方法

1.iir滤波器的原理
1.1 概述
《数字信号处理》作为一门通信、电子、信息等本科专业基础课程,在《信号与系统》课程的基础上,学习离散信号与离散时间系统,尤其是离散傅里叶变换(dft)和快速傅里叶变换(fft)、数字滤波器、多速率信号处理等在通信、雷达等领域得到广泛应用。
无限脉冲相应(infinite impulse response ,iir)滤波器与(finite impulse response ,fir)滤波器构成了两种常用的数字滤波器,这两者既有联系,也有区别。
首先,iir滤波器具有很高的滤波效率,在相同幅频响应条件下,所需的滤波器阶数明显比fir滤波器低。其次,iir滤波器的设计,可以借鉴模拟滤波器的设计成果。此外,iir滤波器可以用较少的硬件资源(主要是乘加运算的dsp资源)获得较好的滤波器幅频特性。
需要注意的是,iir滤波器的一个显著特点是不具备严格的线性相位特性,相对于fir滤波器而言应用范围较窄,只有在不需要严格线性相位特性的情况下,可以利用iir滤波器实现数字滤波。
数字滤波器通常由一个系统函数、差分方程、方框图或流图来表示:
其基本运算单元、方框图及流图为:
例如给定一个二阶滤波器:,则其方框图结构与流图结构如下图所示。
在流图结构中,我们还需要弄清楚以下几个基本概念:
节点:
源节点:只有输出、没有输入的的节点
阱节点(输出节点):只有输入支路而没有输出支路,它一般代表系统的输出变量,故也称为输出节点。
网络节点:分支节点或加法器
支路:只有一个输入,由一个或多个输出的节点
节点的值=所有输入支路的值之和
支路的值=支路起点处的节点值×传输系数
知乎话题:如何通俗易懂地理解fir/iir滤波器?
1.2iir滤波器的原理及特性
llr滤波器具有以下结构及特点:
iir滤波器的特点:
系统的单位抽样相应h(n)无限长理解:由于本步骤的输出会作为下一步骤的输入,无限递归下去,所以一个时刻的影响就是无限的,也就是“无限冲激响应”。
系统函数h(z)在有限z平面( 0<|z|<∞)上有极点存在lsi系统因果稳定性:一个lsi系统是因果稳定系统的必要与充分条件是系统函数h(z)必须是在从单位圆|z|=1到|z|<∞的整个z平面内(0≤|z|≤∞)收敛。即:系统函数h(z)的全部极点必须在z平面的单位圆以内。
存在输出到输入的反馈,递归型结构在物理世界的时间系统中,因环境噪声等不可控因素,iir滤波器将可能导致所设计系统不稳定,反复递归振荡。
如果只有不为0,其他,则称为全极点型的iir滤波器或自回归(ar)系统,如果由两个或多个,则称为零-极点型的iir滤波器或自回归滑动平均(arma)系统。
iir滤波器结构:直接i型、直接ii型、级联型、并联型和格型结构。
单位冲击相应h(n)为实数。
1.3 iir滤波器的结构
1.3.1 直接i型
对于差分方程:如果先实现各的加权和,再实现各的加权和,则称之为直接i型。
1.3.2直接ii型
将直接i型结构的两个延时链子系统的次序进行交换,并将有相同输出的中间两延时链加以合并,即可得到直接ii型结构(典范型结构)。
直接型的共同缺点
对于高阶滤波器,系数a_k和b_k分别对滤波器的极点与零点的控制作用不明显,即对频率响应的控制作用不明显,因而调整频率响应比较困难。
极点对系数的变化过于灵敏,易出现不稳定或较大误差
运算的累积误差较大:乘法运算的量化误差,造成系统输出端噪声功率大
1.3.3 级联型
1.3.4并联型
2.iir滤波器的设计方法
程佩青《数字信号处理教程》(第四版简明版)第6章总结的iir滤波器设计方法
显然,在数字化时代,利用matlab、fpga、dsp等软硬件来设计滤波器,才能应用到产品中!
3.iir滤波器的matlab设计
matlab软件提供了丰富的滤波器设计方法,例如signal processing toolbox提供了fir、iir、单速率和多速率滤波器设计、分析和实现的案例,可以用于设计参考。
除了函数,我们也可以利用filterdesigner设计。命令行键入filterdesigner ,回车。
进入滤波器设计界面,设计一个iir滤波器。
在界面的左侧,显示当前滤波器信息。“响应类型”用于指定滤波器的作用。“设计方法”包含iir和fir,用于指定滤波器的类型。设置滤波器的阶数,设定频率的单位可以采用归一化或hz、khz、mhz等。参数设置完毕,点击“设计滤波器”,可通过工具栏查看所设计滤波器的幅值响应、相位响应、群延迟响应、零极点图等。并可在左上角查看当前滤波器信息。
设计确定后,可对滤波器系数进行量化。设置量化参数,滤波器算法选择“定点”,系数字长设为16。
需要注意的是,在生成.coe文件时,需要满足定点、单节和直接型的fir,才能支持xilinx fpga所需的.coe文件。我们也可以将所设计滤波器导出生成.m文件,以供应用。
此外,我们可以应用designfilt设计滤波器,再用filter对数据进行滤波。
例如,设计一个低通iir滤波器。
4.iir滤波器的fpga实现
iir滤波器的fpga实现比较复杂,需要应用到除法器。在利用fpga实现iira滤波器前,我们需要将matlab设计的iir滤波器满足设计需求后,将系数进行量化。
示例:采用cheby2函数设计一个阶数为7(级数为8)的带通滤波器,采样频率为2000hz、截至频率为500hz、阻带衰减为60db,设计一个iir滤波器。
c=fvtool(b,a),将滤波器可视化。
为方便fpga实现,我们需要将系数进行量化定点。对于iir滤波器的fpga设计,可以参考杜勇的《数字滤波器的matlab与fpga实现》第5章。在实际应用中,很少用iir滤波器去做设计,而是更多的应用fir滤波器设计。
最后,我们需要将处理结果进行对比,确保设计一致。


华为P30 Pro和iQOO的快充和续航能力对比分析
TME Solution已成为最可靠的长期定制和标准泄漏测试仪器
iic通信协议是什么
燃气报警器电路图大全(六款模拟电路设计原理图详解)
新唐科技推出内置2Vrms驱动器的立体声DAC-NAU8402
全文详解IIR滤波器原理与设计方法
AMD处理器现在真的超越英特尔处理器了吗
感知系统基本介绍
iphone8什么时候上市?iphone8最新消息:iPhone8配置售价抢先看,iphone8能隔空充电?全新工业设计将无法拆机
“神威?太湖之光” 这一中国制造仍未遇超越者 实用性又遭质疑?
虹软科技再次入选2022金辑奖“中国汽车新供应链百强”
Linux 让你意想不到的用处
分享一个电子驱鼠电路
一加5、荣耀9、魅族MX7、OPPOR11即将亮相,高颜值、高性能、高配置你的钱包准备好了吗?
为什么加密货币价格的波动会让所有人都沉迷其中
光伏发电缓解电荒 指日可待?
ARM Cortex-M4内核架构概述
国内外新老AI芯片势力百花齐放,我国能否和国外巨头一战?
AN5071各引脚功能电压资料
激光传感器工作原理_激光传感器应用