基于DSP数字滤波器的课程设计.doc

上传人:h**** 文档编号:130956 上传时间:2018-07-09 格式:DOC 页数:48 大小:603KB
下载 相关 举报
基于DSP数字滤波器的课程设计.doc_第1页
第1页 / 共48页
基于DSP数字滤波器的课程设计.doc_第2页
第2页 / 共48页
基于DSP数字滤波器的课程设计.doc_第3页
第3页 / 共48页
基于DSP数字滤波器的课程设计.doc_第4页
第4页 / 共48页
基于DSP数字滤波器的课程设计.doc_第5页
第5页 / 共48页
点击查看更多>>
资源描述

1、 1 摘要: 数字滤波,是数字信号处理的基本核心内容之一,占有极重要的地位。它通过对采样数据信号进行数学运算处理来达到频域滤波目的,是图像处理、语音处理、模式识别、通信、软件无线电、谱分析等应用中的一个基本处理算法。与模拟滤波器相比,数字滤波器不用考虑器件的噪声、电压漂移、温度漂移等问题,可以容易的实现不同幅度和相位频率等特性指标,能够处理低频信号,频率响应特性可做成非常接近于理想的特性,且精度可以达到很高,容易集成等,这些优势决定了数字滤波器的应用很受欢迎。 现在 通过 DSP 编程并结合 TI 公司的数字信号处理器 TMs320VC5402 设计了一款稳定度高,低功耗的 IIR 数字滤波器

2、系统,并完成了软硬调试工作。 关键字:数字滤波器, DSP, IIR ,低功耗 ,稳定 Abstract: Digital filtering of digital signal processing, is one of the basic core contents, occupies an important position. It through sampling data signals of mathematical operation treatment to achieve the frequency domain filtering purposes, image proc

3、essing, audio processing, pattern recognition, communications, software radio, spectral analysis of applications such as a fundamental algorithms. Compared with simulation filter, di gital filters need not consider device of noise, voltage drift, temperature drift, can easily achieve different ampli

4、tude and phase frequency characteristic indices, able to handle such low frequency signal, frequency response characteristics but make it very close to ideal characteristics, and the precision can reach high, easy integration etc, these advantages determines the application of digital filter is very

5、 popular. Now through DSP programming and combined with TI companys digital signal processor TMs320VC5402 design in a high degree of stability, low power consumption, IIR digital filter system and completed soft debugging. Keywords: Digital filters, DSP, IIR, low power consumption, stable 一、 IIR 数字滤

6、波器的理论分析 从 IIR 数字滤波器的实现来看,有直接型、级联型、并联型和格型等基本网络结构。不同的结构形式会有不同的运算误差,其稳定性、运算速度、所占用的存储空间等也有所不同 3。其中直接 型仅需要 N 级延迟单元,且可作为级联型和并联型结构中的基本单元,是最常用的 IIR 数字滤波器结构之一 。 IIR 数字滤波器的设计方法有两类 4,一类是借助于模拟滤波器的设计方法设计出模拟滤波器,利用冲激响应不变法或双线性变换法转换成数字滤波器,然后用硬件或软件实现;另一类是直接在频域或时域中进行设计,设计时需 要作辅助 工具。对系统传递函数为 00()1M rrrN kkkbzHzaz对应的差分方

7、程为: 01( ) ( ) ( )MNrkrky n b x n r a y n k 2 的 IIR 数字波滤器来说,设计的任务就是寻求一种因果关系和物理上可实现的系统传递函数 使 H(z)满足上述的关系,为此可这样 使其频率响应能够满足所希望得到的频域指标。 二、 TMS320C5402 的体系结构 TMS320VC5402 处理器在本系列中处于先进水平。它具有运算速度快,内部存储空间大,外部接口性能好等优点。所以我选择了技术上比较先 进,价格又较便宜的 C5402 作为硬件开发对象。下面结合 C5402的实际情况,介绍一下该芯片的体系结构。 C5402共有 144个引脚,其中有 20根地址

8、线 AO-A19,16 根数据线 DO-D15, 4 个外部可屏蔽引脚 INTO#-INT3#和一个不可屏蔽中断引脚 BIO#,剩下的引脚可以分成以下几类:存储器控制引脚,时钟 /晶振引脚,多通道缓冲串口引脚,主机接口通讯引脚,电源引脚,初始化和复位引脚,通用输入 /输出引脚,以及用于测试的 IEEE1149. 1 标准 JTAG 口。 三 、 IIR 数字滤波器的设计流程 在设计滤波器时首先要 有清晰的思路,因此流程图的设计至关重要。本设计采用的是基于 DSP 的IIR 数字滤波,针对其要完成的功能,对其流程进行了初步规划,如图 8 所示: 3 开 始系 统 初 始 化分 配 数 据 空 间

