- 1、本文档共14页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
IIR滤波器的DSP及Matlab实现
2010届学士学位论文
姓 名
时 间
指导教师
2010 年 5 月 12 日
设计目的:
掌握数字滤波器的设计过程;
了解IIR的原理和特性;
熟悉设计IIR数字滤波器的原理和方法;
学习IIR滤波器的DSP实现原理;
学习使用CCS的波形观察窗口观察输入/输出信号波形和频谱变化情况。
设计内容:
通过MATLAB来设计一个高通滤波器,对它进行模拟仿真确定IIR滤波器系数;
用DSP汇编语言编程,实现IIR运算,对产生的合成信号,滤除信号中高频成分,观察滤波前后的波形变化。
设计原理:
IIR滤波器与FIR滤波器相比具有相位特性差的特点,但它的结构简单,运算量小,具有经济高效的特点,并且可以用较少的阶数获得很高的选择性,因此也得到了广泛的应用。IIR数字滤波 器系统传递函数为:
H(Z)=Y(Z)/X(Z)=(b0+b1z^-1+```+bnz^-N)/(1+a1z^-1+```+an^-N)
它具有N个极点和N个零点,如果任何一个极点在单位圆外,则系统不稳定。如果系数aj(j=1,```,N)全部为零,则滤波器变成非递归的FIR滤波器,系统总是稳定的。对于IIR滤波器,系统总是稳定的。对于IIR滤波器,有系数量化敏感的缺点。由于系统对序列施加的算法是由加法、乘法和延时的基本运算的组合,所以可以用不同结构的数字滤波器来实现,而不影响系统的总的传输函数。
总体方案设计:
1.IIR滤波器的结构
IIR滤波器的传递函数在有限z平面上有极点存在。它的单位脉冲响应延续到无限长,而它的结构上的特性是存在反馈环路,也即结构上是递归型的。具体实现起来,结构并不是唯一的。同一个传递函数 ,可以有各种不同的结构形式,其中主要的基本结构形式有以下几种:
直接型
一个N阶IIR滤波器的传递函数可以表达为
用差分方程可以表达为
从这个差分方程表达式可以看出, 是由两部分相加构成:
第一部分是一个对输入 的N节延时链结构,每节延时抽头后加权相加,也即是一个横向结构网络。
第二部分也是一个N节延时链的横向结构网络,不过它是对延时,因此是个反馈网络。
从图中我们可以看到,直接型结构需要2N级延时单元。
2.IIR数字滤波器设计的系统框图;
3.设计步骤;
1.首先应根据指标参数及对滤波器特性的要求,选择合适的滤波器类型及设计方法进行设计。根据本次设计的要求应采用Butterworth型IIR高通滤波;
2.运用MATLAB编程,根据给定参数求出高通滤波器的指标和系统函数的系数;如下所示:
编写程序:
Wp=400/500
Wp =0.8000
Ws=200/500
Ws =0.4000
[n,Wn]=buttord(Wp,Ws,10,25)
n =2
Wn = 0.7990
[b,a]=butter(n,Wn)
b = 0.6375 1.2750 0.6375
a = 1.0000 1.1389 0.4110
freqz(b,a,512,1000)
得到滤波器的频率特性曲线
得到滤波器阶数为n=2,系统函数系数为:
b = 0.6375 1.2750 0.6375
a = 1.0000 1.1389 0.4110
3.根据上面得到的系数和参量在CCS里编程运行得到,模拟滤波器的特性,并得到输入输出时域频域内的图形,验证滤波器的正确。
4.得出设计结果,分析交流,最后得到结论。
主要参数;
Wp=400HZ,Ws=200HZ,αp=10dB,αs=25dB
六. 源程序;
根据滤波器的阶数和系数得汇编语言源程序:
.title iir.asm
.mmregs
.def start
DX .usect DX,3
DY .usect DY,3
DB .usect DB,3
DA .usect DA,3
PA0 .set 0
PA1 .set 1
.data
table: .word 0
.word 0
.word 0
.word 0
.word 6375
文档评论(0)