基于MATLAB的IIR数字滤波器的设计与DSP实现毕业论文(39页).doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《基于MATLAB的IIR数字滤波器的设计与DSP实现毕业论文(39页).doc》由会员分享,可在线阅读,更多相关《基于MATLAB的IIR数字滤波器的设计与DSP实现毕业论文(39页).doc(38页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-基于MATLAB的IIR数字滤波器的设计与DSP实现毕业论文-第 36 页1 绪论11.1 课题分析11.2 数字滤波器在国内外发展概况11.3 MATLAB 简介21.4 数字信号处理(DSP)器简介31.5 DSP芯片开发工具42 IIR数字滤波器设计的方案选择及原理分析92.1 总体方案比较92.2 IIR滤波器的基本原理92.3 IIR数字滤波器的设计方法113 IIR滤波器的MATLAB设计与仿真153.1 FDATool界面设计153.2 程序设计183.3 IIR数字滤波器的仿真204 IIR滤波器在DSP上的实现304.1 IIR数字滤波器在DSP上的实现步骤和条件304.2
2、 IIR数字滤波器在TMS320VC5416 DSP上的实现过程305 总结36参考文献37致 谢38附录一:XP-IIR-AD.C39附录二:XP-IIR-AD.CMD481 绪论1.1 课题分析在现代通信系统中,由于信号中经常混有各种复杂成分,所以很多信号的处理和分析都是基于滤波器而进行的。但是,传统数字滤波器的设计使用繁琐的公式计算,改变参数后需要重新计算,从而在设计滤波器尤其是高阶滤波器时工作量很大。利用MATLAB信号处理箱(Signal Processing Toolbox)可以快速有效地实现数字滤波器的设计与仿真。本课题正是利用MATLAB软件进行IIR数字滤波器的设计并进行仿真
3、,这使得滤波器的设计更加快速和有效。21 世纪是信息科学与技术的世纪, 其中, 数字信号处理技术(DSP) 已经成为当今一门极其重要的学科。数字信号处理(DSP) 在通信, 语音, 图像, 自动控制, 雷达, 军事, 航空航天, 医疗和家用电器等很多领域已经得到广泛的应用。10近年来,在数字信号处理领域具有绝对优势的DSP技术得到了迅速发展,不仅应用于通信、计算机领域,还逐渐渗透到其他科学研究领域。DSP应用得到普遍重视。数字信号处理器由于运算速度快,具有可编程特性和接口灵活的特点,使得它在许多电子产品的研制、开发与应用中,发挥着越来越重要的作用。18采用DSP芯片实现数字信号处理系统更是当前
4、的发展趋势。因此本课题在MATLAB设计完成IIR滤波器的情况下,通过在CCS软件环境下进行编程,利用TMS320C54x进行IIR滤波器的硬件实现。1.2 数字滤波器在国内外发展概况数字滤波器是具有一定传输选择特性的数字信号处理装置,其输入、输出均为数字信号,实质上是一个由有限精度算法实现的线性时不变离散系统。它的基本工作原理是利用离散系统特性对系统输入信号进行加工和变换,改变输入序列的频谱或信号波形,让有用频率的信号分量通过,抑制无用的信号分量输出。在近代电信设备和各类控制系统中,滤波器应用极为广泛;在所有的电子部件中,使用最多,技术最为复杂的要算滤波器了。滤波器的优劣直接决定产品的优劣,
5、所以,对滤波器的研究和生产历来为各国所重视。1917年美国和德国科学家分别发明了LC滤波器,次年导致了美国第一个多路复用系统的出现。20世纪50年代无源滤波器日趋成熟。自60年代起由 于计算机技术、集成工艺和材料工业的发展,滤波器发展上了一个新台阶,并且朝着低功耗、高精度、小体积、多功能、稳定可靠和价廉方向努力,其中小体积、多功能、高精度、稳定可靠成为70年代以后的主攻方向。导致RC有源滤波器、数字滤波器、开关电容滤波器和电荷转移器等各种滤波器的飞速发展,到70年代后 期,上述几种滤波器的单片集成已被研制出来并得到应用。80年代,致力于各类新型滤波器的研究,努力提高性能并逐渐扩大应用范围。90
6、年代至现在主要致力于把各类滤波器应用于各类产品的开发和研制。当然,对滤波器本身的研究仍在不断进行。7我国广泛使用滤波器是50年代后期的事,当时主要用于话路滤波和报路滤波。经过半个世纪的发展,我国滤波器在研制、生产和应用等方面已纳入国际发展 步伐,但由于缺少专门研制机构,集成工艺和材料工业跟不上来,使得我国许多新型滤波器的研制应用与国际发展有一段距离。数字滤波器和模拟滤波器有着相同的滤波概念,根据其频率响应特性可分为低通、高通、带通、带阻等类型,与模拟滤波器相比,数字滤波器除了具有数字信号处理的固有优点外,还有滤波精度高(与系统字长有关)、稳定性好(仅运行0与1两个电平状态)、灵活性强等优点。数
7、字滤波器按单位脉冲响应的性质可分为无限长单位脉冲响应滤波器IIR和有限长单位脉冲响应滤波器(FIR)两种。IIR数字滤波器具有无限宽的冲激响应,与模拟滤波器相匹配,所以IIR滤波器的设计可以采取在模拟滤波器设计的基础上进一步变换的方法。其设计方法主要有经典设计法、直接设计法和最大平滑滤波器设计法。FIR数字滤波器的单位脉冲响应是有限长序列。它的设计问题实质上是确定能满足所要求的转移序列或脉冲响应的常数问题,设计方法主要有窗函数法、频率采样法和等波纹最佳逼近法等2。目前数字滤波器的设计有许多现成的高级语言设计程序,但他们都存在设计效率较低,不具有可视图形,不便于修改参数等缺点,而MATLAB为数
8、字滤波的研究和应用提供了一个直观、高效、便捷的利器。他以矩阵运算为基础,把计算、可视化、程序设计融合到了一个交互式的工作环境中。尤其是MATLAB工具箱使各个领域的研究人员可以直观方便地进行科学研究与工程应用。其中的信号处理工具箱、图像处理工具箱、小波工具箱等更是为数字滤波研究的蓬勃发展提供了可能。1.3 MATLAB 简介MATLAB是由美国MathWorks公司推出的用于数值计算和图形处理计算系统环境,除了具备卓越的数值计算能力外,它还提供了专业水平的符号计算、文字处理、可视化建模仿真和实时控制等功能。8MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用
9、MATLAB来解算问题要比用C、FORTRAN等语言简捷得多。MATLAB将矩阵运算、数值分析、图形处理、编程技术结合在一起,为用户提供了一个强有力的科学及工程问题的分析计算和程序设计工具,它还提供了专业水平的符号计算、文字处理、可视化建模仿真和实时控制等功能,是具有全部语言功能和特征的新一代软件开发平台。 MATLAB是英文MATrix LABoratory(矩阵实验室)的缩写。概括地讲,整个MATLAB系统由两部分组成,即MATLAB内核及辅助工具箱,两者的调用构成了MATLAB的强大功能。MATLAB语言以数组为基本数据单位,包括控制流语句,函数,数据结构,输入输出及面向对象等特点的高级
10、语言,它具有以下主要特点:8(1) 运算符和库函数极其丰富,语言简洁,编程效率高,MATLAB除了提供和C语言一样的运算符号外,还提供广泛的矩阵和向量运算符。利用其运算符号和库函数可使其程序相当简短,两三行语句就可实现几十行甚至几百行C或FORTRAN的程序功能。 (2) 既具有结构化的控制语句(如for循环,while循环,break语句,if语句和switch语句),又有面向对象的编程特性。 (3) 图形功能强大。它既包括对二维和三维数据可视化,图像处理,动画制作等高层次的绘图命令,也包括可以修改图形及编制完整图形界面的,低层次的绘图命令。 (4)功能强大的工具箱。工具箱可分为两类:功能性
11、工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能,图示建模仿真功能,文字处理功能以及与硬件实时交互的功能。而学科性工具箱是专业性比较强的,如优化工具箱,统计工具箱,控制工具箱,小波工具箱,图象处理工具箱,通信工具箱等。 (5)易于扩充。除内部函数外,所有MATLAB的核心文件和工具箱文件都是可读可改的源文件,用户可修改源文件和加入自己的文件,它们可以与库函数一样被调用。MATLAB 已发展成为适合众多学科,多种工作平台、功能强大的大型软件。在欧美等国家的高校,MATLAB已成为线性代数、自动控制理论、数理统计、数字信号处理、时间序列分析、动态系统仿真等高级课程的基本教学工具。成为攻
12、读学位的本科、硕士、博士生必须掌握的基本技能。在设计研究单位和工业开发部门,MATLAB被广泛的应用于研究和解决各种具体问题。在中国,MATLAB也已日益受到重视,短时间内就将盛行起来,因为无论哪个学科或工程领域都可以从MATLAB中找到合适的功能。1.4 数字信号处理(DSP)器简介21世纪是数字化的时代,随着越来越多的电子产品将数字信号处理作为技术核心,DSP已经成为推动数字化进程的动力。作为数字化重重要的技术之一,DSP无论在其应用的深度还是广度,正在以前所未有的速度向前发展。数字信号处理器,也称DSP芯片,是针对数字信号处理需要而设计的一种具有特殊结构的微处理器,它是现代电子技术、计算
13、机技术和信号处理技术相结合的产物。数字信号处理器由于运算速度快,具有可编程特性和接口灵活的特点,使得它在许多电子产品的研制、开发和应用中,发挥着越来越重要的作用。采用DSP芯片来实现数字信号处理系统更是当前的发展趋势。目前,DSP芯片的发展非常迅速,硬件结构方面主要是向多处理器的并行处理结构、便于外部数据交换的串行总线传输、大容量片上RAM和ROM、程序加密、增加I/O驱动能力、外围电路内装化、低功耗等方面发展。软件方面主要是综合开发平台的完善,使DSP的应用开发更加灵活方便。DSP除了具备普通微处理器所强调的高速运算和控制能力外,针对实时数字信号处理的特点,在处理器的结构、指令系统、指令流程
14、上做了很大的改进,其主要特点如下:10(1) 采用哈佛结构。DSP芯片普遍采用数据总线和程序总线分离的哈佛结构或改进的哈佛结构,比传统处理器的冯. 诺依曼结构有更快的指令执行速度。(2) 采用多总线结构。DSP芯片都采用多总线结构,可同时进行取指令和多个数据存取操作,并由辅助寄存器自动增减地址进行寻址,使CPU在一个机器周期内可多次对程序空间和数据空间进行访问,大大提高了DSP的运行速度。(3) 采用流水线技术。利用流水线结构,加上执行重复操作,就能保证在单指令周期内完成数字信号处理中用得最多的乘法累加运算。(4) 有专用的硬件乘法累加器。(5) 有特殊的DSP指令。(6) 快速的指令周期。(
15、7) 硬件配置强。(8) 支持多处理器结构。(9) 省电管理和低功耗。1.5 DSP芯片开发工具可编程DSP芯片的开发需要一整套完整的软硬件开发工具。通常,DSP芯片的开发工具可以分成代码生成工具和代码调试工具。代码生产工具的作用是将用C或汇编语言编写的DSP程序编译汇编并链接成为可执行的DSP程序;代码调试工具的作用则是对DSP程序及系统进行调试,使之能够达到设计目标。代码生产工具是指将用高级语言、汇编语言或两种语言混合编写的DSP程序转换为可执行的DSP芯片目标代码的工具程序,主要包括汇编器和链接器、C编译器。此外还有一些辅助工具程序,如文件格式转换程序、库生产程序和文档管理程序等。归纳一
16、下,代码生成工具程序主要包括一下几种类型的程序19:C编译器;汇编器和链接器;辅助程序,如文档管理程序和代码格式转换程序等;库文件;RTS头文件;开发DSP芯片,调试工具是必不可少的,TMS320系列DSP芯片的系统集成和调试工具主要有:C/汇编语言源码调试器;初学者工具DSK;软件模拟器(Simulator);评价模块EVM;软件开发系统SWDS;仿真器XDS;(1) C/汇编语言源码调试器C/汇编语言源码调试器是一种工作在PC机上的先进的软件接口,它与调试工具(如软件模拟器、评价模块、软件开发系统、仿真器)混合使用,调试器可以完全控制用C语言或汇编语言编写的程序。用户程序既可以用C语言调试
17、,也可以用汇编语言调试,还可以进行C语言和汇编语言的混合调试,调试器提供了非常友好的用户界面,面向窗口,支持鼠标和菜单式的接口使用户不必记忆复杂的指令,使用十分方便。(2) 初学者工具DSK初学者工具DSK是RTI公司提供给初学者进行DSP编程练习的一套廉价的实时软件调试工具。DSK板上除了有一片DSP芯片之外,还提供了可用于声音输入和输出接口的A/D、D/A接口芯片,它可以与PC机通信,在PC机上汇编后的程序可以通过串行或并行接口下载到DSP芯片的内部RAM执行。此外,DSK板上还将DSP芯片的地址和数据总线引出,便于用户对DSK板进行存储器等硬件资源的扩充,并在DSK硬件的基础上形成用户独
18、立的DSP系统。(3) 软件模拟器软件模拟器是一种模拟DSP芯片各种功能并在非实时条件下进行软件测试的一种调试工具。它不需要目标硬件支持,只需要在计算机上运行,是一种廉价、方便的调试工具。当然由于DSP芯片用软件模拟器实现,运行速度是软件模拟器的一个突出的缺点,软件模拟器DSP芯片的I/O时采用与文件关联的方法来实现,因而调试中所需的I/O可从文件中读取,输出到I/O口的值也可以存储在文件中。软件模拟器的主要特征有:在计算机上执行用户DSP程序;可修改和查看寄存器;可修改和显示数据和程序寄存器,任何时候可进行存储器的修改,也可在程序输入前进行存储器的初始化;可模拟外设,高速缓存及流水线、定时等
19、功能;可计算指令周期数;可编程的断点设置;可在取指令读写存储器及错误条件满足时设置断点;可进行累加器程序计算器,辅助寄存器的跟踪,指令的单步执行,用户可设定中断产生间隔,在遇到非法操作码和无效数据访问时提示错误信息;从文件中执行命令。(4) 评价模块EVM评价模块EVM是一种低成本的开发板,在EVM板上配置了数量的硬件资源,可用来进行DSP芯片评价、性能评估和有限的系统调试。调试接口也采用上述的C/汇编源代码测试器。一般EVM开发板上提供的硬件资源包括电源接口、外设接口、辅助接口等。(5) 软件开发系统SWDS软件开发系统SWDS是一块PC插卡,可提供低成本的评价和实时软件开发。可用来进行实时
20、的软件调试,程序在DSP芯片上实时运行,与仿真器不同的是软件开发系统不提供实时硬件调试功能,因此,涉及目标I/O操作一般用文件I/O代替。(6) 仿真器XDS仿真器XDS即扩展开发系统,可用来进行系统级的集成调试,是进行DSP芯片软件开发的最佳工具。目前主要有两种类型的仿真器:一种是传统的电路仿真器,主要用于早期的TMS320C1x及TMS320C2x两代DSP芯片的仿真;另一种是先进的扫描仿真器,主要用于TMD320C3x及TMS320C2xx/C5x、TMS320C54x/C55x、TMS320C6000等DSP芯片的仿真,在这些DSP芯片上提供了用于仿真的一些信号线,采用传统的电路仿真器
21、对用户板进行硬件仿真时,仿真器的电缆插头必须插入到用户硬件电路中DSP芯片的相应位置,也就是说,仿真电缆的插头端子必须与DSP芯片的端子一一对应。TI的XDS/22仿真器就属于这一类,主要用于TMS320C1x及TMS320C2x等芯片的仿真。扫描仿真器不采用插入仿真的方法,而是通过DSP芯片上提供的几个仿真端子实现仿真功能,这种方法为TI公司所开发,可用来解决高速DSP芯片的仿真。由于高速DSP芯片具有高度并行的结构,快速的指令周期,高密度的封装等特点,采用传统的电路仿真方法很难实现可靠的仿真。扫描仿真消除了传统的电路仿真存在的问题,例如,仿真电缆过长会引起信号失真,仿真插头会引起可靠性差等
22、。用户程序可在目标系统的片内或片外存储器实时运行,而不会因仿真器引入额外的等待状态。DSP芯片内部是通过移位寄存器扫描链实现扫描仿真,这个扫描仿真被外部的穿行口访问。采用扫描仿真,即使芯片已经焊在电路板上也可以进行仿真调试,这对于在生产过程中调试DSP系统带来了极大的方便。集成开发环境CCS(Code Composer Studio)是一种针对TMS320系列DSP的集成开发环境,在Windows操作系统下,采用图形接口界面,提供环境配置、源文件编辑、程序调试、跟踪和分析等工具,可以帮助用户在一个软件环境下完成编辑、编译、链接、调试和数据分析等工作。12CCS有两种工作模式,即软件仿真器和硬件
23、在线编程。软件仿真器工作模式可以脱离DSP芯片,在PC上模拟DSP的指令集和工作机制,主要用于前期算法实现和调试。硬件在线编程可以实时运行在DSP芯片上,与硬件开发板相结合进行在线编程和调试应用程序。CCS的主要功能如下10:(1) 具有可视化代码编辑界面,用户可以通过其界面直接编写C语言程序、汇编语言程序、.cmd文件等. (2) 含有集成代码生成工具,包括汇编器、优化C编译器、连接器等,将代码的编辑、编译、链接和调试等诸多功能集成到一个软件环境中。 (3) 高性能的编辑器支持汇编文件的动态语法加亮显示,使用户很容易阅读代码,发现语法错误。 (4) 工程项目管理工具对用户程序实行项目管理。在
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MATLAB IIR 数字滤波器 设计 DSP 实现 毕业论文 39
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内