基于DSP的IIR滤波器的设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

前言本文介绍了滤波器的滤波原理以及模拟滤波器、数字滤波器的设计方法。重点介绍了IIR数字滤波器的设计方法。即脉冲响应不变法和双线性变换法。在此基础上,用DSP虚拟实现任意阶IIR滤波器。此设计扩展性好,便于调节滤波器的性能,可以根据不同的要求在DSP上加以实现。数字信号处理是利用计算机或专用处理设备,以数字形式对信号进行采集、变换、滤波、估值、增强、压缩、识别等处理,以得到符合人们需要的信号形式。数字信号处理是围绕着数字信号处理的理论、实现和应用等几个方面发展起来的。数字信号处理在理论上的发展推动了数字信号处理应用的发展。反过来,数字信号处理的应用又促进了数字信号处理理论的提高。而数字信号处理的实现则是理论和应用之间的桥梁。数字信号处理是以众多学科为理论基础的,它所涉及的范围极其广泛。例如,在数学领域,微积分、概率统计、随机过程、数值分析等都是数字信号处理的基本工具,与网络理论、信号与系统、控制论、通信理论、故障诊断等也密切相关。近来新兴的一些学科,如人工智能、模式识别、神经网络等,都与数字信号处理密不可分。可以说,数字信号处理是把许多经典的理论体系作为自己的理论基础,同时又使自己成为一系列新兴学科的理论基础。最多64个增加到现在的200个以上,引脚数量的增加,意味着结构灵活性的增加。此外,DSP芯片的发展,是DSP系统的成本、体积、重量和功耗都有很大程度的下降。第1章绪论1.1数字滤波器的概念滤波器是指用来对输入信号进行滤波的硬件和软件。数字滤波器是对数字信号实现滤波的线性时不变系统。数字滤波器可以理解为是一个计算程序或算法,将代表输入信号的数字时间序列转化为代表输出信号的数字时间序列,并在转化过程中,使信号按预定的形式变化。数字滤波实质上是一种运算过程,实现对信号的运算处理。数字滤波器和模拟滤波器相比,因为信号的形式和实现滤波的方法不同,数字滤波器具有比模拟滤波器精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配等优点。输入数字信号(数字序列)通过特定的运算转变为输出的数字序列,因此,数字滤波器本质上是一个完成特定运算的数字计算过程,也可以理解为是一台计算机。描述离散系统输出与输入关系的卷积和差分方程只是给数字信号滤波器提供运算规则,使其按照这个规则完成对输入数据的处理。1.2数字滤波器的分类目前数字滤波器的主要实现方法有:1.在通用的微型计算机上用软件实现:软件可以是自己编写的,也可以使用现成的软件包,这种方法缺点是速度太慢,不能用于实时系统,只能用于教学和算法的仿真研究。比如用MATLAB就几乎可以实现所有数字滤波器的仿真。而且在MATLAB下的部分仿真程序还可以通过转化为C语言,再通过DSP的C编译器直接在DSP硬件上运行。2.用DSP(DigitalSignalProcessing)处理器实现:DSP处理器是专为数字信号处理而设计的,如TI公司的TMS320C54x系列,AD公司的ADSP2IX,ADSP210X系列等。它的主要数字运算单元是一个乘累加器MAC(Multiply-accumulator),能够在一个机器周期内完成一次乘累加运算,配有适合于信号处理的指令,具备独特的循环寻址和倒序寻址能力。这些特点都非常适合数字信号处理中的滤波器设计的有效实现,并且它速度快、稳定性好、编程方便。1.3数字滤波器的优点DSP芯片是一种特别适合数字信号处理运算的微处理器,主要用来实时、快速地实现各种数字信号处理算法。数字信号处理由于具有精度高、灵活性强等优点,已广泛应用于图像处理、数字通信、雷达等领域。数字滤波技术在数字信号处理中占有极其重要的地位,数字滤波器根据其单位脉冲响应可分为IIR(无限长冲激响应滤波器)和FIR(有限长冲激响应滤波器)两类。IIR滤波器可以用较少的阶数获得很高的选择特性,但在有限精度的运算中,可能出现不稳定现象,而且相位特性不好控制。数字滤波器本质上是一个完成特定运算的数字计算过程,也可以理解为是一台计算机。数字滤波器又分为无限冲激响应滤波器(IIR)和有限冲激响应滤波器(FIR)。由于在许多场合下,需要对信号进行实时处理,因而对于单片机的性能要求也越来越高。由于DSP控制器具有许多独特的结构,例如采用多组总线结构实现并行处理,独立的累加器和乘法器以及丰富的寻址方式,采用DSP控制器就可以提高数字信号处理运算的能力,可以对数字信号做到实时处理。DSP(数字信号处理器)与一般的微处理器相比有很大的区别,它所特有的系统结构、指令集合、数据流程方式为解决复杂的数字信号处理问题提供了便利,本文选用TMS320C5509作为DSP处理芯片,通过对其编程来实现IIR滤波器。IIR系统与传统的通过硬件电路实现的模拟滤波器相比有以下优点:1、单位冲击响应有无限多项2、高效率(因为结构简单、系数小、乘法操作较少)3、与模拟滤波器有对应关系4、可以解析控制,强制系统在指定位置为零点5、有极点,在设计时要考虑稳定性6、具有反馈,可能产生噪声、误差累积1.4主要研究内容本文主要研究了数字滤波器的基本理论和实现方法。接着研究分析了如何利用MATLAB仿真软件来设计出符合各种要求的数字滤波器,并对所设计的滤波器进行仿真得到系数,本文还应用DSP集成开发环境——CCS调试汇编程序,为后面在DSP上实现提供必要的数据。本课题选择在TM320C5509DSP综合实验开发系统平台上进行开发。最后采用窗函数法在CCS环境下,利用MATLAB仿真得到的滤波器系数,编程实现IIR数字滤波器,得出滤波结果波形,并对结果进行分析与总结。第2章IIR算法原理滤波器可广义的理解为一个信号选择系统,它让某些信号成分通过又阻止或衰减另一些成分。在更多的情况下,滤波器可理解为选频系统,如低通、高通、带通、带阻。滤波器可分为三种:模拟滤波器、采样滤波器和数字滤波器。模拟滤波器可以是由RLC构成的无源滤波器,也可以是加上运放的有源滤波器,是连续时间系统;采样滤波器由电阻、电容、电荷转移器件、运放等组成,属于离散时间系统,幅度连续;数字滤波器由加法器、乘法器、存储延迟单元、时钟脉冲发生器和逻辑单元等数字电路构成,精度高,稳定性好,不存在阻抗匹配问题,可以时分复用。设计滤波器,就是要确定其传递函数,传递函数H(z)已知后,则可以确定系统的频率响应为)()(|)()(wjjwezjweeHzHeHjw,其中)()(weHjw和分别是幅频特性和相位特性。对于无失真传输系统,有jwjwkeeH)(,即wwkeHjw)()(幅频特性为常数,信号通过系统后各频率分量的相对大小保持不变,没有幅度失真。相位特性为线性,使对应的时域方程的时延量为常数:)()(nkxny,即系统对各频率分量的延迟时间相同,保证了各频率分量的相对位置不变,没有相位失真。数字通信对相位的要求比模拟通信高许多,线性相位很重要。数字系统描述时延的函数有两个:群时延:dwwd/)(:反映相频曲线的线性程度。相时延:ww/)(:反映各频率分量在时域的相对延时。所以无相位失真的传输条件是要具有恒群时延和恒相时延,即dwwd/)(=ww/)(=常数。数字滤波器的设计是确定其系统函数并实现的过程,一般要经如下步骤:1、根据任务,确定性能指标。2、用因果稳定的线性移不变离散系统函数去逼近。3、用有限精度算法实现这个系统函数。4、利用适当的软、硬件技术实现。我们在这里主要讨论数字滤波器系统函数的逼近过程,包括无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器系统函数的逼近。第3章设计方案及硬件设计3.1设计方案IIR数字滤波器的设计一般有两种方法:一个是借助模拟滤波器的设计方法进行。其设计步骤是,先设计模拟滤波器,再按照某种方法转换成数字滤波器。这种方法比较容易一些,因为模拟滤波器的设计方法已经非常成熟,不仅有完整的设计公式,还有完善的图表供查阅;另外一种直接在频率或者时域内进行,由于需要解联立方程,设计时需要计算机做辅助设计。其设计步骤是:先设计过渡模拟滤波器得到系统函数)(sHa,然后将)(sHa按某种方法转换成数字滤波器的系统函数)(zH。这是因为模拟滤波器的设计方法已经很成熟,不仅有完整设计公式,还有完善的图表和曲线供查阅;另外,还有一些典型的优良滤波器类型可供我们使用。IIR系统的优点是实现的阶数低,对于实现相同要求的数字滤波器,FIR滤波器的阶数要比IIR滤波器的阶数高5~10倍,IIR滤波器的设计相对简单,可以由对应的模拟滤波器转换而来。结合IIR滤波器和FIR滤波器的优缺点,由于在APF谐波检测中的低通数字滤波器是用于通过直流,滤掉交流,对相位的要求不高,而且希望运算尽量小,因此选用IIR滤波器。IIR数字滤波器的设计流程图如下:图3.1IIR数字滤波器的设计步骤流程图)(ZfS数字滤波器技术指标模拟滤波器技术指标数字滤波器)(ZH模拟滤波器)(SHa模拟滤波器设计方法变换)(g变换3.2IIR滤波器的硬件设计3.2.1硬件设计总体方案:TI公司的2000系列和5000系列的DSP都通用型的芯片,考虑到2000系列的DSP多用于控制方面,而5000系列较2000系列具有更高的时钟频率、更低的价格和更加强大的运算功能,所以在数字滤波器系统的设计中采用了TI公司的一款高性能、低功耗的定点DSP:TMS320VC5402。该DSP具有较快的运算速度,算速度最快可达532MIPS;采用了低功耗设计方式:内核电压为1.8V,I/O电压为3.3V。数字滤波系统的具体方案框图如图3.2示:ADCDACTMS320VC5402FLASHSRAMJTAG时钟电源图3.2数字滤波器系统方案框图通常的设计中会采用SV供电并行的ADC(模数转换)和DAC(数模转换)芯片与DSP连接,传输数据过程中会占用总线的时间,而且需要采用多片电平转换器件将SV电平转换为3.3V的逻辑电平。考虑到TMS320VC5402的片上包含两个McBSP(多通道缓冲串行口)接口,可以将这两个通道模仿实现SPI的时序,因此本设计中采用了SPI接口器件,ADC芯片采用的是TLV1570,实现将需要滤波信号从模拟转换到数字信号的实时采样。数模转换芯片采用的是TLV5608,实现滤波后的信号从数字信号恢复为所需要的模拟信号。JTGA口供DSP芯片下载程序调试。3.2.2A/D转换接口电路设计在A/D转换器中,因为输入的模拟信号在时间上是连续量,而输出的数字信号代码是离散量,所以进行转换时必须在一系列选定的瞬间(亦即时间坐标轴上的一些规定点上)对输入的模拟信号取样,然后再把这些取样值转换为输出的数字量。因此,一般的A/D转换过程是通过取样、保持、量化和编码这四个步骤完成的。如下图3.3所示:R610KR71KR510KC101CAPAIN1AIN2AIN3AIN4AIN5AIN6AIN7AIN8BOX1BOR1BOCK1BFS155443322111717181816161919202021212222232324242525N-TLV1570272728282929PROBLEMN-TLV1570out3.3vA/D转换图3.3A/D转换电路3.2.3D/A转换接口电路设计数字量是用代码按数位组合起来表示的,对于有权码,每位代码都有一定的权。为了将数字量转换成模拟量,必须将每1位的代码按其权的大小转换成相应的模拟量,然后将这些模拟量相加,即可得到与数字量成正比的总模拟量,从而实现了数字一模拟转换。这就是构成D/A转换器的基本思路。D/A转换器的转换精度通常用分辨率和转换误差来描述。如下图3.4所示:图3.4D/A转换电路第4章软件设计4.1IIR的数据存储器设计TMS320C54X定点DSP提供了单周期乘/累加指令MAC和循环寻址方式,使IIR数字滤波器每个样值的计算可以在一个周期内完成。IIR数字滤波器每个样值的计算就是实现两数组对应项乘积的累加和。在计算时有前向通道和反馈通道两部分,因此在计算设计时要充分考虑x(n)、y(n)和h(n)系数的存放

1 / 18
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功