DSP课程设计(论文)FIR滤波器程序设计

上传人:仙*** 文档编号:32837929 上传时间:2021-10-16 格式:DOC 页数:23 大小:217.53KB
收藏 版权申诉 举报 下载
DSP课程设计(论文)FIR滤波器程序设计_第1页
第1页 / 共23页
DSP课程设计(论文)FIR滤波器程序设计_第2页
第2页 / 共23页
DSP课程设计(论文)FIR滤波器程序设计_第3页
第3页 / 共23页
资源描述:

《DSP课程设计(论文)FIR滤波器程序设计》由会员分享,可在线阅读,更多相关《DSP课程设计(论文)FIR滤波器程序设计(23页珍藏版)》请在装配图网上搜索。

1、FIR滤波器程序设计沈 阳 工 程 学 院课 程 设 计设计题目: FIR滤波器程序设计 系 别 自动控制工程系 班级 测控本071班 学生姓名 学号 4号 指导教师 职称 教授 起止日期:2010年7月12日起至20010年7月16日止15- -沈阳工程学院课程设计任务书课程设计题目: FIR滤波器程序设计 系 别 自动控制工程系 班级 测控本071 学生姓名 学号 04号 指导教师 职称 教授 课程设计进行地点: 实训F430 任 务 下 达 时 间: 10年 7月12日起止日期: 10年7月12日起至10年7月19日止教研室主任 年 月 日批准1.设计主要内容及要求;编写正弦信号发生器程

2、序。要求:1)研究FIR滤波器原理以及利用DSP实现的方法。 2)编写FIR滤波器的程序。 3)调试程序,观察结果。2.对设计论文撰写内容、格式、字数的要求;(1).课程设计论文是体现和总结课程设计成果的载体,一般不应少于3000字。(2).学生应撰写的内容为:中文摘要和关键词、目录、正文、参考文献等。课程设计论文的结构及各部分内容要求可参照沈阳工程学院毕业设计(论文)撰写规范执行。应做到文理通顺,内容正确完整,书写工整,装订整齐。(3).论文要求打印,打印时按沈阳工程学院毕业设计(论文)撰写规范的要求进行打印。(4). 课程设计论文装订顺序为:封面、任务书、成绩评审意见表、中文摘要和关键词、

3、目录、正文、参考文献。3.时间进度安排;顺序阶段日期计 划 完 成 内 容备注17月12日教师讲解题目,学生查阅相关资料27月13日进行方案论证,确定程序流程和实现方法37月14日编写程序47月15日调试程序57月16日撰写论文,程序验收沈 阳 工 程 学 院 DSP技术与应用实例 课程设计成绩评定表系(部): 自动控制工程系 班级: 测控本71 学生姓名: 指 导 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分调研论证能独立查阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作, 0.25432

4、工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以12) 分加权分合计指 导 教 师 签 名: 年 月 日评 阅 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分查阅文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.35432

5、评阅教师评审成绩(加权分合计乘以8)分加权分合计评 阅 教 师 签 名: 年 月 日课 程 设 计 总 评 成 绩分中文摘要21世纪是数字化的时代,随着信息处理技术的飞速发展,数字信号处理技术逐渐发展成为一门主流技术,它在电子信息、通信、软件无线电、自动控制、仪表技术、信息家电等高科技领域得到了越来越广泛的应用。相对于模拟滤波器,数字滤波器没有漂移,能够处理低频信号,频率响应特性可做成非常接近于理想的特性,且精度可以达到很高,容易集成等,这些优势决定了数字滤波器的应用越来越广泛。同时DSP(数字信号处理器)的出现和FPGA的迅速发展也促进了数字滤波器的发展,并为数字滤波器的硬件实现提供了更多的

6、选择。在数字信号处理应用中,数字滤波器占有十分重要的地位。在信号传输和处理过程中,从接收到的信号中消除或者减弱噪声是十分重要的问题,而数字滤波器是整个数字信号处理系统完成这一目标的重要部分。数字滤波器是一种常用的离散时间系统,其功能就是采取不同的软件或硬件,把输入序列通过一定的运算变换成输出序列。常用的滤波器有无限长单位脉冲响应(IIR)滤波器和有限长单位脉冲响应(FIR)滤波器两种,和 IIR 滤波器相比,FIR 滤波器可以得到严格的线性相位。而且FIR 滤波器可以用非递归方法实现,有限精度的计算不会产生振荡,同时由于量化舍入以及系数的不准确所引起的误差的影响比IIR 滤波器要小得多。再者F