9、设 置 数 据 指 针从 指 定 端 口 读 数 据 x ( n ) 并 从 数 据存 储 器 读 读 取 系 数完 成 数 据 的 乘 加 运 算修 改 数 据 指 针 为 下 一 次 乘 加 运 算 做 准 备保 存 结 果 从 指 定 端 口 输 出结 果图 1 IIR 数字滤波器设计流程 根据设计流程,通过 DSP 仿真软件编译出适合参数要求的汇编程序。运用汇编语言进行程序编写使其具有更好的实时性,此外运用汇编语言编写更有助于以后的设计拓展。 利用 TMS320C5402 实现 IIR 的程序中应注意以下几点: ( 1)数据存放要求。因为采用 MAC 指令和循环寻址,所以输入数 据和滤

10、波器系数的存放要按照一定的要求。数据块和系数块都要放在双寻址数据存储区。 ( 2)循环寻址的使用。为了使用循环寻址,除了对数据的存放有要求外,先还要设置 BK 为块长 N。由于使用了循环寻址,数据和系数的指针在操作后以循环的方式增加 1。 ( 3)数据的初始化。输入数据块要初始化为全 0。这样在运算中不会对输入产生影响。 四 、 IIR数字滤波器的软件和硬件设计 4 4.1 基于 DSP 的 IIR 数字滤波器的软件设计 4.1.1 IIR 数字滤波器的数据存储器设计 TMS320C54X 定点 DSP 提供了单周期乘 /累加指令 MAC 和 循环寻址方式,使 IIR 数字滤波器每个样值的计算

11、可以在一个周期内完成。 IIR 数字滤波器每个样值的计算就是实现两数组对应项乘积的累加和。在计算时有前向通道和反馈通道两部分,因此在计算设计时要充分考虑 x(n)、 y(n)和 h(n)系数的存放位置,并正确初始化这两个存储块指针 ,这样在计算中才能够准确的提取数据,实现乘加运算。图7 是 IIR 滤波器数据存放和系数表 : X 0X 1X 2B 2B 1B 0A 1A 2数 据 存 储 器X :数 据 存 储 器C O E F :A R 2A R 1图 2 IIR 滤波器数据存放和系数表 在程序设计中,首先将数据放入相应的段中, X 数据指针 AR2 指向 X0,同时将 H( n)的指针 A

12、R1指向 B0,利用乘加指令完成前向通道的一次运算;接着修改指针, AR2 指针增 1, H( n)的指针 AR1减 1,依次完成前向通道的乘加运算;反馈通道应用同样的方法进行乘加。在程序设计时,可以采用先增益后衰减的方法,亦可采用先衰减后增益的方法。但是采用先衰减后增益的方式其系统动态 范围和鲁棒性较好,因此在设计中采用了后一种方法。 4.1.2 IIR 滤波器的 MATLAB 辅助设计 5 具体在 MATLAB 中设计 IIR 数字滤波器的设计步骤如下:按一定规则将给出的数字滤波器的技术指标转换为模 拟低通滤波器的技术指标;根据转换后的技术指标使用滤波器选择函数,确定最小阶数 N和固有频率

13、 Wn;运用最小阶数 N 产生模拟低通滤波器原型,运用固有频率把模拟低通滤波器原型转换成模拟低通、高通、带通、带阻滤波器。本设计主要应用产生低通滤波器,运用脉冲响应不变法或双线性不变法把模拟滤波器转换成数字滤波器。 对于脉冲响应不变法,它是将 s 域内的 H( s)转换成 z 域内的 H( z),但是在映射时, S 域内不能一一对应到 Z 域内的单位圆上,因此容易在仿真中易产生混叠现象,影响实验效果。基于此,本次设计在 MATLAB 的仿真中优先考虑应用 双线性变换法。 MATLAB 工具箱提供了几种模拟滤波器的原型产生函数, Butterworth 滤波器原型, Chebyshev( I 型

14、、 II 型)滤波器原型、椭圆滤波器原型等不同的模拟滤波器原型,从模拟滤波器向数字滤波器转换的双线性变换法和脉冲响应不变法等方法,模拟 IIR 数字滤波器阶数选择函数以及数字滤波器直接设计函数等等。另外, MATLAB 信号处理工具箱提供了几个直接设计 IIR 数字滤波器的函数。这一整套设计函数给在 MATLAB 中设计 IIR 数字滤波器带来了极大的方便。 IIR 低通数字滤波器根据相关技术指标进行 matlab 仿真,从而计算出相应的传输函数。其仿真结果结果如图 5 所示: 图 3 利用 matlab 仿真图 根据以上仿真结果及相应的系数和 N 值,在相关技术指标不变的情况下,我选用了 C

