毕业设计论文基于MATLAB和DSP芯片的IIR滤波器设计与实现.doc

上传人:sccc 文档编号:4865450 上传时间:2023-05-20 格式:DOC 页数:22 大小:2.65MB
返回 下载 相关 举报
毕业设计论文基于MATLAB和DSP芯片的IIR滤波器设计与实现.doc_第1页
第1页 / 共22页
毕业设计论文基于MATLAB和DSP芯片的IIR滤波器设计与实现.doc_第2页
第2页 / 共22页
毕业设计论文基于MATLAB和DSP芯片的IIR滤波器设计与实现.doc_第3页
第3页 / 共22页
毕业设计论文基于MATLAB和DSP芯片的IIR滤波器设计与实现.doc_第4页
第4页 / 共22页
毕业设计论文基于MATLAB和DSP芯片的IIR滤波器设计与实现.doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《毕业设计论文基于MATLAB和DSP芯片的IIR滤波器设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计论文基于MATLAB和DSP芯片的IIR滤波器设计与实现.doc(22页珍藏版)》请在三一办公上搜索。

1、基于MATLAB和DSP芯片的IIR滤波器设计与实现XXX(吉首大学物理科学与信息工程学院, 湖南 吉首 416000)摘 要数字滤波器在数字信号处理中起着重要的作用。在信号的过滤、检测与参数的估计等方面,数字滤波器是使用最为广泛的一种线性系统。本文设计的是IIR数字滤波器。其间利用MATLAB软件强大的科学运算和仿真功能,对IIR滤波器的参数进行设计。仿真结果表明,该方法设计的滤波器能满足设计要求。并且还利用DSP芯片处理速度快,实现简便的特点,对设计的IIR滤波器进行硬件实现,通过编程使得DSP芯片具有数字滤波的功能。关键词:IIR数字滤波器;MATLAB;仿真;DSP芯片。Design

2、and Realization of IIR Digital Filter Based on MATLAB and DSP ChipsFu Binbin(College of Physics Science and Information Engineering, Jishou University, Jishou Hunan 416000)AbstractDigital filter in the digital signal processing plays an important role. Signal filtering, detection and estimation of t

3、he parameters, the digital filter is the most widely used to linear system. Filtering is based on signal processing, signal filtering operation is the basic processing operations. This paper designed IIR digital filter by MATLAB software using strong scientific computing and simulation function, the

4、 parameters of the IIR filter were designed. The simulation results show that the results can be designed to meet the design requirements. Because DSP chips can process data quickly and realize functions conveniently.This design takes DSP chips as the IIR filter processing unit and then make program

5、 to realize digital filtering function.Key words: IIR digital filter ; Matlab ; Simulation ; DSP chips.目 录第一章 绪 论2第二章 数字滤波器设计原理42.1 数字滤波器的基本原理42.2 数字滤波器设计的基本步骤42.3 IIR滤波器的基本结构52.3.1 直接型二阶IIR滤波器的结构62.3.2 标准型二阶IIR滤波器的结构72.4 IIR滤波器的设计原理8第三章 MATLAB软件及DSP芯片的简介113.1 MATLAB 软件简介113.2 DSP芯片简介12第四章 IIR滤波器的设计

6、及实现144.1 IIR滤波器的MATLAB设计144.1.1 IIR滤波器设计步骤144.1.2 编程及图形仿真154.2 IIR滤波器的DSP实现164.2.1程序编写174.2.2 实验仿真结果19第五章 总 结20参考文献2121基于MATLAB和DSP芯片的IIR滤波器设计与实现 绪论第一章 绪 论数字滤波器是数字信号处理理论的一部分。数字信号处理主要是研究用数字或符号的序列来表示信号波形,并用数字的方式去处理这些序列,把它们改变成在某种意义上更为有希望的形式,以便估计信号的特征参量,或削弱信号中的多余分量和增强信号中的有用分量。具体来说,凡是用数字方式对信号进行滤波、变换、调制、解

