基于TMS320C54x的FIR数字滤波器设计_第1页
基于TMS320C54x的FIR数字滤波器设计_第2页
基于TMS320C54x的FIR数字滤波器设计_第3页
基于TMS320C54x的FIR数字滤波器设计_第4页
基于TMS320C54x的FIR数字滤波器设计_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、吉林建筑大学城建学院电气信息工程系课程设计第1章 绪论1.1数字滤波器的研究背景与意义 当今,数字信号处理(DSP:Digtal Signal Processing)技术正飞速发展,它不但自成一门学科,更是以不同形式影响和渗透到其他学科:它与国民经济息息相关,与国防建设紧密相连;它影响或改变着我们的生产、生活方式,因此受到人们普遍的关注。数字化、智能化和网络化是当代信息技术发展的大趋势,而数字化是智能化和网络化的基础,实际生活中遇到的信号多种多样,例如广播信号、电视信号、雷达信号、通信信号、导航信号、射电天文信号、生物医学信号、控制信号、气象信号、地震勘探信号、机械振动信号、遥感遥测信号,等等

2、。上述这些信号大部分是模拟信号,也有小部分是数字信号。模拟信号是自变量的连续函数,自变量可以是一维的,也可以是二维或多维的。大多数情况下一维模拟信号的自变量是时间,经过时间上的离散化(采样)和幅度上的离散化(量化),这类模拟信号便成为一维数字信号。因此,数字信号实际上是用数字序列表示的信号,语音信号经采样和量化后,得到的数字信号是一个一维离散时间序列;而图像信号经采样和量化后,得到的数字信号是一个二维离散空间序列。数字信号处理,就是用数值计算的方法对数字序列进行各种处理,把信号变换成符合需要的某种形式。例如,对数字信号经行滤波以限制他的频带或滤除噪音和干扰,或将他们与其他信号进行分离;对信号进

3、行频谱分析或功率谱分析以了解信号的频谱组成,进而对信号进行识别;对信号进行某种变换,使之更适合于传输,存储和应用;对信号进行编码以达到数据压缩的目的,等等。数字滤波技术是数字信号分析、处理技术的重要分支。无论是信号的获取、传输,还是信号的处理和交换都离不开滤波技术,它对信号安全可靠和有效灵活地传输是至关重要的。在所有的电子系统中,使用最多技术最复杂的要算数字滤波器了。数字滤波器的优劣直接决定产品的优劣。1.2数字滤波器的应用现状与发展趋势在信号处理过程中,所处理的信号往往混有噪音,从接收到的信号中消除或减弱噪音是信号传输和处理中十分重要的问题。根据有用信号和噪音的不同特性,提取有用信号的过程称

4、为滤波,实现滤波功能的系统称为滤波器。在近代电信设备和各类控制系统中,数字滤波器应用极为广泛,这里只列举部分应用最成功的领域。(1) 语音处理 语音处理是最早应用数字滤波器的领域之一,也是最早推动数字信号处理理论发展的领域之一。该领域主要包括5个方面的内容:第一,语音信号分析。即对语音信号的波形特征、统计特性、模型参数等进行分析计算;第二,语音合成。即利用专用数字硬件或在通用计算机上运行软件来产生语音;第三,语音识别。即用专用硬件或计算机识别人讲的话,或者识别说话的人;第四,语音增强。即从噪音或干扰中提取被掩盖的语音信号。第五,语音编码。主要用于语音数据压缩,目前已经建立了一系列语音编码的国际

5、标准,大量用于通信和音频处理。近年来,这5个方面都取得了不少研究成果,并且,在市场上已出现了一些相关的软件和硬件产品,例如,盲人阅读机、哑人语音合成器、口授打印机、语音应答机,各种会说话的仪器和玩具,以及通信和视听产品大量使用的音频压缩编码技术。(2) 图像处理数字滤波技术以成功地应用于静止图像和活动图像的恢复和增强、数据压缩、去噪音和干扰、图像识别以及层析X射线摄影,还成功地应用于雷达、声纳、超声波和红外信号的可见图像成像。(3) 通信在现代通信技术领域内,几乎没有一个分支不受到数字滤波技术的影响。信源编码、信道编码、调制、多路复用、数据压缩以及自适应信道均衡等,都广泛地采用数字滤波器,特别

6、是在数字通信、网络通信、图像通信、多媒体通信等应用中,离开了数字滤波器,几乎是寸步难行。其中,被认为是通信技术未来发展方向的软件无线电技术,更是以数字滤波技术为基础。(4) 电视数字电视取代模拟电视已是必然趋势。高清晰度电视的普及指日可待,与之配套的视频光盘技术已形成具有巨大市场的产业;可视电话和会议电视产品不断更新换代。视频压缩和音频压缩技术所取得的成就和标准化工作,促成了电视领域产业的蓬勃发展,而数字滤波器及其相关技术是视频压缩和音频压缩技术的重要基础。(5) 雷达雷达信号占有的频带非常宽,数据传输速率也非常高,因而压缩数据量和降低数据传输速率是雷达信号数字处理面临的首要问题。告诉数字器件