15、hebyshevI6 型双线性变换法。 4.2 基于 DSP 的 IIR 数字滤波器 的硬件 设计 4.2.1 硬件设计总体方案 TI 公司的 2000 系列和 5000 系列的 DSP 都通用型的芯片,考虑到 2000 系列的 DSP 多用于控制方面,而 5000 系列较 2000 系列具有更高的时钟频率、更低的价格和更加强大的运算功能,所以在数字 滤波器系统的设计中采用了 TI 公司的一款高性能、低功耗的定点 DSP: TMS320VC5402。该 DSP 具有较快的运算速度 :运算速度最快可达 532MIPS;采用了低功耗设计方式:内核电压为 1.8V, I/O 电压为 3.3 V。数字

16、滤波系统的具体方案框图如图 6 所示: ADCDACT M S 320 VC 5402F L A S HS R A MJ T A G 时钟 电源图 4 数字滤波器系统方案框图 通常的设计中会采用 SV 供电并行的 ADC(模数转换)和 DAC(数模转换)芯片与 DSP 连接,传输数据过程中会占用总线的时间,而且需要采用多片电平转换器件将 SV 电平转换为 3.3V 的逻辑电平。考虑到 TMS320VC5402的片上包含两个 McBSP(多通道缓冲串行口 )接口,可以将这两个通道模仿实现 SPI的时序,因此本设计中采用了 SPI 接口器件, ADC 芯片采用的是 TLV 1570,实现将需要滤波

17、信号从模拟转换到数字信号的实时采样。数模转换芯片采用的是 TLV 5608,实现滤波后的信号从数字信号恢复为所需要的模拟信号。 JTGA 口供 DSP 芯片下载程序调试。 4.2.2 复位电路设计 为了确保系统能够稳定的工作,复位电路是系统中必不可少的电路。电源刚加上电时,TMS320VC5402 芯片处于复位状态,瓜 S 为低使芯片复位。为使芯片初始化正确,一般应保证爪 s 为低至少持续 3 个 CLKOuT 周期。但是,在上电后,系统的晶体振荡器一般需要几百毫秒的稳定期,般为100-200ms。对于实际的 DSP 应用系统,特别是产品化的 DSP 系统,其可靠性是一个不容忽视的问题。由于

18、DSP 系统的时钟频率较高,在运行时极有可能发生干扰和被干扰的现象,严重时系统可能会出现7 死机现象。为了克服这种情况,除了在软件上做一些保护措施外,硬件上也必须做相应的处理。硬件上最有效的保护措施就是采用具有监视 (Watchdog)功 能的自动复位电路。自动复位电路除了具有上电复位功能外,还具有监视系统运行并在系统发生故障或死机时再次复位的功能。其基本原理就是通过电路提供一个高低电平发生变化的信号,如果在规定的时间内这个信号不发生变化,自动复位电路就认为系统运行不正常并重新对系统进行复位。根据上述原理,在本系统的设计中采用了 ADM706TAR 芯片。该芯片具有上电复位功能,电压监测功能和

19、看门狗功能 。IN1E N #2OUT4PG3T P S 7 6818Q DT1IN2OUT3E N #1T P S 7 5733K T TT2M R #1V c c4R E S E T #3W D I2P S 38 23- 33D B V TT3V C C1 2U 20A74F 04S1S W - S P S T/ R S TXFre s e t 复位电路U?GND图 5 复位电路 4.2.3 时钟电路设计 给 DSP 芯片提供时钟一般有两种方法。一种是利用 DSP 芯片内部所提供的晶振电路,在 DSP芯片的 X1 和 x2 cu N 之阃连接一晶体可启动内部振荡器, 晶体应为基本模式,且为