7、调、均衡、增强、压缩、固定、识别、产生等加工处理,都可纳入数字信号处理领域。数字信号处理学科的一项重大进展是关于数字滤波器设计方法的研究。关于数字滤波器,早在上世纪40年代末期就有人讨论它的可能性问题,在50年代也有人讨论过数字滤波器,但直到60年代中期,才开始形成关于数字滤波器的一整套完整的正规理论。在这一时期,提出了各种各样的数字滤波器结构,有的以运算误差最小为特点,有的则以运算速度高见长,而有的则二者兼而有之。出现了数字滤波器的各种逼近方法和实现方法,对递归和非递归两类滤波器作了全面的比较,统一了数字滤波器的基本概念和理论。数字滤波器的领域的一个重要发展是对有限冲激响应(FIR)和无限冲

8、激响应(IIR)关系的认识的转化。在初期,一般认为IIR滤波器比FIR滤波器具有更高的运算效率,因而明显的倾向前者,但当人们提出用快速傅立叶变换(FFT)实现卷积运算的概念之后,发现高阶FIR滤波器也可以用很高的运算效率来实现,这就促使人们对高性能FIR滤波器的设计方法和滤波器的频域设计方法进行了大量的研究,从而出现了此后数字滤波器设计中频域方法和时域方法并驾齐驱的局面。然而,这些均属数字滤波器的早期研究。早期的数字滤波器尽管在语音、声纳、地震和医学的信号处理中曾经发挥过作用,但由于当时计算机主机的价格很昂贵,严重地阻碍了专用数字滤波器的发展。70年代科学技术的蓬勃发展,数字信号处理开始与大规

9、模和超大规模集成电路技术、微处理技术、高速数字算术单元、双极性高密度半导体存储器、电荷转移器件等新技术、新工艺结合了起来,并且引进了计算机辅助设计方法,它使数字滤波器的设计不仅仅是对相应模拟滤波器的逼近。一般说来,通过对模拟滤波器函数的变换来设计数字滤波器,很难达到逼近任意频率响应或冲激响应,而采用计算机辅助设计则有可能实现频域或时域的最佳逼近,或频域时域联合最佳逼近。这样,数字滤波器的分析与设计其内容也更既丰富起来,各种新的数字信号处理系统,也都能用专用数字硬件实时加以实现。数字信号处理理论与技术的发展,主要是由于电子计算机与大规模集成电路的大量生产和广泛应用,替代了原来的模拟信号处理中的线

10、性滤波与频谱分析所应用的模拟计算机和分立元件L、C、R线性网络,高度发挥了计算技术与数字技术相结合的特色和优越性。特别是微处理器和微型计算机技术日新月异的发展,经更有利于电子仪器与电子技术应用系统朝着数字化、小型化、自动化以及多功能等方向发展,促使它们成为富有智能型的电子系统。现在,包括数字滤波在内的数字信号处理技术正以惊人的速度向纵深和高级的方向发展;据统计这种趋势还要持续一个较长的时期,未来的发展可能会比过去的进程更为激动人心,必将引起某些领域的飞跃性发展。数字滤波器一般可用两种方法实现:一种是根据描述数字滤波器的数字模型或信号流图,用数字硬件装配成一台专门的设备,构成专用的信号处理机,这