7、的出现促进了雷达信号处理技术的进步。在现代雷达系统中,数字信号处理部分是不可缺少的,因为从信号的产生、滤波、加工到目标参数的估计和目标成像显示都离不开数字滤波技术。雷达信号的数字滤波器是当今十分活跃的研究领域之一。(6) 声纳声纳信号处理分为两大类,即有源声纳信号处理和无源声纳信号处理,有源声纳系统涉及的许多理论和技术与雷达系统相同。例如,他们都要产生和发射脉冲式探测信号,他们的信号处理任务都主要是对微弱的目标回波进行检测和分析,从而达到对目标进行探测、定位、跟踪、导航、成像显示等目的,他们要应用到的主要信号处理技术包括滤波、门限比较、谱估计等。(7) 生物医学信号处理 数字滤波器在医学中的应

8、用日益广泛,如对脑电图和心电图的分析、层析X射线摄影的计算机辅助分析、胎儿心音的自适应检测等。(8) 音乐数字滤波器为音乐领域开辟了一个新局面,在对音乐信号进行编辑、合成、以及在音乐中加入交混回响、合声等特殊效果特殊方面,数字滤波技术都显示出了强大的威力。数字滤波器还可用于作曲、录音和播放,或对旧录音带的音质进行恢复等。(9) 其他领域数字滤波器的应用领域如此广泛,以至于想完全列举他们是根本不可能的,除了以上几个领域外,还有很多其他的应用领域。例如,在军事上被大量应用于导航、制导、电子对抗、战场侦察;在电力系统中被应用于能源分布规划和自动检测;在环境保护中被应用于对空气污染和噪声干扰的自动监测

9、,在经济领域中被应用于股票市场预测和经济效益分析,等等。1.3数字滤波器的实现方法分析 数字滤波器的实现,大体上有如下几种方法:(1) 在通用的微型机上用软件来实现。软件可以由使用者自己编写或使用现成的。自IEEE DSP Comm.于1979年推出第一个信号处理软件包以来,国外的研究机构、公司也陆续推出不同语言不同用途的信号处理软件包。这种实现方法速度较慢,多用于教学与科研。(2) 用单片机来实现。目前单片机的发展速度很快,功能也很强依靠单片机的硬件环境和信号处理软件可用于工程实际,如数字控制、医疗仪器等。(3) 利用专门用于信号处理的DSP片来实现。DSP芯片较之单片机有着更为突出的优点,

10、如内部带有乘法器、累加器,采用流水线工作方式及并行结构,多总线,速度快,配有适于信号处理的指令等,DSP芯片的问世及飞速发展,为信号处理技术应用于工程实际提供了可能。 数字滤波器精确度高、使用灵活、可靠性高,具有模拟设备所没有的许多优点,已广泛地应用于各个科学技术领域, 例如数字电视、语音、通信、雷达、声纳、遥感、图像、生物医学以及许多工程应用领域。随着信息时代数字时代的到来,数字滤波技术已经成为一门极其重要的学科和技术领域。以往的滤波器大多采用模拟电路技术,但是,模拟电路技术存在很多难以解决的问题,例如,模拟电路元件对温度的敏感性,等等。而采用数字技术则避免很多类似的难题,当然数字滤波器在其

11、他方面也有很多突出的优点,在前面部分已经提到,这些都是模拟技术所不能及的,所以采用数字滤波器对信号进行处理是目前的发展方向。第2章 数字滤波器设计原理2.1 数字滤波器的定义和分类 数字滤波器是指完成信号滤波处理功能的,用有限精度算法实现的离散时间线性非时变系统,其输入是一组数字量,其输出是经过变换的另一组数字量。因此,数字滤波器本身既可以是用数字硬件装配成的一台完成给定运算的专用的数字计算机,也可以将所需要的运算编成程序,让通用计算机来执行。从数字滤波器的单位冲击响应来看,可以分为两大类:有限冲击响应(FIR)数字滤波器和无限冲击响应(IIR)数字滤波器。滤波器按功能上分可以分为低通滤波器(

12、LPF)、高通滤波器(HPF)、带通滤波器(BPF)、带阻滤波器(BSF)。按选择物理量分类,滤波器可分为频率选择、幅度选择、时间选择(例如PCM制中的话路信号)和信息选择(例如匹配滤波器)等四类滤波器按处理信号类型分类,可分为模拟滤波器和离散滤波器两大类。其中模拟滤波器又可分为有源、无源、异类三个分类;离散滤波器又可分为数字、取样模拟、混合三个分类。当然,每个分类又可继续分下去,总之,它们的分类可以形成一个树形结构,如图2-1所示。数字混合取样模拟无源异类有源滤波器离散模拟传输波各类谐振波表面波复数多维自适应FIR IIR窄带机械陶瓷晶体RCRCLC图 2-1 滤波器的分类2.2 数字滤波器

