数字滤波器的设计课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字信号及MATLAB实现课程设计报告数字滤波器的设计
学院:电气学院
班级:
姓名:
学号:
指导老师:
2014年1月
《数字信号处理及MA TLAB实现》课程设计
目录
目录 (1)
第一章绪论 (2)
1.1.1 数字滤波器的优越性 (2)
1.1.2 数字滤波器的实现方法 (3)
1.1.3主要研究内容 (4)
第二章摘要 (5)
第三章报告正文 (6)
第一节 IIR滤波器的设计 (6)
3.1.1流程框图 (6)
3.1.2 设计步骤 (6)
3.1.3 IIR数字滤波器的设计方法 (7)
3.1.4 MATLAB程序 (9)
3.1.5 运行结果及分析: (10)
第二节 matlab FDATool界面数字滤波器设计 (11)
3.2.1 Faldstool (11)
3.2.2 用Fdatool进行带通滤波器设计 (13)
第三节系统对象滤波器设计 (15)
3.3.1设定系统的仿真对象 (15)
3.3.2系统对象滤波器设计方法 (15)
3.3.3 MATLAB程序仿真设计 (15)
第四章总结 (21)
参考文献 (22)
第一章绪论
1.1.1 数字滤波器的优越性
数字信号处理由于具有精度高、灵活性强等优点,已广泛应用于图像处理、数字通信、雷达等领域。数字滤波技术在数字信号处理中占有极其重要的地位,数字滤波器根据其单位脉冲响应可分为IIR(无限长冲激响应滤波器)和FIR(有限长冲激响应滤波器)两类。IIR滤波器可以用较少的阶数获得很高的选择特性,但在有限精度的运算中,可能出现不稳定现象,而且相位特性不好控制。数字滤波器本质上是一个完成特定运算的数字计算过程,也可以理解为是一台计算机。
数字滤波器又分为无限冲激响应滤波器(IIR)和有限冲激响应滤波器(FIR)。FIR滤波器具有不含反馈环路、结构简单以及可以实现的严格线性相位等优点,因而在对相位要求比较严格的条件下,采用FIR数字滤波器。同时,由于在许多场合下,需要对信号进行实时处理,因而对于单片机的性能要求也越来越高。由于DSP控制器具有许多独特的结构,例如采用多组总线结构实现并行处理,独立的累加器和乘法器以及丰富的寻址方式,采用DSP控制器就可以提高数字信号处理运算的能力,可以对数字信号做到实时处理。DSP(数字信号处理器)与一般的微处理器相比有很大的区别,它所特有的系统结构、指令集合、数据流程方式为解决复杂的数字信号处理问题提供了便利,本文选用TMS320C5509作为DSP处理芯片,通过对其编程来实现IIR滤波器。
对数字滤波器而言,从实现方法上,有FIR滤波器和无限冲激响应(IIR)滤波器之分。由于FIR滤波器只有零点,因此这一类系统不像IIR系统那样易取得比较好的通带与阻带衰减特性。但是IIR系统与传统的通过硬件电路实现的模拟滤波器相比有以下优点:
1、单位冲击响应有无限多项;
2、高效率(因为结构简单、系数小、乘法操作较少)
3、与模拟滤波器有对应关系
4、可以解析控制,强制系统在指定位置为零点
5、有极点,在设计时要考虑稳定性
6、具有反馈,可能产生噪声、误差累积
1.1.2 数字滤波器的实现方法
目前数字滤波器的主要实现方法有:
1.在通用的微型计算机上用软件实现。软件可以是自己编写的,也可以使用现成的软件包,这种方法的缺点是速度太慢,不能用于实时系统,只能用于教学和算法的仿真研究。比如用MATLAB就几乎可以实现所有数字滤波器的仿真。而且在MATLAB下的部分仿真程序还可以通过转化为C语言,再通过DSP的C 编译器直接在DSP硬件上运行。
2.用DSP(Digital Signal Processing)处理器实现
DSP处理器是专为数字信号处理而设计的,如TI公司的TMS320C54x系列,AD公司的ADSP2IX,ADSP210X系列等。它的主要数字运算单元是一个乘累加器(Multiply-accumulator,MAC),能够在一个机器周期内完成一次乘累加运算,配有适合于信号处理的指令,具备独特的循环寻址和倒序寻址能力。这些特点都非常适合数字信号处理中的滤波器设计的有效实现,并且它速度快、稳定性好、编程方便。
3.用固定功能的专用信号处理器实现
专用信号处理器采用专用集成电路ASIC(Application Specific Integrated Circuits)实现,适用于过程固定而又追求高速的信号处理任务,是以指定的算法来确定它的结构,使用各种随机逻辑器件组成的信号处理器。它们体积小、保密性好,具有极高的性能,但灵活性差。
4.用FPGA等可编程器件来开发数字滤波算法。由于FPGA产品的迅速发展,人们可以利用Atera、Xilinx等产品,使用其相关开发工具和VHDL等硬件开发语言,通过软件编程用硬件实现特定的数字滤波算法。这一方法由于具有通用性的特点并可以实现算法的并行运算,无论是作为独立的数字信号处理器,还是作为DSP芯片的协处理器,目前都是比较活跃的研究领域。
比较以上方法可见:可以采用MATLAB等软件来学习数字滤波器的基本知识,计算数字滤波器的系数,研究算法的可行性,对数字滤波器进行前期的设计和仿真。而后,用DSP处理器或FPGA进行数字滤波的硬件实现。本课题设计的FIR数字滤波器就是用MATLAB进行设计和仿真,用DSP处理器来实现。
1.1.3主要研究内容
本文主要研究了数字滤波器的基本理论和实现方法。接着研究分析了如何利用MATLAB仿真软件来设计出符合各种要求的数字滤波器,并对所设计的滤波器进行仿真得到系数,本文还应用DSP集成开发环境——CCS调试汇编程序,为后面在DSP上实现提供必要的数据。
本课题选择在TM320C5509 DSP综合实验开发系统平台上进行开发。最后采用窗函数法在CCS环境下,利用MATLAB仿真得到的滤波器系数,编程实现IIR数字滤波器,得出滤波结果波形,并对结果进行分析与总结。