新闻中心

EEPW首页>模拟技术>设计应用> IIR数字滤波器的Matlab和FPGA实现

IIR数字滤波器的Matlab和FPGA实现

作者: 时间:2011-07-11 来源:网络 收藏

摘要:提出一种通过两个二阶节级联构成四阶数字椭圆滤波器的设计方法,并利用仿真软件设计了通带内波纹不大于0.1 dB,阻带衰减不小于42 dB的。论述了一种采用可编程逻辑器件,通过VHDL硬件描述语言实现该滤波器的方法。给出了在QuartusⅡ软件下的仿真结果,并在器件上验证实现。实验证明,这种方法是切实可行的。
关键词:无限长单位脉冲响应滤波器;;VHDL

0 引言
具有比模拟滤波器精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配,以及能够实现模拟滤波器无法实现的特殊滤波功能等特点,因此被广泛应用于图像处理和识别、语音处理和识别、通信、雷达、人工智能、核技术等多个领域。
数字滤波器的实现方法很多,采用器件实现具有速度快、效率高、成本低、开发周期短等优点,而且还可以直接使用Altera公司提供的FIR/IP core或采用LPM的设计方法进行设计,使数字滤波器设计变得简单、可靠。本系统通过一个实例说明如何通过设计并在FPGA器件上实现IIR椭圆函数滤波器。

1 IIR数字滤波器的Matlab设计
1.1 IIR数字滤波器设计要求
本系统的设计指标如下:模拟信号采样频率为2 MHz,每周期最少采样20点,即模拟信号的通带边缘频率为fp=100 kHz,阻带边缘频率fs=200 kHz,通带波动Rp≤0.1 dB(通带误差不大于5%),阻带衰减As≥42 dB。换算为数字域指标为:Wp=0.1π,Ws=0.2π,Rp=0.1 dB,As=42 dB。
1.2 IIR数字滤波器设计方案
(1)根据设计要求确定滤波器数字域指标
换算为数字域指标为:Wp=0.1π,Ws=0.2π,Rp=0.1 dB,As=42 dB。
(2)采用Matlab软件设计滤波器系统函数
IIR滤波器系统函数是采用计算机辅助工程CAE工具进行设计的。系统函数H(z)的计算采用Matlab软件设计比较方便,其中有两个现成的函数可以使用:ellipord(Wp/pi,Ws/pi,Rp,As)函数用来计算数字椭圆滤波器的阶次N和3 dB截止频率Wn;ellip(N,Rp,As,Wn)函数可以求得直接型椭圆IIR滤波器的各个系数。
根据要求,设计采用Matlab软件实现IIR滤波器的源程序如下:
b.JPG
利用Matlab软件可以得到如下结果:
c.JPG

电源滤波器相关文章:电源滤波器原理


数字滤波器相关文章:数字滤波器原理

上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