13、的优点相对于模拟滤波器,数字滤波器没有漂移,能够处理低频信号,频率响应特性可做成非常接近于理想的特性,且精度可以达到很高,容易集成等,这些优势决定了数字滤波器的应用将会越来越广泛。同时DSP处理器(Digital Signal Processor)的出现和FPGA(FieldProgrammable Gate Array)的迅速发展也促进了数字滤波器的发展,并为数字滤波器的硬件实现提供了更多的选择。数字滤波器具有以下显著优点:精度高:模拟电路中元件精度很难达到10-3,以上,而数字系统17位字长就可以达到10-5精度。因此在一些精度要求很高的滤波系统中,就必须采用数字滤波器来实现。灵活性大:数

14、字滤波器的性能主要取决于乘法器的各系数,而这些系数是存放在系数存储器中的,只要改变存储器中存放的系数,就可以得到不同的系统,这些都比改变模拟滤波器系统的特性要容易和方便的多,因而具有很大的灵活性。可靠性高:因为数字系统只有两个电平信号:"1”和“0",受噪声及环境条件的影响小,而模拟滤波器各个参数都有一定的温度系数,易受温度、振动、电磁感应等影响。并且数字滤波器多采用大规模集成电路,如用CPLD或FPGA来实现,也可以用专用的DSP处理器来实现,这些大规模集成电路的故障率远比众多分立元件构成的模拟系统的故障率低。易于大规模集成:因为数字部件具有高度的规范性,便于大规模集成,

15、大规模生产,且数字滤波电路主要工作在截止或饱和状态,对电路参数要求不严格。因此产品的成品率高,价格也日趋降低。相对于模拟滤波器,数字滤波器在体积、重量和性能方面的优势己越来越明显。比如在用一些用模拟网络做的低频滤波器中,网络的电感和电容的数值会大到惊人的程度,甚至不能很好地实现,这时候若采用数字滤波器则方便的多。2.3 FIR滤波器的基本原理2.3.1 FIR数字滤波器的特点和结构 在数字信号处理应用中往往需要设计线性相位的滤波器,FIR滤波器在保证幅度特性满足技术要求的同时,很容易做到严格的线性相位特性。FIR滤波器不断地对输入样本x(n)延时后,再作乘法累加算法,将滤波结果y(n)输出,因

16、此,FIR实际上是一种乘法累加运算。在数字滤波器中,FIR滤波器的最主要的特点是没有反馈回路,故不存在不稳定的问题,同时,可以在幅度特性是随意设置的同时,保证精确的线性相位。稳定和线性相位特性是FIR滤波器的突出优点。另外,它还有以下特点:设计方式是线性的;硬件容易实现;滤波器过渡过程具有有限区间;相对IIR滤波器而言,阶次较高,其延迟也要比同样性能的IIR滤波器大得多。FIR数字滤波器系统的传递函数为: 通过反z变换,数字滤波器的差分方程为: 由此得到系统的差分方程: 由上式可以得出如下图所示的直接型结构,这种结构又可以称为卷积型结构。将转置理论应用于图2-2可以得到转置直接型结构。将式中的

17、系统函数H(z)分解成若干一阶和二阶多项式的连乘积: 则可构成如图所示的级联型结构。其中 为一阶节; 为二阶节。每个一阶节、二阶节可用图2-3所示的直接型结构实现。当M1 = M2时,即得到图2-4所示的具体结构。这种结构的每一节都便于控制零点,在需要控制传输零点时可以采用。但是它所需要的系数a比直接型的h(n)多,所需要的乘法运算也比直接型多。在对滤波器计算时间没有特殊要求的时候可以采用这种形式。若需要严格考虑滤波器的计算时间则需要折衷它们的优点和缺点来设计。这在算法设计时候要使用软件编辑环境来计算运行的时间问题。通常FIR的计算时间都较长。很多时候我们需要牺牲时间来获得想要得到的滤波器功能

18、。图2-2 FIR滤波器直接型机构图图2-3 级联型结构图图2-4 级联型具体结构FIR滤波器实质上就是一个分节的延迟线,把每一节的输出用滤波器系数进行加权累加,便得到滤波器的输出结果,它总是稳定并且可实现的。在一些工程实际应用(如:图像处理、数据调制解调)中,往往对相位要求较高。FIR滤波器可以实现严格的线性相位,从而得到了广泛应用。它的差分方程数学表达式为: 式中,N是FIR滤波器的抽头数,x(n)表示在n 时刻输入的信号样值,h(n)表示滤波器的第n级抽头系数。横截型FIR滤波器的结构如图2-5所示。图2-5 FIR滤波器的横截型结构2.3.2 FIR滤波器的优点可以在幅度特性随意设计的