7、IR 滤波器可采用FFT 算法,在相同阶数下,运算速度可以快得多。 关键词 FIR滤波器 ,MATLAB ,DSP 目录中文摘要I1设计主要内容及要求11.1设计题目:11.2设计目的:11.3 基本要求:12 设计方框图23 数字滤波器33.1.数字滤波器的定义33.1.1 数字滤波器分类及区别33.1.2 如何选择FIR滤波器43.2 FIR滤波器43.2.1 FIR滤波器的结构及其特点44 FIR滤波器算法的DSP实现54.1 TM S320C54x系列芯片对FIR滤波器算法的实现54.2 FIR滤波器的DSP实现原理54.2.1 FIR传递函数结构设计54.2.2 FIR滤波器实现方法

8、54.3 用线性缓冲区和直接寻址方法实现FIR滤波器75 FIR滤波器设计的调试与仿真结果85.1 硬件调试中要注意到的问题85.2软件调试中要注意到的问题85.3仿真结果9总结10致谢11参考文献12附录131 设计主要内容及要求1.1 设计题目:FIR滤波器程序设计1.2 设计目的: (1)掌握DSP常用指令、以及汇编程序的基本编写;(2)熟悉FIR数字滤波器的基本实现方法。1.3 基本要求:(1)研究FIR滤波器原理以及利用DSP实现的方法。(2)编写FIR滤波器的程序。(3)调试程序,观察结果。2 设计方框图图2.1 FIR滤波器实现流程图3 数字滤波器3.1数字滤波器的定义数字滤波器

9、是指完成信号滤波处理功能的,用有限精度算法实现的离散时间线性非时变系统,其输入是一组(由模拟信号取样和量化的)数字量,其输出是经过变换(或说处理)的另一组数字量。因此,它本身既可以用数字硬件装配成一台完成能给定运算的专用数字计算机,也可将所需的运算编成程序,让通用计算机来执行。数字滤波器具有稳定性高、精度高、灵活性大等突出优点。随着数字技术的发展,用数字技术实现滤波器的功能愈来愈得到人们的注意和广泛的应用。3.1.1 数字滤波器分类及区别数字滤波器有两类:IIR数字滤波器和FIR数字滤波器。与IIR滤波器相比,FIR有以下优点:(1)FIR可以很容易的设计成“线性相位”(经常是)。简单的说,就

10、是线性相位滤波器延迟输入信号,但是又不会使信号失真。(2) 使用FIR很方便。在大部分的DSP微型处理器上都可以通过一个命令循环完成FIR计算。(3) FIR适合多级应用。有了多级功能,我们可以引发“毁灭”即减少样本率,或是引发“添加”即增加样本率,或是两者都引发。无论是增加还是减 少,FIR滤波器的使用都允许忽略一些计算,因此提供了计算机高效性的特征。相比之下,如果使用IIR滤波器,那么每个输出结果必将是经过了独立的计算, 即使是将被舍去的结果也是如此(所以,将在滤波器找中显示反馈)。(4)FIR有理想的数值属性。实际中,所有的DSP滤波器必须经过“有限-精确”计算才能完成任务。也就是说,有

11、限的字节数。由于IIR反馈的使 用,有限精确计算在IIR中将会引起显著的问题,但是FIR就没有反馈,所以他们可以使用较少的字节完成工作,设计者们也无需解决过多的关于不理想计算的 问题了。(5) FIR也可以通过部分的计算完成工作。与IIR不同的是,FIR经常可以通过使用少于1.0的强度的协同因素完成任务。如果有需要的话, FIR滤波器的整体增益可以在输出时进行调试。当使用固定点的DSP时,这个设计就很贴心。这种设计使得工作变得简单了很多。与IIR相比,FIR有什么缺点:与IIR滤波器相比,FIR滤波器有时需要更多的存储空间和/或计算来完成给出的滤波器响应特征。并且,某些响应3.1.2 如何选择

12、FIR滤波器FIR滤波器的单位脉冲响应有限长,系统不存在非稳定现象,我们总能用因果稳定系统来实现FIR滤波器。FIR的主要不足在于其较好的性能是以较高的阶数为代价换来的,对于相同的设计指标,FIR滤波器所要求的阶数比IIR滤波器高25倍,信号的延迟偏大。因此,在保证相同性能的前提下,尽量降低其阶数是FIR数字滤波器设计的目标之一。IIR滤波器传输函数极点可位于单位圆内的任何地方,因此可以用较低的阶数获得高的选择性,所用的存储单元少,所以经济而效率高。但是这个高效率是以相位的非线性为代价的。选择性越好相位特性越差,而现代图像、语声、数据通信对线性相位的要求是普遍的,远高于过去的模拟通信。由于这个