11、就是硬件实现方式;另一种方法就是直接利用通用计算机,将所需要的运算编成程序来让计算机来执行,这就是软件实现方式。在硬件实现方式中,是一数字组件如延迟器、加法器和乘法器作为基本部件构成专用数字信号处理系统。不像模拟滤波器需要用电感和电容元件,因此数字信号处理机很容易用数字集成电路来制成,而且它的转移函数可变,各回路之间不存在阻抗匹配问题,因此可以很容易做成最佳冲激响应和恒定延迟的线性相移网络。在软件实现方式中,它是借助于通用计算机机器语言、汇编语言或高级语言程序来做数字滤波器的运算过程。基于MATLAB和DSP芯片的IIR滤波器设计与实现 数字滤波器设计原理第二章 数字滤波器设计原理数字滤波器(

12、Digital Filter,简称为DF)是指用来对输入信号进行滤波的硬件和软件。滤波器可广义地理解为一个信号选择系统。它让某些信号成分通过又阻止或衰减另一些成分。所谓数字滤波器,是指输入、输出均为数字信号,通过一定运算关系改变输入信号所含频率成分的器件。数字滤波器和模拟滤波器相比,因为信号的形式和实现滤波的方法不同,数字滤波器具有比模拟滤波器精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配等优点。一般用两种方法来实现数字滤波器:一是采用通用计算机,把滤波器所要完成的运算编成程序通过计算机来执行,也就是采用计算机软件来实现;二是采用实际专用的数字处理硬件。2.1 数字滤波器的基本原理数字滤波

13、器的原理如图2.1所示,模拟信号量化后经一个数字系统进行数字运算实现滤波功能。x(n)y(t)y(n)x(t)A/DH(z)D/A图2.1 数字滤波器原理框图图中x(t)、y(t)是输入和输出的模拟信号;x(n)、y(n)是数字滤波器输入和输出的数字量化信号。H(z)是系统的响应函数,根据系统的实际需要可以是无限冲激响应(IIR)或有限冲激响应(FIR),响应函数的设计也有许多有效的方法。图2.1数字滤波器原理框图响应函数H(z)的设计就是找到一组系统冲激响应的采样值,使滤波器的性能满足预先设计的技术指标,这就是数字滤波器的滤波原理。2.2 数字滤波器设计的基本步骤 数字滤波器设计方法多种多样

14、,其大体步骤如下:1确定指标在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。在很多实际应用中,数字滤波器常常被用来实现选频操作。因此,指标的形式一般在频域中给出幅度和相位响应。幅度指标主要以两种方式给出。第一种是绝对指标。它提供对幅度响应函数的要求,一般应用于FIR滤波器的设计。第二种指标是相对指标,它以分贝值的形式给出要求。在工程实际中,这种指标最受欢迎。对于相位响应指标形式,通常希望系统在通频带中能有线性相位。运用线性相位响应指标进行滤波器设计具有如下优点:只包含实数算法,不涉及复数运算;不存在延迟失真,只有固定数量的延迟;长度为N的滤波器(阶数为N-1),计算量为N

15、/2数量级。2逼 近确定了技术指标后,就可以建立一个目标的数字滤波器模型。通常采用理想的数字滤波器模型。之后,利用数字滤波器的设计方法,设计出一个实际滤波器模型来逼近给定的目标。3性能分析和计算机仿真上两步的结果是得到以差分方程或系统函数或冲激响应描述的滤波器。根据这个描述就可以分析其频率特性和相位特性,以验证设计结果是否满足指标要求;或者利用计算机仿真实现设计的滤波器,再分析滤波结果来判断。IIR滤波器设计方法有两类,经常用到的一类设计方法是借助于模拟滤波器的设计方法进行的。其设计思路是:先设计模拟滤波器得到传输函数G(s),然后将G(s)按某种方法转换为数字滤波器的系统函数H(z)。这一类