19、同时,保证精确、严格的线性相位;由于FIR滤波器的单位脉冲h(n)是有限长序列,因此FIR滤波器没有不稳定的问题;由于FIR滤波器一般为非递归结构,因此,在有限运算下不会出现递归型结构中的极限振荡等不稳定现象误差较小;FIR滤波器可以采用FFT算法实现,从而提高了运算效率。总结FIR数字滤波器的优点: (1)很容易获得严格的线性相位,避免被处理的信号产生相位失真,这一特点在宽频带信号处理、阵列信号处理、数据传输等系统中非常重要; (2)可得到多带幅频特性; (3)极点全部在原点(永远稳定),无稳定性问题; (4)任何一个非因果的有限长序列,总可以通过一定的延时,转变为因果序列, 所以因果性总是

20、满足; (5)无反馈运算,运算误差小。FIR数字滤波器的缺点: (1)因为无极点,要获得好的过渡带特性,需以较高的阶数为代价; (2)无法利用模拟滤波器的设计结果,一般无解析设计公式,要借助计算机辅助设计程序完成。第3章 TMS320C54X的硬件结构与主要特性 TMS320VC5402是TI公司于1999年10月推出的性价比极高的定点数字信号处理器(DSP)。运算速度高达100MIPS。图3-1是它的内部硬件组成框图,包括:CPU,总线,存储器,在片外设电路等。主要特点如下:3.1 CPU功能1) 先进的多总线结构(1 条程序总线,3 条数据总线和4 条地址总线);2) 40 位算术逻辑运算

21、单元(ALU),包括1 个40 位桶型移位寄存器和2 个独立的40 位累加器;3) 17 位×17 位并行乘法器,与40 位专用加法器相连,用于非流水线式单周期乘法/累加(MAC)运算;4) 比较选择存储单元(CSSU),用于加法/比较选择;5) 指数编码器,可以在单周期内计算40 位累加器中数值得到指数;6) 双地址生成器,包括8 个辅助寄存器和2 个辅助寄存器算术运算单元(ARAU)存储器;7) 192K 字可寻址存储空间(64K 字程序存储器,64K 字数据存储器以及64K字I/O 空间);8) 片内ROM,可配置位程序/数据存储器;9) 片内双寻址RAM(DARAM);C54

22、02 中的DARAM 分为若干块。由于在每个机器周期内,允许对同一DARAM 块寻址2 次,因此CPU 可以在一个机器周期内对同一DARAM 读出1 次。一般情况下,DARAM 总是映象到数据存储空间,主要用于存放数据。但是,它也可以映象到程序存储空间,用来存放程序代码。3.2指令系统1) 单指令重复和块指令重复操作;2) 块存储器传送操作;3) 32 位长操作数指令;4) 同时读入2 或3 个操作数的指令;5) 能并行存储和并行加载的算术指令;6) 条件存储指令;7) 从中断快速返回。3.3在片外围电路1) 软件可编程等待状态发生器;2) 可编程分区转换逻辑电路;3) 带有内部震荡器或者用外

23、部时钟源的片内锁相环(PLL)时钟发生器;4) 时分多路;5) 缓冲串行口(BSP);6) 16 位可编程定时器;7) 8 位并行主机接口(HPI);8) 外部总线关断控制,以断开外部的数据总线、地址总线和控制信号;9) 数据总线具有总线保持器特性。3.4电源1) 可用IDLE1,IDLE2,IDLE3 指令控制功耗,使其工作在省电方式下;2) CLKOUT 输出信号可以关断。3.5在片仿真接口具有符合IEEE 1149.1 标准的在片仿真接口。图3-1 TMS320C5402 DSP内部硬件组成框图 第37页 共33页第4章 数字滤波器的MATLAB辅助设计4.1 MATLAB简介 MATL

24、AB是矩阵实验室(Matrix Laboratory)之意。除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,当前流行的MATLAB 5.3/Simulink 3.0包括拥有数百个内部函数的主包和三十几种工具包(Toolbox)。工具包又可以分为功能性工具包和学科工具包。功能工具包用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能。学科工具包是专业性比较强的工具包,

25、控制工具包,信号处理工具包,通信工具包等都属于此类。MATLAB具有许多的优点比如:语言简洁紧凑,使用方便灵活,库函数极其丰富;MATLAB既具有结构化的控制语句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性;程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行,等等优点。因此在各个学科和领域得到了广泛的应用。4.2 FIR数字滤波器的MATLAB设计原理方法4.2.1 FIR滤波器的设计原理滤波器就是在时间域或频域内,对已知激励,产生规定响应的网络,使其能够从信号中提取并放大有用的信号,抑制并衰减不需要的信号。数字滤波器的设计,实质上