13、原因,促使具有线性相位的FIR数字滤波器得到大力发展和广泛应用。3.2 FIR滤波器FIR滤波器是有限长单位冲击响应滤波器,在结构上是非递归型的。它可以在幅度特性随意设计的同时,保证精确严格的线性相位。线性相位特性在实际应用中非常重要,如在数据通信、图像处理、语音信号处理等领域,往往都要求具有线性相位特性。3.2.1 FIR滤波器的结构及其特点有限冲激响应(FIR)滤波器的基本结构是一个分节的延时线 ,把每一节的输出加权累加 ,得到滤波器。其横截型FIR滤波器的差分方程为 (3.1)对式(3.1)进行Z变换,整理后可以得到FIR滤波器的传递函数为 (3.2)图3.1所示是FIR滤波器的一般结构

14、z-1z-1z-1z-1x(n)x(n-1)x(n-N+1)x(n-2)h0h1h2hN-2hN-1y(n)图3.1 FIR滤波器结构图此 FIR 滤波器有几个特点:系统的单位冲激响应 h(n)在有限个 n 值处不为零;系统函数 H(z)在z0 处收敛,在z0 处只有零点,有限 z平面只有零点,而全部极点都在 z=0 处;结构主要是非递归结构,没有输出到输入的反馈。它的单位脉冲响应h(n)是一个有限长序列。如果h(n)是实数,且满足偶对称或奇对称的条件,即h(n)=h(N-1-n)或 h(n)=-h(N-1-n),则滤波器具有线性相位特性。偶对称线性相位FIR滤波器(N为偶数)的差分方程表达式

15、为: (3.3)线性相位FIR滤波器使用的最多的FIR滤波器。FIR 滤波算法实际上是一种乘法累加运算。 它不断输入样本,经延时,乘法累加,再输出滤波结果y(n)。4 FIR滤波器算法的DSP实现4.1 TM S320C54x系列芯片对FIR滤波器算法的实现TM S320C54x系列芯片在指令集和硬件结构上对滤波器算法,数字滤波滤波器是一种乘法累加运算,以往的通用处理器或单片机在进行此类乘加运算的时候,都会耗费大量的 CPU 和总线资源。DSP 作为专用信号处理芯片,它在结构上针对数字信号处理的特点进行了改进和优化,并且增加了特殊的指令专门用于数字处理。首先是将数据区的两个数相乘以后,再与累加

16、器中的值累加,运算结果仍保留于累加器中,而为下一次操作准备;其次,在硬件上设计了间接寻址时的循环寻址功能,即将滤波器系数保存于一个可循环寻址的数据缓冲区,寻址指针由低地址自动增长,当达到缓冲区顶部时, 自动返回低地址重新寻址,这样配合单指令重复指令RPT,就可以快速实现卷积操作。4.2 FIR滤波器的DSP实现原理4.2.1 FIR传递函数结构设计由 (2-1)式可知,FIR滤波器的冲激响应为 h(0) , h(1) , , h(N - 1)。x(n) 表示滤波器在n时刻的输入,则n时刻的输出为:y(n) = h(0) x(n) + h(1) x(n -1) + + h(N - 1) xn -

17、 (N - 1) 这是一个乘、加的过程 ,可以使用 DSP中的 MAC指令实现该运算。4.2.2 FIR滤波器实现方法TMS320C54x片内没有I/O资源,CPU通过外部译码可以寻址64KWI/O单元。有两条指令实现输入和输出:PORTR PA,Seme ;PASemePORTW Seme,PA ;PASeme这两条指令至少要2个字和2个机器周期。如果I/O设备是慢速器件,则需要插入等待状态。在DSP芯片中实现(延时一个采样周期)算法是十分方便的,常用的方法有以下两种。(1)用线性缓冲区法实现线性缓冲区法,又称延迟线法。其特点是:1)对于 N级的FIR 滤波器,在数据存储区中开辟一个称之为滑