16、方法是基于模拟滤波器的设计方法相对比较成熟,它不仅有完整的设计公式,也有完整的图标供查阅,更可以直接调用MATLAB中的对应的函数进行设计。另一种是直接在频域或者时域中进行设计,设计时必须使用计算机辅助,直接调用MATLAB中的程序或函数即可设计。2.3 IIR滤波器的基本结构IIR滤波器差分方程的一般表达式为 (2.1)式中,x(n)为输入序列;y(n)为输出序列;和为滤波器系数。若所有系数等于0,则为FIR滤波器。IIR滤波器具有无限长的单位脉冲响应,在结构上存在反馈回路,具有递归性,即IIR滤波器的输出不仅与输入有关,而且与过去的输出有关。将式(2.1)展开得输出y(n)表达式为 (2.

17、2)在零初始条件下,对式(2.2)进行z变换,得到 (2.3)当N=M时,则传递函数为 (2.4) 式(2.4)可以写成 (2.5)式(2.5)具有N个零点和N个极点。若有极点位于单位圆外将导致系统不稳定。由于FIR滤波器所有的系数均为0,不存在极点,不会造成系统的不稳定。对于IIR滤波器,系统稳定的条件如下:若1,当时,系统不稳定。IIR滤波器具有多种形式,主要有:直接型(也称直接型)、标准型(也称直接型)等多种。2.3.1 直接型二阶IIR滤波器的结构二阶IIR滤波器,又称为二阶基本节,分为直接型、标准型、变换型。对于一个二阶IIR滤波器,其输出可以写成 (2.6)根据式(2.6),可以得

18、到二阶IIR滤波器的结构图,如图2.2所示。共使用了4个延迟单元。+x(n)y(n)图2.2 直接型二阶IIR滤波器直接型二阶IIR滤波器还可以用图2.3的结构实现。此时,延时变量变成了。可以证明图2.3的结构仍满足式(2.6)。前向通道: (2.7)反馈通道: (2.8)将式(2.8)代入式(2.7)得+x(n)y(n)w(n)图2.3 直接型二阶IIR滤波器 (2.9)将式(2.9)展开与式(2.6)完全一致。2.3.2 标准型二阶IIR滤波器的结构从图2.3可以看出,左右两组延迟单元可以重叠,从而得到标准型二阶IIR滤波器的结构图,如图2.4所示。由于这种结构所使用的延时单元最少(只有2

19、个),得到了广泛的应用,因此称之为标准型IIR滤波器。+x(n)y(n)w(n)图2.4标准型二阶IIR滤波器2.4 IIR滤波器的设计原理IIR滤波器的设计可以利用模拟滤波器原型,借鉴成熟的模拟滤波器的设计结果进行双线性变换,将模拟滤波器变换成满足预定指标的数字滤波器,根据模拟设计理论设计出满足要求的传递函数,然后将变换成数字滤波器的传递函数。设计IIR滤波器的基础是设计模拟滤波器的原型,这些原型滤波器主要有:巴特沃斯(Butterworth)滤波器,其幅度响应在通带内具有最平特性;切比雪夫(Chebyshev)滤波器,在通带内具有等波纹特性,且阶数小于巴特沃斯滤波器;椭圆(Elliptic

20、)滤波器,在通带和阻带内具有等波纹特性,且阶数最小。将模拟滤波器转换为数字滤波器常用的方法是双线性变换,其作用是完成从平面到平面的一个映射。其关系为 (2.10) (2.11)双线性变换的基本性质如下:平面上的轴映射到平面的单位圆上;平面的左半平面映射到平面的单位圆内;平面的右半平面映射到平面的单位圆外。考虑平面上的虚轴映射为平面的单位圆,令 (2.12)它代表一个可变的模拟频率。其平面上相应的数字频率为,即 (2.13)将式(2.12)和式(2.13)代入(2.10)得 (2.14)对式(2.14)求解得 (2.15)模拟频率和数字频率之间的对应关系为 (2.16)模拟频率和相应的数字频率之

21、间的映射关系如图2.5所示。01图2.5 和之间的映射关系当在01之间变化时,在0/4之间变化,为采样频率;当1时,其对应的在/4/2之间。双线性变换会造成频率失真,通常采用预畸变来补偿失真。双线性变换设计的步骤如下:选择一个合适的模拟传递函数;对截止频率或预定的数字频率进行预畸变,并根据式(2.15)求得相应的模拟频率;用对中的频率进行换算,即 (2.17)用式(2.10)计算 (2.18)基于MATLAB和DSP芯片的IIR滤波器设计与实现 MATLAB软件及DSP芯片的简介第三章 MATLAB软件及DSP芯片的简介3.1 MATLAB 软件简介MATLAB是英文Matrix Labora