26、就是对提出的设计要求给出相应的性能指标,再通过计算,使物理可实现的实际滤波器频率响应特性,逼近给出的频率响应特性。设计完成后,可根据计算结果在FPGA或DSP上实现。FIR 数字滤波器系统的传递函数为: (4-1)由此得到系统的差分方程: y(n)=b(0)*(n)+b(1)*(n-1)+b(N-1)*n-(N-1) (4-2)若FIR数字滤波器的单位脉冲响应序列为h(n),它就是滤波器系数向量b(n)。应用Matlab设计FIR滤波器的主要任务就是根据给定的性能指标,设计一个H(z),使其逼近这一指标,进而计算并确定滤波器的系数b(n),再将所设计滤波器的幅频响应、相频响应曲线作为输出,与设

27、计要求进行比较,对设计的滤波器进行优化。4.2.2窗函数法窗函数设计的基本思想是要选取某一种合适的理想频率选择性滤波器,然后将它的脉冲响应截断以得到一个线性相位和因果的FIR滤波器。因此这种方法的重点在于选择某种合适的窗函数和一种理想滤波器。对于给定的滤波器技术指标,选择滤波器长度和具有最窄主瓣宽度和尽可能小的旁瓣衰减的某个窗函数。任何数字滤波器的频率响应 都是w的周期函数,它的傅立叶级数展开式为: (4-3) (4-4) 其中的Wc为滤波器的归一化的截止频率。傅立叶系数hd(n)实际上就是理想数字滤波器的冲激响应。获得有限冲激响应数字滤波器的一种可能方法就是把无穷级数截取为有限项级数来近似,

28、而吉布斯(Gibbs)现象使得直接截取法不甚令人满意。 窗函数法就是用被称为窗函数的有限加权系列W(n)来修正式(4-4)的傅立叶级数,以求得要求的有限冲激响应序列h(n),即有: h(n)=hd(n)W(n) (4-5)w(n)是有限长序列,当n>N-1及n<0时,W(n)=0。几种常用的窗函数工程中比较常用的窗函数有矩形窗函数、三角形(Bartlett)窗函数、汉宁(Harming)窗函数、海明(Hamming)窗函数、布莱克曼(Blackman)窗函数和凯塞Kaiser)窗函数。窗函数的选择原则是:1) 具有较低的旁瓣幅度,尤其是第一旁瓣幅度;2) 旁瓣幅度下降速度要大,以利

29、增加阻带衰减;3) 主瓣的宽度要窄,以获得较陡的过渡带。通常上述三点很难同时满足。当选用主瓣宽度较窄时,虽然得到较陡的过渡带,但通带和阻带的波动明显增加:当选用最小的旁瓣幅度时,虽能得到匀滑的幅度响应和较小的阻带波动,但过渡带加宽。因此,实际选用的窗函数往往是它们的折衷。在保证主瓣宽度达到一定要求的条件下,适当牺牲主瓣宽度来换取旁瓣波动的减少。总之窗函数不仅有截短的作用,而且能够起到平滑的作用在很多领域得到应用。MATLAB信号处理工具箱提供了基于窗函数法的FIR滤波器的设计函数fir1和fir2,它们能使滤波器的设计更加简单。fir1:功能:基于窗函数的FIR滤波器设计标准频率响应形状。 格

30、式:b=fir1(N,wc,ftype,window).说明:标准频率响应应指所设计的滤波器的预期特性为理想频率响应,包括低通、带通、高通或带阻特性。ftype和window可以默认。B=fie1(N,wc)可得到截止频率为wc且满足线性相位条件的N阶FIR低通滤波器,window默认选用hamming窗。其单位脉冲响应h(n)为 h(n)=b(n+1) n=0,1,2,N当wc=wc1,wc2时,得到的是通带为wc1wwc2的带通滤波器.b=fir1(N,wc,ftype). 可设计高通和带阻滤波器。当ftype=high时,设计高通FIR滤波器;当ftype=stop时,设计带阻FIR滤波

31、器。fir2:功能:基于窗函数的FIR滤波器设计任意频率响应形状。格式:b=fir2(N,f,m,window)说明:fir2函数用于设计具有任意频率响应形状的加窗线性相位FIR数字滤波器,其幅频特性由频率点向量f和幅度值向量m给出,0f1,要求f为单增向量,而且从0开始,以1结束,1表示数字频率w=.m与f等长度,m(k)表示频点f(k)的幅频响应曲线。用各种窗函数设计FIR数字滤波器分别用矩形窗和Hamming窗设计线性相位FIR低通滤波器。通带截止频率,单位脉冲响应h(n)的长度N=21。用窗函数法设计FIR数字滤波器时,先求出相应的理想滤波器单位脉冲响应,再根据阻带最小衰减选择合适的窗