18、窗的N个单元的缓冲区,存放最新的 N个输入样本;2)从最老的样本开始,每读一个样本后,将此样本向下移位,读完最后一个样本后,输入最新样本至缓冲区的顶部。上述过程可以用N=6的线性缓冲区存储器图来说明,如图3.1所示。图中线性缓冲区顶部是储存器的低地址单元,底部为高地址单元,参看图4.1(a),当第一次执行时,由ARx指向线性缓冲区的底部,并开始取数,运算。每次乘法累加运算之后,还要将该数据向下(高地址)移位。求得y(n)以后,从I/O 口输入一个新数据x(n+1)至线性缓冲区的顶部单元,再将ARx指向底部单元,开始第二次执行,如图4.1(b)所示。之后,再计算y(n+2) 数据存储器 数据存储

19、器 数据存储器x(n+2)x(n+1)x(n)x(n-2)x(n-3)x(n-1)x(n-3)x(n+1)x(n)x(n-1)x(n-2)x(n-4)x(n)x(n-1)x(n-2)x(n-4)x(n-5)x(n-3)顶部 PORTR PORTW *ARx *ARx- *ARx- *ARx- (a) (b) (c)图4.1 N=6的线性缓冲区存储器图(2)用循环缓冲区法实现 循环缓冲区法有如下三个特点:A、对于 N级的FIR 滤波器,在数据存储区中开辟一个也称为滑窗的N个单元的缓冲区,存放最新的 N个输入样本;B、每次输入新的样本时,以新样本改写滑窗中的最老的数据,而滑窗中的其它数据不需要移动

20、;C、利用片内BK(循环缓冲区长度)寄存器对滑窗进行间接寻址,循环缓冲区地址首尾相邻。虽然循环缓冲区中新老数据不很直接明了,但是利用循环缓冲区实现的有点还是很明显的:它不需要移动数据,不存在一个机器周期中要求能够进行一次读和一次写的数据存储器,因而可将循环缓冲区定位在数据存储器的任何位置(线性缓冲区要求定位在DARAM中)。所以,在可能的情况下,建议尽量采用循环缓冲区。因为本次设计输入样本N=5个,所以采用线性缓冲区和直接寻址的方法来进行FIR滤波器的实现。4.3 用线性缓冲区和直接寻址方法实现FIR滤波器 在数据存储器中存放系数h0h4,并设置线性缓冲区存放输入数据,如图3.2所示 数据存储

21、器yy(n)XNx(n)XNM1x(n-1)XNM2x(n-2)XNM3x(n-3)XNM4x(n-4)H0h0H1h1H2h2H3h3H4h4图4.2 直接寻址线性缓冲区数据分配5 FIR滤波器设计的调试与仿真结果5.1 硬件调试中要注意到的问题在本系统的硬件调试中主要测试步骤如下:(1)首先测量电路板的电源和地是否有短路现象,电路板上所采用器件多为小封装器件,管脚间距小,容易出现短路现象,焊接完成后要认真检查。(2)系统上电检测,上电前应该首先检查电源的正负极性及输入电压的幅度,然后上电。上电后应快速检测电路板上主要电源芯片的输出电压和DSP 内核电压,以免损坏电路板上器件。(3)检测系统

22、的复位信号是否工作正常,系统在复位后部分器件会检测自身的工作状态。(4)用示波器查看系统中主要的时钟信号的波形,包括DSP 输入时钟信号、DSP 输出时钟信号、ADC 和DAC 的系统时钟信号及帧同步时钟信号(需要结合DSP 的开发环境和仿真器进行测试)。(5)测量所准备的测试信号源的工作电压和工作频率是否在系统的允许范围内。5.2软件调试中要注意到的问题(1)定点数的定标在定点 DSP 芯片中,采用定点数进行数值运算,其操作数一般采用整型数来表示。在滤波器的实现过程中,考虑到在数字信号处理中的大量运算是乘法和累加,应尽量采用纯整数或纯小数运算,即全部变量都用 Q0 或 Q15 格式。这样做的

23、好处是操作简单、编程方便。 (2)计算的精度和结果溢出在FIR 数字滤波器的实现中, 一个必须注意的问题是计算的精度和结果溢出问题。由于在滤波器设计时, 滤波器的系数都是小数, 为了获得较高的精度和整数化系数,一般都要对求出来的系数乘一个较大的数, 然后再调整。这样导致在计算中有可能累加器溢出;另一个问题是计算后累加器中的结果数值为32 位, 而物理的存储器位数高16位, 在存储处理结果时, 通常的做法是将低16 位结果直接丢弃不用, 只取高16位作为计算结果, 但这样做带来的后果是精度降低。因而在考虑滤波器设计时, 必须综合考虑输入信号的幅度, 并仔细分析中间值的大小, 调整滤波器的系数,