22、tory (矩阵实验室)的缩写。它是由美国Mathworks公司推出的用于数值计算和图形处理的数学计算环境。在MATLAB环境下,用户可以集成地进行程序设计、数值计算、图形绘制、输入输出、文件管理等各项操作。它优秀的数值计算能力和卓越的数据可视化能力使其很快在同类软件中脱颖而出。MATLAB系统最初是由Cleve Moler 用FORTRAN语言设计的,现在的MATLAB程序是Mathworks公司用C语言开发的。它的第一版(DOS版本1.0)发行于1984年;经过20年的不断改进,MATLAB已经成为国际上最流行的科学与工程计算的软件工具,最流行的计算机高级编程语言了,有人称它为“第四代”计

23、算机语言,它在国内外高校和研究部门正扮演着重要的角色。MATLAB语言的功能也越来越强大,不断适应新的要求提出新的解决方法。可以预见,在科学运算、自动控制与科学绘图领域MATLAB语言将长期保持其独一无二的地位。MATLAB语言之所以能如此迅速地普及,显示出如此旺盛的生命力,是由于它有着不同其他语言的特点。1语言简洁紧凑,使用方便灵活,库函数极其丰富。MATLAB程序书写形式自由,利用其丰富的库函数避开了繁杂的子程序编程任务,压缩了一切不必要的编纂工作。由于库函数都是由本领域的专家编写,所以用户不必担心函数的可靠性。2运算符号丰富。由于MATLAB是用C语言编写的,所以MATLAB提供了C语言

24、几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短。3高效方便的矩阵和数组运算。MATLAB语言像Basic、Fortran、C语言一样规定了矩阵的算术运算符、关系运算符、逻辑运算符、条件运算符及赋值运算符,而且这些运算符大部分可以毫无改变地照搬到数组间的运算,另外,它不需要定义数组的唯数,并给出矩阵函数、特殊矩阵函数、特殊矩阵专门的库函数,使之在求解诸如信号处理、建模、系统识别、控制、优化等领域的问题时,显得大为简捷、高效、方便,这是其它高级语言所不能比拟的。在此基础上,高版本的MATLAB已逐步发展到科学及工程计算的其它领域。因此,不久的将来,它一定能名副其实地成为“万能

25、演算纸式的”科学算法语言。4MATLAB即具有结构化的控制语句,又有面向对象编成的特性。5.语法限制不严格,程序设计自由度大。为了充分利用Fortran、C等语言的资源,包括用户已编好的Fortran、C语言程序,通过建立M文件的的形式,混合编程,方便地调用有关的Fortran、C语言的子程序。6.程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。7.MATLAB的图形功能强大。在C和FORTRAN语言里,绘图都很不容易,但在MATLAB里,数据的可视化非常简单。此外,MATLAB还具有较强的编辑图形界面的能力。8. MATLAB具有的一项重要特色是拥有功能强大的工具

26、箱。MATLAB包含两个部分;核心部分和各种可选的工具箱。功能性工具箱主要用来扩充其符号计算功能、图示建模仿真功能、文字处理功能以及与硬件实施交互功能。功能性工具箱能用于多种学科。而学科性工具箱是专业性比较强的;如Control toolbox、Signal processing toolbox 、Communication toolbox等,这些工具箱都是由该领域内的学术水平很高的专家编写的,所以用户无需编写自己学科范围内的基础程序,而直接进行高、精、尖的研究。9.源程序的开放性。除内部函数以外,所有MATLAB的核心文件和工具箱文件都是可读可改变的源文件,用户可通过对源文件的修改以及加入自

