您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 冶金工业 > 基于DSP的FIR滤波器的设计报告
学号成绩《DSP技术》课程论文题目数字滤波器的DSP实现作者班级院别专业完成时间2011年6月15日评语-1-目录1概述…………………………………………………………………21.1数字滤波器的研究现状………………………………………………………21.2论文主要完成的工作…………………………………………………………22系统硬件设计………………………………………………………32.1系统设计方案…………………………………………………………………32.2主控模块………………………………………………………………………53系统软件设计………………………………………………………63.1软件整体设计…………………………………………………………………63.2测量模块………………………………………………………………………104系统测试与总结……………………………………………………104.1系统测试………………………………………………………………………104.2总结体会………………………………………………………………………12参考文献………………………………………………………………12附录……………………………………………………………………13-2-1概述1.1数字滤波器的研究现状20世纪60年代起由于计算机技术、集成工艺和材料工业的发展,滤波器发展上了一个新台阶,并且朝着低功耗、高精度、小体积、多功能、稳定可靠和价廉方向努力,其中小体积、多功能、高精度、稳定可靠成为70年代以后的主攻方向。导致RC有源滤波器、数字滤波器、开关电容滤波器和电荷转移器等各种滤波器的飞速发展,到70年代后期,上述几种滤波器的单片集成已被研制出来并得到应用。80年代,致力于各类新型滤波器的研究,努力提高性能并逐渐扩大应用范围。90年代至现在主要致力于把各类滤波器应用于各类产品的开发和研制。当然,对滤波器本身的研究仍在不断进,在国内外的研究中,设计FIR滤波器所涉及的乘法运算方式有:并行乘法、位串行乘法和采用分布式算法的乘法。并行乘法运行速度快,但占用的硬件资源极大。如果滤波器的阶数增加,乘法器位数也将变大,硬件规模将变得十分庞大。位串行乘法器的实现方法主要是通过对乘法运算进行分解,用加法器来完成乘法的功能,也即无乘法操作的乘法器。位串行乘法器使得乘法器的硬件规模达到了最省,但是由于是串行运算,使得它的运算周期过长,运算速度与硬件规模综合考虑时不是最优的。1.2论文主要完成的工作本文主要应用软件设计FIR数字滤波器,并对所设计的滤波器进行仿真。应用DSP集成开发环境—CCS调试汇编程序,用TMS320C5402来实现了FIR数字滤波。具体内容有:(1)研究数字滤波器的基本理论和实现方法,从原理上理解和分析数字滤波器,并通过对数字滤波器的结构和设计方法的学习,为设计数字滤波器奠定理论基础。(2)研究FIR数字滤波器的设计方法,及如何用滤波器设计工具设计各种类型的数字滤波器,并进行仿真和分析。(3)对数字滤波器的DSP实现进行研究。-3-2系统硬件设计2.1系统设计方案FIR滤波器的设计方法主要有窗函数设计法和频率抽样设计法等,其中窗函数设计法是最基本的设计方法。在设计FIR滤波器中,一个最重要的计算就是加窗,采用矩形窗是最直接和简便的方法,但采用矩形窗存在较大的Gibbis效应,且矩形窗的第一旁瓣与主瓣相比仅衰减13dB,因此实际设计中一般采用其他窗函数。主要介绍几种常用的窗函数和频率抽样设计法等。利用窗函数设计FIR(一)窗函数法的基本思想窗函数设计的基本思想是要选取某一种合适的理想频率选择性滤波器,然后将它的脉冲响应截断以得到一个线性相位和因果的FIR滤波器。因此这种方法的重点在于选择某种合适的窗函数和一种理想滤波器。对于给定的滤波器技术指标,选择滤波器长度和具有最窄主瓣宽度和尽可能小的旁瓣衰减的某个窗函数。任何数字滤波器的频率响应都是周期函数,它的傅立叶级数展开式为:)21()]21(sin[)(21)()()(2010LnLnwdweeHnhenheHcjwnjwddjwNndjw其中(2.1)(二)几种常用的窗函数工程中比较常用的窗函数有:矩形窗函数、三角窗函数、汉宁窗函数、海明窗函数、布莱克曼窗函数和凯塞窗函数。窗函数的选择原则是:(1)具有较低的旁瓣幅度,尤其是第一旁瓣幅度:(2)旁瓣幅度下降速度要大,以利增加阻带衰减;(3)主瓣的宽度要窄,以获得较陡的过渡带。通常上述三点很难同时满足。当选用主瓣宽度较窄时,虽然得到较陡的过渡带,但通带和阻带的波动明显增加;当选用最小的旁瓣幅度时,虽能得到匀滑的幅度响应和较小的阻带波动,但过渡带加宽。因此,实际选用的窗函数往往是它们的折衷。在保证主瓣宽度达到一定要求的条件下,适当牺牲主瓣宽度来换取旁瓣波动的减少。-4-表2.1几种常用的窗函数对比窗函数旁瓣峰值衰减过渡带阻带最小衰减矩形窗-13N4-21三角形-27N8-25汉宁窗-31N8-44海明窗-41N8-53布莱克曼窗-57N12-74凯瑟窗-57N10-80比较可得:凯塞窗可提供变化的过渡带宽,通过改变B的值可达到最陡的过渡带:凯塞窗具有与海明窗相匹敌的特性,通过调整p的值,可将凯塞窗完全等价海明窗;凯塞窗最大旁瓣值比主瓣约低80dB,在所有的窗函数中旁瓣抑制度最高[2]。2.2.2用频率抽样法设计FIR滤波器所谓频率抽样法就是从频域出发,根据频域的采样定理,对给定的理想滤波器的频域响应进行等间隔采样。)()()2(kHeHdNkwjwd(2.2)其中k=0,1,2……N-1把)(kHd当作待设计的滤波器频率响应的采样值)(kH,通过下式可以求出滤波器的系统函数)(zH和频率响应)(jweH:1011)()1)(1()(NkkNNZWkHZNZH(2.3)10)2()()(NkjwkNwkHeH(2-3)(2.4)其中,)(w是一个内插函数:-5-NjNNjweWewwNNw221)2sin()2sin(1)((2.5)由于频谱的有限个采样值恢复出来的频率响应实际上是对理想频率响应的逼近,因此,这种方法必然有一定的逼近误差。若被逼近的频率响应比较平滑,则各采样点之间的逼近误差较小;反之,则逼近误差较大。2.2主控模块TMS320C5402的主要特性:TMS320C5402是TI公司于1996年推出的一种定点DSP芯片,采用先进的修正哈佛结构和8总线结构,使处理器的性能大大提高。其独立的程序和数据总线,允许同时访问程序存储器和数据存储器,实现高速并行操作。例如,可以在一条指令中,同时执行3次读操作和1次写操作。TMS320C5402的运行速度为40MIPS(每秒执行40百万条指令)。指令周期为25ns。此外,还可以在数据总线与程序总线之间相互传送数据。从而使处理器具有在单个期内同时执行算术运算,逻辑运算,位移操作,乘法累加运算以及访问程序和数据存储器的强大功能。包括:CPU,总线,存储器,在片外围电路,串行口,以及外部总线接口等部分组成。1CPU40位算数逻辑运算单元(ALU),包括1个40位桶形移位寄存器和2个独立的40位累加器。�17位X17位并行乘法器,与40位专用加法器相连,用于非流水线式单周期乘法/累加(MAC)运算。比较,选择,存储单元(CSSU),用于加法/比较选择。双地址生成器,包括8个辅助寄存器和2个辅助寄存器算数运算单元(ARAU)。2、总线结构程序总线(PB)传送取自程序存储器的指令代码和立即数。3条数据总线(CB,DB和EB)将内部各单元连接在一起。4条地址总线(PAB,CAB,DAB和EAB)传送执行指令所需的地址。3存储器192K字可寻址存储空间(64K字程序存储器,64K字数据存储器,以及64K字I/O空间)。片内2K字ROM。片内10K字双存取RAM。4在片外围电路用来周期产生中断的定时器。8位主机接口(HPI),用来与主设备或主处理器接口。一个自动缓冲串口(BSP)和时分多路串行口(TPM),都可用作标准同步串口。-6-图1TMS320C5402DSP的内部硬件组成框图3系统软件设计3.1软件整体设计总体设计方案-7-FIR滤波器的实现结构有以下几种形式(1)直接型结构该种结构实现时需N个乘法器、N-1个延迟器和N-1个加法器。结构图如下:图3.1直接型结构图(2)级联型结构FIR系统函数H(z)是z-1的N-1次多项式,其分解为实系数二阶因子的乘积形式为:H(z)=Nck1(β0k+β1kz-1+β2kz-2)根据上式就可画出级联结构如下图。其中Nc为N/2的最大整数。该结构即是把H(z)的共轭零点或两个单个零点组成基本二阶节,H(z)为基本二阶因子的子系统函数积。图3.2级联型结构图从图3.2中可看出,每个二阶因子用直接型实现,每一节控制一对零点,便于传输零点的控制。但系数β1k的个数比h(n)的个数多,其乘法次数比直接型多。(3)线性相位型结构线性相位特性是指滤波器对不同频率的正弦波所产生的相移和正弦波的频率成直线关系。在滤波器通带内的信号通过滤波器后,除了由相频特性的斜率决定的延迟外,可以不失真地保留通带以内的全部信号。线性相位的因果的FIR系统的单位取样响应具有如下特性h(n)=±h(N-1-n)当N为偶数时,式变为-8-H(z)=120-Nnh(n)[z-n+z-(N-1-n)]当N为奇数时,此式为H(z)=120-Nnh(n)[z-n+z-(N-1-n)]+h(21N)z-(21n)由上面两个式子可知:实现直接形式的结构网络只需要N/2(N为偶数)或(N十1)/2次乘法(N为奇数),利用h(n)的对称比直接卷积形式少用一半的乘法器。图3.3N为偶数,线性相位结构图3.4N为奇数,线性相位结构(4)频率取样结构系统函数H(z)在单位圆上作N等分取样的值得到h(n)的离散傅立叶变换值H(k):H(k)=H(WkN-)=|H(k)|ekj)(=10Nnh(k)eknNjπ2根据内插公式,得H(z)=N1(1-z-N)10NkzWkNkH11)(上式即为频率取样结构的系统函数其中,WkN-=ekNjπ2,H(k)为单位圆上的频率取样值。可见,该系统是由一个子FIR系统(1-z-N)和一个子IIR系统-9-10NkzWkNkH11)(级联组成的。图3.5频率取样结构图FIR滤波器的实现方法数字滤波器的实现方法一般有以下几种(1)用计算机软件实现软件实现方法即是在通用的微型计算机上用软件实现。利用计算机的存储器、运算器和控制器把滤波所要完成的运算编成程序通过计算机来执行,软件可由使用者自己编写,也可以使用现成的。但是这种方法速度慢,难以对信号进行实时处理,虽然可以用快速傅立叶变换算法来加快计算速度,但要达到实时处理要付出很高的代价。(2)采用DSP(DigitalSignalProcessing)处理器来实现DSP处理器是专为数字信号处理而设计的,它的主要数字运算单元是一个乘累加器,能够在一个机器周期内完成一次乘累加运算,配有适合于信号处理的指令,具备独特的循环寻址和倒序寻址能力。这些特点都非常适合数字信号处理中的滤波器设计的有效实现,并且它速度快,成本低。用DSP芯片实现数字滤波除了具有稳定性好、精确度高、不受环境影响外,还具有灵活性好的特点。(3)采用固定功能的专用信号处理器实现专用信号处理器采用专用集成电路ASIC来实现,适用于过程固定而又追求高速的信号处理任务,是以指定的算法来确定它的结构,使用各种随机逻辑器件组成的信号处理器。它们体积小、保密性好,具有极高的性能,然而灵活性差。(4)用FPGA等可编程器件实现使用相关开发工具和VHDL等硬件开发语言,通过软件编程用硬件实现特定的数字滤波算法。这一方法由于具有通用性的特点并可以实现算法的并行运算,无论是作为独立的数字信号处理,还是作为DSP芯片的协作处理器都是比较活跃-10-的研究领域。可以采用DSP或FPGA来实现硬件电
本文标题:基于DSP的FIR滤波器的设计报告
链接地址:https://www.777doc.com/doc-4942095 .html