24、在不影响计算速度的情况下, 提高计算精度。5.3仿真结果 FIR滤波器的设计方法主要有窗函数法和频率采样法,其中,窗函数法是最基本的方法。一般使用的窗函数法有Hanning窗、Blackman窗和Kaiser窗等。利用上述窗函数,可以利用Matlab工具很方便地设计出逼近理想特性的FIR滤波器,然后将此FIR系数放入DSP程序中。图5.1 仿真图总 结期末考试虽然结束了,但是我们不能放松,一周的DSP课程设计,让我们有了更多的收获,课设的过程虽然是艰辛的,但是我们收获很多,首先,我们再一次的加深巩固了对已有的知识的理解及认识;其次,我们将课本知识运用到了实际设计,使得所学知识在更深的层次上得到

25、了进一步深化虽然一周的时间很短,但在学习的过程中,我们收获到了许多新的知识。通过在图书馆查阅资料,对本来不熟悉的知识有了进一步了解。在开始设计时,还是遇到了很多困难。一些细节方面的问题,不断出现。随着时间推移,在老师的讲解,和同学讨论的共同努力下,还是完成了整个设计。我觉得每一次课程设计都是对我们的一个锻炼,都是对能力的一种提升。这次设计,涉及到很多有关于数字信号处理方面的知识,所以我们在做DSP设计的同时,也复习了数字信号处理方面的知识,巩固了所学,又获得了新知。 通过老师的指导,同学的帮助和在图书馆查找资料,借阅大量图书,和自主学习,我学到了许多知识,并增加了以后对DSP学习的信心。致 谢

26、感谢我的指导老师吕老师在此次课程设计中给予我热情而耐心的指导。吕老师不仅在我的开始毫无头绪时给了我很多提示,纠正了我许多错误,还指导了我应该去查找哪些方面的资料去完善这次设计,弥补出现的设计漏洞。使我的设计有一个明确的主导思想,能够顺利而有条不紊地进行。其次我要感谢我的同学们,无论是否和我一组的同学,都热心的给与我很多帮助。在我设计出现障碍不能继续进行的时候,通过和他们一起讨论研究,最终攻克了许多难题,并且因为交流思想心得,也学到了许多新知识。最后感谢学校图书馆给我们提供了很丰富的资源,可以让我们去查找资料,开扩了眼界,也提高了我们的自学能力。由于知识水平的局限和时间的仓促,设计中可能会存在着

27、一些不足,我真诚的接受老师和同学的批评和指正.。最后再次衷心感谢老师的悉心指导和同学们的热心帮助! 参考文献1赵红怡. DSP技术与应用实例.北京:电子工业出版社.第二版,20082靳希,杨尔滨,赵玲.信号处理原理与应用.北京:清华大学出版社. 20043雷勇.DSP系统设计与实践.北京:电子工业出版社.20044张长森.数字信号处理.北京:中国电力出版社.2007附 录 主程序 .title yw.asm .mmregsSTACK .usect STACK,10H .def _main .bss y,5XN .usect XN,1XNM1 .usect XN,1XNM2 .usect XN,

28、1XNM3 .usect XN,1XNM4 .usect XN,1H0 .usect H0,1H1 .usect H0,1H2 .usect H0,1H3 .usect H0,1H4 .usect H0,1 .data table: .word 7FFFh .word 0 .word 0 .word 0 .word 0 .word 1*32768/10 .word -3*32768/10 .word 5*32768/10 .word -3*32768/10 .word 1*32768/10 .text_main: SSBX FRCT STM #XN,AR1 RPT #9 MVPD table,

29、*AR1+ STM #XN+4,AR3 STM #H0+4,AR4 STM #5,BK STM #-1,AR0 LD #XN,DP STM #y,AR2 FIR1: LD XNM4,T MPY H4,A LTD XNM3 MAC H3,A LTD XNM2 MAC H2,A LTD XNM1 MAC H1,A LTD XN MAC H0,A STH A,*AR2+ ST #0H,XN B FIR1 .END Cmd程序MEMORY PAGE 0: EPROM: org=0E000H len=1000H PAGE 1: SPRAM: org=0060H len=0020H DARAM: org=0080H len=1380HSECTIONS .text:EPROM PAGE 0 .data:EPROM PAGE 0 .bss: SPRAM PAGE 1 x : align (8) DARAM PAGE 1 h : align (8) DARAM PAGE 1

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!