20、并联谐振。另一种方法是将外部的时钟源直接输入 X2 CLKIN 引脚, X1 悬空。采用封装好的晶体震荡器,这种方法使用方便,因此得到了广泛的应用,只要在引脚 4 上加电压, 引脚二接地 ,就可以在引脚 3 上得到所需的时钟。早期的 DSP 芯片一般工作频率较低,因此其工作频率与外部提供的频率相等或者是外部频率的2 分频和 4 分频。随着 DSP 芯片速度的提高,如果仍然采用这种方式,则要求夕 部频率很高,这样会引发高频干扰,影响系统的稳定性。因此,现在的 DSP 芯片一 般提供多种工作方式。不仅具有传统的分频方式,而且采用更加灵活的可编程 PLL 方式。 1MS320Vc5402 内部具有一

21、个可编程锁相环 (PLL),可以配置为以下两种工作模式: PLL 模式,输入时钟乘以一个 1 1 之间的常数: DIV 模式,输入时钟除以 2 或 4。软件可编程 Pu。受一个存储器映射 (地址为 58h)的时钟模式寄存器 CLKMD 控制, CLKMD用于定义 Pu。时钟模块的配置。复位后 CLKMD 的值根据 DSP 芯片三根输入引脚 Cu(MDl 一 Cu(MD3 确定从而确定 DSP 的工作时钟。表中是 DSP 复位时钟模式设定,从表中可以看 出,不同的 CLKMDl一 CLKMD3值对应相应的时钟模式。例如:设 CIKMDl 一 CLKMD3=010,则时钟模式是 PLL*5,如果外

22、部的晶体频率是 20MHz,则复位后 DSP 的工作频率为 5X20=100MHz17】。由于 DSP 的程序需要从外部低速 EPROM 中调入,可以采用较低工作频率的 DSP 复位时钟模式,待程序全部调入内部快速 RAM 后,再用软件重新配置 CLKMD 的值,使芯片工作在较高的频率上。 C L O C K 时钟电路C3C A PC2C A PY1C R Y S T A LX1 8 图 6 时钟电路 4.2.4 电源设计 为了降低芯片的功耗, DsP5402 芯片采用低电压供电方式,并且采用内核电 压和 I O 电压分开的方式。 TMS320VC5402 芯片电源分为两种,即内核电压 (CV

23、dd)和 I O 电压 (Dvdd),其中, I O 电源一般采用 3 3V 电压,而内核电源电压为 1 8V。 TMS320VC5402 的电流消耗主要取决于器件的激活度,CVdd 消耗的电流主要取决于 CPU 的激活度。外设消耗的电流取决于正在工作的外设及其速度。一般的,与 CPU 相比,外设消耗的电流比较小。时钟电路也需要消耗一小部分的电流,而且这部分电流是恒定的,与 CPU 和外设的激活度无关。 CVdd 为器件的所有内部逻辑提供电流,包括 CPU、时钟电 路和所有外设。 DVdd 只为外部接口引脚提供电压,消耗的电流取决于外部输出的速度和数量,以及在这些输出上的负载电容。根据设计的具

24、体电路可一计算出 3 3V 电源所消耗的电流 60mA, 1 8V 电源所消耗的电流 30mA,因此可以得出该系统在全速工作的状态下,最大功耗为 250mA。在本系统的设计中采用了两片 AMSlll7 来提供 DSP 芯片的加电源和内核电源。 AMSlll7 为最大输出电流可达 800mA的 LDO(Low Dropout Voltage Regulator),包含 1 8V、 3 3V 等固定电压输出几种类型。 由于 LDO 的功耗为 10,而系统的输入电压为 5V,为将低整个系统的功耗,将 AMSlll7-1 8 的输入直接接至 0 AMSlll7 3 3的输出端,而不是直接接到 5V 电

25、源电压上,这样系统功耗将降低 51roW。系统在工作状态下逻辑电平在不停的快速发生变化,因此系统的电源也会出现不同程度的波动,为保证系统的电源完整性,在输入 5V 电源、 3 3V 电源、 1 8V 电源的输出处都增加了大容量的储能电容,在所有芯片的各个电源管脚处都增加了去耦电容。由于有两个电源,需要考虑的个问题是加电次序。理想情况下, DSP 芯片上的两个 电源同时加电,但是在一些场合很难做到。如果不能做到同时加电,应先对 DVdd 加电,然后对 CVdd 加电。 DVdd 应不超过 CVdd 电压 2V。 p o w e r 电源112233445566778899101011111212

26、1313141415151616171718181919202021212222232324242525262627272828t m s 7 3 h d 3 0 1C 1 2T P S 7 3 H D 3 0 1L E D 2R 1 20.15kR 1 41KR 1 31KR 1 51 0 0 KR 1 71KR 1 810KR 1 61 0 0 KC54 7 u fC70 1 . U FC60.1ufC81 0 u fC91 0 u f+ 1 0o u t 5 .5 vo u t 3 .3 vo u t 5 .5 vo u t 3 .3 v图 7 电源电路 4.2.5 JTAG 接口设计

27、JTAG(JointTestActionGroup)是 1985 年制定的检测 PCB 和 IC 芯片的一个标准, 1990 年被修改后成9 为 IEEE 的一个标准,即 IEEEll49 1 1990。通过这个标准,可对具有 JTAG 接口的芯片的硬件电路进行边界扫描和故障检测。具有 JTAG 接口的芯片,相关 JTAG 引脚的定义为: TCK 为损 4 试时钟输入 ;TDI 为测试数据输入,数据通过 TDI 引脚输入 JTAG 接口; TDO 为测试数据输出,数据通过 TDO 引脚从JTAG 接 ISl 输出; TMS 为测试模式选择, TMS 用来设置 JTAG 接口处于某种特定的测试模

28、式; TRST 为测试复位,输入引脚,低电平有效。设计一个 DSP 系统,一般必须考虑系统的软件硬件调试,调试 DSP系统一般离不开 DSP 仿真器。而仿真器通过仿真接口实现与 DSP 之间的数据交互。设计仿真接口比较简单,只要根据 DSP 芯片所提供的接口类型按照相应的接口标准即可。图 4 5 为 JTAG 仿真接口定义。 GND8T D I3T R S T2V C C5T M S1NC6T D O7GND4T R E T9GND10T C K11GND12E M 013E M 114J T A G 接口I D C 1 4V C CR110kR210k+ 3. 3V 图 8 JTAG 电路

29、4.2.6 内部存储单元及外部存储扩展 内部存器 TMS320C54X 内一般包括 192K 字的可寻址存储器空间: 64K 字程序空间, 64K 字数据空问和 64K 字的I 0 空间。片内存储器的结构和容量根据芯片的型号有所区别,但都包含随机存取存储器 (RAM)和只读存储器 (ROM)。其中 RAM 又可以分为两种类型:单访问 RAM(SARAM)和双访问 RAM(DARAM)。当处理器发出的地址处在片内存储器的范围内时,就对片内的 RAM 或数据 ROM 寻址。当数据存储器地址产生器发出地址不在片内存储器的范围内,处理器就会自动对外部 数据存储器寻址 10 。V C C11V C C3

30、3A 1618A 1519A 1420A 1222A 1321A 1124A 1025A926A827A742A643A544A41A32A23A14A05NC23NC28C E #6O E #41W E #17L B #39U B #40D 1538D 1437D 1336D 1235D 1132D 1031D930D829D716D615D514D413D310D29D18D07GND12GND34I S 61L V 12 816U 10+ 3.3VC 6A0.1uFC 7A0.1uF+ 3.3VR 10360R 11360R 1210KA 13A 12A 11A 10A9A8A7A6A5

31、A4A3A2A1A0D 15D 14D 13D 12D 11D 10D9D8D7D6D5D4D3D2D1D0M E M O R Y 存储器图 9 存储器及扩展电路 4.2.7 外部总线及外部存储器接口 通常一个 DSP 系统除了 DSP 芯片外,还需要外部的存储器。外部存储器一般有两种,一种是存储程序和固定数据的 EPROM PROM,一种是可读可写的快速 RAM。目前市场上的 EPROM 工作电压一般为 5V,与 3 3VDSP 芯片相接时需要考虑电平转换,丽且体积都较大。 FLASH 存储器与 EPROM 相比,具有更高的性能价格比,而且体积小、功耗低、可电擦写,使用比较方便, 3 3V Hash 可直接与 DSP 相接。因此采用 Flash 存储器存储程 序和固定数据是一种比较好的选择。 TMS320VC5402 通过外部总线与外部存储器以及 I O 设备相连。外部总线接口由数据总线、地址总线以及一组控制信号组成,可以用来寻址片外存储器和 I 0 口 【 20】 。主要外部接口信号见表 4 1。

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。