27、己的文件构成新的工具箱。MATLAB软件自1984年推向市场以来,历经十几年的发展和竞争,现已成为(IEEE评述)国际公认的最优秀的科技应用软件。它功能强大、界面友好、语言自然、开放性强的特点是它获得了对应用学科(特别是边缘学科和交叉学科)的季强是盈利,并且很快成为应用学科计算机辅助分析、设计、仿真、教学乃至科技文字处理不可缺少的基础软件。在欧美等高校,MATLAB已成为理工科高级课程的基本工具,成为攻读学位的大学生、硕士生、博士生必须掌握的技能。在设计研究单位和工业部门,MATLAB已经成为研究和解决各种具体工程问题的一种标准软件。近年来该软件系统开始在我国国内流行。受到理工科大中专院校释省

28、级科研人员的重视,这也是本文选择用它来设计实现数学滤波器原因所在。3.2 DSP芯片简介TMS320C54X(以下简称C54X) 是TI公司于1996年推出的新一代高性能定点DSP。该系列芯片具有很高的性能价格比、体积小、功耗低、功能强,已成为通信、计算机、消费类电子产品等 领域的重要器件。数字滤器的设计是数字信号处理领域的一个重要部分。在用定点DSP器件设计数字滤波器时,一个重要的问题就是由于硬件字长精度有限,运算 会出现溢出。IIR滤波器可以用较少的阶数获得很高的选择特性,所用的存储单元少、运算次数少,具经济、高效的特点。在相位要求不敏感的场合,如语音通信等,很适合用IIR滤波器;但是在有

29、限精度的运算中,可能出现不稳定现象。C54x芯片的的大致结构如下:(1)总线结构C54x 包括8 条16 比特宽度的总线,其中: 一条程序总线(PB)三条数据总线(CB、DB、EB) 四条地址总线(PAB CAB DAB EAB)(2)中央处理单元(CPU)C54x 的CPU 结构包括:40位算术逻辑运算单元(ALU)2个40位累加器移位-1630位的桶形移位寄存器乘法器/加法器单元比较、选择和存储单元(CSSU)指数编码器CPU状态和控制寄存器(3) 外设C54x 包括通用I/O 引脚,XF 和BIO定时器PLL 时钟产生器HPI 口8 比特或16 比特同步串口带缓存串口BSP多路带缓存串口

30、McBSP时分复用串口TDM可编程等待状态产生器可编程bank switching 模块 外部总线接口 IEEE1149.1 标准JTAG 口基于MATLAB和DSP芯片的IIR滤波器设计与实现 IIR滤波器的设计及实现第四章 IIR滤波器的设计及实现4.1 IIR滤波器的MATLAB设计IIR 数字滤波器设计是从一个原型模拟低通滤波器出发。有三种广泛应用的滤波器原型:巴特沃思低通、切比雪夫低通和椭圆低通滤波器。下面仅对巴特沃思数字滤波器设计及其特点加以说明。4.1.1 IIR滤波器设计步骤本文采用巴特沃思函数进行IIR滤波器设计,其步骤如下:(1)butter函数功能:用于设计Butterw

31、orth(巴特沃思)滤波器。语法:b,a=butter (n,); b,a=butter (n,ftype);说明:butter函数可以设计低通、带通、高通和带阻数字滤波器,其特性可使通带内的幅度响应最大限度地平坦,但会损失截止频率处的下降斜度,使幅度响应衰减较慢。 b,a=butter (n,)可以设计截止频率为的n阶低通Butterworth滤波器,其中截止频率应满足01,=1相当于0.5(采样频率)。当=时,butter函数产生一个2n阶数字带通滤波器,其通带为。 b,a=butter (n,ftype)可以设计高通或带阻滤波器。当ftype=high时,可设计截止频率为的高通滤波器;当ftype=stop时,可设计带阻滤波器,此时=,阻带为时,为高通滤波器;当,为二元矢量时,若 EPROM PAGE0 .date : EPROM PAGE0DX : align(4) DARAM PAGE1DY : align(4) DARAM PAGE1DB : align(4) DARAM PAGE1DA : align(4)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号