IIR数字滤波器的数字滤波器的Matlab和和FPGA实现实现[图图]
提出一种通过两个二阶节级联构成四阶IIR数字椭圆滤波器的设计方法,并利用Matlab仿真软件设计了通带内波
纹不大于0.1dB,阻带衰减不小于42dB的IIR数字滤波器。论述了一种采用可编程逻辑器件,通过VHDL硬件描述
语言实现该滤波器的方法。给出了在QuartusⅡ软件下的仿真结果,并在FPGA器件上验证实现。实验证明,这种
方法是切实可行的。
0 引言引言
数字滤波器具有比模拟滤波器精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配,以及能够实现模拟滤波器无法实现的
特殊滤波功能等特点,因此数字滤波器被广泛应用于图像处理和识别、语音处理和识别、通信、雷达、人工智能、核技术等多
个领域。
数字滤波器的实现方法很多,采用
1 IIR数字滤波器的数字滤波器的Matlab设计设计
1.1 IIR数字滤波器设计要求数字滤波器设计要求
本系统的设计指标如下:模拟信号采样频率为2MHz,每周期最少采样20点,即模拟信号的通带边缘频率为fp=100kHz,阻带
边缘频率fs=200kHz,通带波动Rp≤0.1dB(通带误差不大于5%),阻带衰减As≥42dB。换算为数字域指标为:
Wp=0.1π,Ws=0.2π,Rp=0.1dB,As=42dB。
1.2 IIR数字滤波器设计方案数字滤波器设计方案
(1)根据设计要求确定滤波器数字域指标
换算为数字域指标为:Wp=0.1π,Ws=0.2π,Rp=0.1dB,As=42dB。
(2)采用Matlab软件设计滤波器系统函数
IIR滤波器系统函数是采用计算机辅助工程CAE工具进行设计的。系统函数H(z)的计算采用Matlab软件设计比较方便,其中有
两个现成的函数可以使用:ellipord(Wp/pi,Ws/pi,Rp,As)函数用来计算数字椭圆滤波器的阶次N和3dB截止频率Wn;
ellip(N,Rp,As,Wn)函数可以求得直接型椭圆IIR滤波器的各个系数。
根据要求,设计采用Matlab软件实现IIR滤波器的源程序如下:
利用Matlab软件可以得到如下结果:
这是一个四阶IIR系统,通过Matlab计算出该系统的频率响应如图1所示,可见能满足设计要求。
评论0