32、函数w(n),最后得到FIR滤波器单位脉冲响应。 ,N=21,所以线性相位理想低通滤波器的单位脉冲响应为: (4-6)MATLAB的实现:%cjf2_1.mN=21;wc=pi/4; %理想低通滤波器参数n=0:N-1;r=(N-1)/2;hdn=sin(wc*(n-r)/pi./(n-r); %计算理想低通单位脉冲响应if rem(N,2)=0 hdn(r+1)=wc/pi;end %N为奇数时,处理n=r点的0/0型wn1=boxcar(N); %矩形窗hn1=hdn.*wn1' %加窗wn2=hamming(N); %hamming窗hn2=hdn.*wn2' %加窗w=

33、2*0:511/512;hw1=fft(hn1,512);hw2=fft(hn2,512);subplot(2,2,1); %作图stem(n,hn1,'.');grid;xlabel('n'); ylabel('h(n)');title('矩形窗设计的h(n) '); %图形划分及标注语句subplot(2,2,2);plot(w,20*log10(abs(hw1);grid;xlabel('w/pi'); ylabel('Magnitude(dB)');title('幅频特性(dB)&#

34、39;);subplot(2,2,3);stem(n,hn2,'.');grid;xlabel('n'); ylabel('h(n)');title('hamming窗设计的h(n) ');subplot(2,2,4);plot(w,20*log10(abs(hw2);grid;xlabel('w/pi'); ylabel('Magnitude(dB)');title('幅频特性(dB)');作图如下图4-1所示。图 4-1结果分析:对两种窗函数的设计结果分别如图所示。由图中可以看出

35、,不同的窗函数生成的过渡带宽度和阻带最小衰减是不同的。这就是选择窗函数的根据。利用用fir2函数对FIR数字滤波器的设计。逼近截止频率wc=0.6,30阶%cjf2_2.m%fir2使用举例f=0,0.6,0.6,1;m=0,0,1,1; %预期设定幅频响应b=fir2(30,f,m);n=0:30; %设计FIR数字滤波器系数subplot(1,2,1);stem(n,b, '.'); %画图xlabel('n'); ylabel('h(n)');axis(0,30,-0.4,0.5); %标注line(0,30,0,0);h,w=freqz(

36、b,1,256);subplot(1,2,2); plot(w/pi,20*log10(abs(h);grid;axis(0,1,-80,0); xlabel('w/pi'); ylabel('幅度(dB)'); 图形如下图4-2所示。图 4-24.2.3等效最佳一致逼近法信号处理工具箱采用remez算法实现线性相位FIR数字滤波器的等波纹最佳一致逼近设计。与其他设计法相比,起优点是,设计指标相同时,使滤波器阶数最低;或阶数相同时,使通带最平坦,阻带最小衰减最大;通带和阻带均为等波纹形式,最适合设计片段常数特性的滤波器。其调用格式如下:b=remez(N,f,m

37、,w,ftype)其中,w和ftype可默认。b为滤波器系数向量,调用参数N,f,m的含义与函数fir2中类同,但这里有一点不同,期望逼近的频幅响应值位于f(k)与f(k+1)(k为奇数)之间的频段上,而f(k+1)与f(k+2)之间为无关区。w为加权向量,其长度为f的一半。W(k)为对m中第k个常数片段的逼近精度加权值,w值越大逼近精度越高。rtype用于指定滤波器类型。Remezord函数用于估算FIR数字滤波器的等波纹最佳一致逼近设计的最低阶数N,从而使滤波器在满足指标的前提下造价最低。基本调用格式如下:N,fo,mo,w=remezord(f,m,dev,Fs)其返回参数供remez函

38、数使用。设计的滤波器可以满足由参数f,m,dev和Fs指定的指标。F和m与remez中所用的类似,这里f可以是模拟频率(Hz)或归一化数字频率,但必须以0开始,以Fs/2(用归一化频率时为1)结束,而且其中省略了0和Fs/2两个频点。Fs为采样频率,省略时默认为2Hz。dev为各逼近频段允许的幅频响应偏差(波纹振幅)。remez函数可直接调用remezord返回的参数,使用格式如下:b=remez(N,fo,mo,w)。用remez函数设计FIR低通滤波器逼近低通滤波特性。 (4-7)通带波纹,阻带衰减,并用最小阶数实现。设计参数f=1/4,5/16,m=1,0;由于所以,MATLAB的实现:

39、%cjf2_3.m,%用remez函数设计FIR低通滤波器fc=1/4;fs=5/16;%输入给定指标Rp=3;As=60;Fs=2;f=fc,fs;m=1,0;%计算remezord函数所需要参数f,m,devdev=(10(Rp/20)-1)/(10(Rp/20)+1),10(-As/20);N,fo,mo,w=remezord(f,m,dev,Fs);%确定remez函数所需参数hn=remez(N,fo,mo,w);%调用remez函数进行设计hw=fft(hn,512); %求设计出的滤波器频率特性w=0:511*2/512;plot(w,20*log10(abs(hw);grid;

40、%画对数幅频特性曲线axis(0,max(w)/2,-90,5);xlabel('w/pi'); ylabel('Magnitude(dB)');title('幅频特性');line(0,0.4,-3,-3); %画线检验设计结果line(1/4,1/4,-90,5); line(5/16,5/16,-90,5);图形如下图4-3所示:图4-3结果分析:如图所示,图3-5横线为-3dB,两条竖线分别位于频率/4和5/16。显然,通带指标稍有富裕,过渡带宽度和阻带最小衰减刚好满足指标要求。用remez函数设计高通滤波器观察等波纹逼近法中加权系数w(

41、)及滤波器阶数N的作用和影响。期望逼近的滤波器通带为3/4,阻带为0,23/32。 在滤波器设计中,技术指标越高,实现滤波器的阶数也就越高。在remez函数调用格式b=remez(N,f,m,w)中,f=0,3/4,23/32,1,m=0,0,1,1.其余参数分三种情况进行设计:(1)N=30,w=1,1;(2)N=30,w=1,5(3)N=60,w=1,1MATLAB的实现:%cjf2_4.m%用remez函数设计高通滤波器clear;close allf=0, 23/32, 3/4,1;m=0,0,1,1;N1=30;w1=1,1; hn1=remez(N1,f,m,w1);%情况(1)k

42、=0:1023*2/1024;Hw1=fft(hn1,1024);figure(1);plot(k,20*log10(abs(Hw1);%求出其幅频特性axis(0,1,-40,5);grid on; %只画出正半轴频谱xlabel('w/pi'); ylabel('Magnitude(dB)');%标注title(' N1=30,w1=1,1 ');N2=30;w2=1,5;hn2=remez(N2,f,m,w2);%情况(2)Hw2=fft(hn2,1024); %求出其幅频特性figure(2);plot(k,20*log10(abs(Hw

43、2);axis(0,1,-40,5);grid on; %只画出正半轴频谱xlabel('w/pi'); ylabel('Magnitude(dB)');%标注title(' N2=30,w2=1,5 ');N3=60;w2=1,1;hn3=remez(N3,f,m,w2);%情况(3)Hw3=fft(hn3,1024); %求出其幅频特性figure(3);plot(k,20*log10(abs(Hw3);axis(0,1,-40,5);grid on; %只画出正半轴频谱xlabel('w/pi'); ylabel('

44、Magnitude(dB)');%标注title(' N3=60,w1=1,1 '); 三种情况图形如下图4-4,4-5,4-6所示。 图 4-4 图4-5图4-64.3 基于FDAtool的滤波器设计4.3.1 FDAtool界面介绍 FDAtool(Filter Design Analysis tool)是MATLAB信号处理工具箱里专用的滤波器设计分析工具,MATLAB6.0以上的版本还专门增加了滤波器设计工具箱(Filter Design toolbox)。FDAtool可以设计几乎所有的基本的常规滤波器,包括fir和iir的各种设计方法。它操作简单,方便灵活。

45、FDAtool界面总共分两大部分,一部分是design filter,在界面的下半部,用来设置滤波器的设计参数,另一部分则是特性区,在界面的上半部分,用来显示滤波器的各种特性。design filter部分主要分为:filter type(滤波器类型)选项,包括lowpass(低通)、highpass(高通)、bandpass(带通)、bandstop(带阻)和非凡的fir滤波器。design method(设计方法)选项,包括iir滤波器的butterworth(巴特沃思)法、chebyshev type i(切比雪夫i型)法、chebyshev type ii(切比雪夫ii型)法、elli

46、ptic(椭圆滤波器)法和fir滤波器的equiripple法、least-squares(最小乘方)法、window(窗函数)法。filter order(滤波器阶数)选项,定义滤波器的阶数,包括specify order(指定阶数)和minimum order(最小阶数)。在specify order中填入所要设计的滤波器的阶数(n阶滤波器,specify ordern-1),假如选择minimum order则matlab根据所选择的滤波器类型自动使用最小阶数。 frenquency specifications选项,可以具体定义频带的各参数,包括采样频率fs和频带的截止频率。它的具体选

47、项由filter type选项和design method选项决定,例如bandpass(带通)滤波器需要定义fstop1(下阻带截止频率)、fpass1(通带下限截止频率)、fpass2(通带上限截止频率)、fstop2(上阻带截止频率),而lowpass(低通)滤波器只需要定义fstop1、fpass1。采用窗函数设计滤波器时,由于过渡带是由窗函数的类型和阶数所决定的,所以只需要定义通带截止频率,而不必定义阻带参数。 magnitude specifications选项,可以定义幅值衰减的情况。例如设计带通滤波器时,可以定义wstop1(频率fstop1处的幅值衰减)、wpass(通带范围

48、内的幅值衰减)、wstop2(频率fstop2处的幅值衰减)。当采用窗函数设计时,通带截止频率处的幅值衰减固定为6db,所以不必定义。window specifications选项,当选取采用窗函数设计时,该选项可定义,它包含了各种窗函数。 设置好参数后点击下方的(design Filter)滤波器设计即可得到所设计的滤波器。设计完成后,可通过主菜单选项Analysis来分析滤波器的幅频响应和相频响应特性。点击Analysis中的Magnitude Response对幅频特性和相频特性进行分析。4.3.2 FIR参数设定及频域响应特性设计最小阶的低通滤波器,采样频率fs=2000Hz,通带截止

49、频率为500Hz,阻带的截止频率为600Hz,阻带的最小衰减为40dB,通带的最大衰减为3dB。下图4-7为FIR低通滤波器参数设置及频率响应特性。图4-7 FIR低通滤波器参数设置及频率响应特性设计最小阶的高通滤波器,采样频率fs=2000Hz,通带截止频率为800Hz,阻带的截止频率为750Hz,阻带的最小衰减为50dB,通带的最大衰减为1dB。下图4-8为FIR高通数字滤波器参数设置频域响应特性。图4-8 FIR高通数字滤波器参数设置频域响应特性第5章 数字滤波器的CCS实现5.1 简述CCS环境CCS,即Code Composer Studio,是TI公司在1999年推出的一个开放、具

50、有强大集成开发环境。它最初是由GO DSP公司为TI的C6000系列DSP开发的。在TI收购了GO DSP后,将CCS扩展到了其它系列。现在所有TI的DSP都可以使用CCS进行开发,但是其中的DSPBIOS功能只有C5000和C6000的CCS中才提供。以前的DSP软件开发都是在一个分散的开发环境下进行,程序的编写、代码的生成以及调试等都是要通过命令来完成,类似于以前的DOS,十分烦杂。而CCS的出现是DSP开发软件的一次革命性的变化。CCS主要由代码生成工具、CCS集成开发环境、DSPBIOS和API函数以及RTDX组成。5.2 CCS特点 集成可视化代码编辑界面,可以方便地直接编写C、汇编

51、、.h文件、.cmd文件等。集成代码生成工具,包括汇编器、优化的C编译器和连接器等。具有完整的基本调试工具,可以载入执行文件(.out),查看寄存器窗口、存储器窗口和变量窗口、反汇编窗口等,支持在C源代码级进行调试。支持多片DSP联合调试。断点工具,支持硬件断点、数据空间读/写断点、条件断点等。探针工具,用于进行算法仿真,数据监视等。剖析工具,用于评估代码执行的时间。数据图形显示工具,可绘制时域/频域波形、眼图、星座图等,并可以自动刷新。提供GEI工具,用户可以根据需要编写自己的控制面板/菜单,从而方便直观地修改变量,配置参数。5.3 CCS的配置点击桌面图标的“setup CCStudio

52、v3.3”图标,运行CCS设置程序,如图5-1所示:点击AddSave&quit完成设置。图5-15.4 CCS环境中工程文件的使用5.4.1 建立工程文件在CCS集成环境下开发汇编程序或者C/C+程序,首先要建立一个工程项目文件(*.pjt),再向工程项目文件中添加汇编程序源文件(*.asm),C/C+源文件(*.c)和链接命令文件(*.cmd),并设置工程项目选项。使用CCS开发应用程序的一般步骤如下:1) 创建或打开一个工程项目文件(*.pjt),编辑各类文件,可以使用CCS提供的集成编辑环境,对链接命令文件和源程序进行编辑。2) 对工程项目进行编译。在编译过程中如果出现语法错误,将在编译链接信息视窗(build)窗口中显示错误信息,用户可以根据显示的信息找到错误的位置,更改错误。3) 对结果和数据进行分析和算法评估。用户可以利用CCS提供的探测点.图形显示和性能评价等工具,对运行结果及输出数据进行分析,评估算法的可能性。下面分别进行介绍建立工程文件,单击ProjectNew命令,系统将弹出如图所示的对话框,在该对话框中输入项目文件名,如fir单击“完成”系统就会创建一个名为f

温馨提示

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

最新文档

评论

0/150

提交评论