DSP课设报告(DOC)_第1页
DSP课设报告(DOC)_第2页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

1、DSP 技术课程设计报告 I 成绩评定表 学生姓名 班级学号 专业 电子信息工程 课程设计题目 FIR 滤波器(带 通滤波器) 评 语 组长签字: 成绩 日期 20 年 月曰 DSP 技术课程设计报告 II 课程设计任务书 学院 信息科学与工程学院 专业 电子信息工程 学生姓名 班级学号 课程设计题目 FIR 滤波器(带通滤波器) 实践教学要求与目的: 要求: 1. 设计一个截止频率为 1500Hz 3000Hz 的带通数字滤波器 2. 在 DSP TMS320C550 上实现 FIR 滤波 3. 对 FIR 滤波器各项指标进行评价 目的: 课程设计是重要的实践教学环节。学生通过动手做软件和硬

2、件设计,能够熟 练掌握数字信号处理技术,增加对基础知识的消化和理解。 工作计划与进度安排: 2012 年 12 月 31 日 进行课程设计动员,分配课程设计题目,查阅资料。 2013 年 01 月 04 日 查阅资料 2013 年 01 月 05 日到 2013 年 1 月 9 日为上机时间 调试程序及仿真、调试出结 果、调试结果验收并写报告。 2013 年 01 月 10 日 上午正式提交报告和答辩。 DSP 技术课程设计报告 III 指导教师: 201 年 月曰 专业负责人: 201 年 月曰 学院教学副院长: 201 年 月曰 摘要 数字信号处理器,也称 DSP 芯片,是针对数字信号处理

3、需要而设计的一种 具有 特殊结构的微处理器,数字滤波是语音处理、图像处理、频谱分析等应用中的基本处理 算法。DSP 是一种处理数字信号的专用微处理器,主要应用于实时快速地实现各种信 号的数字处理算法,用 DSP 芯片实现数字滤波具有稳定性好、精确度高、不受环境影 响等优点。 数字滤波器分为有限冲激响应滤波器 (FIR 滤波器)和无限冲激响应滤波器 (IIR 滤波器),FIR 滤波器属于经典滤波器,优点就是由于不存在系统极点。 FIR 滤波器是 绝对稳定的系统,FIR 滤波器还确保了线性相位,在信号处理中占有极其重要的地位, 数字滤波器一直以来就是数字信号处理器 (DSP)最广为人知的应用。 关

4、键字:DSP 滤波器 FIR 数字信号处理DSP 技术课程设计报告 IV 目录 1 1 数字滤波器简介及设计 . 1 1.1 数字滤波器的定义和分类 . 1 1.2 数字滤波器的设计方法概述 . 1 1.3 窗函数法 . 3 1.4 模拟数字变换法 . 3 2 2 系统方案设计 . 5 2.1 系统功能介绍及流程图 . 5 2.2 FIR 滤波器的实现方法 . 6 3 3 数字滤波器的 MATLABMATLAB 辅助设计 . 8 3.1 MATLAB 简介 . 8 3.2 FDAtool 界面介绍 . 8 3.3 FIR 数字滤波器设计 . 9 3.3.1 得到滤波器冲激响应序数方法 . 9

5、3.3.2 FIR 参数设定及频域响应特性 . 10 4 4 数字滤波器的 CCSCCS 实现 . 11 4.1 简述 CCS 环境 . 11 4.2 CCS 配置 . 12 4.3 CCS 环境中工程文件的使用 . 12 4.4 编译链接和运行目标文件 . 13 4.4.1 对程序进行编译链接 . 13 4.4.2 装载.out 文件 . 13 5 5 运行并观察结果 . 15 结论 . 17 参考文献 . 18 致谢 . 19 DSP 技术课程设计报告 V 附录 A CA C 程序清单 . 20 附录 B B 滤波器输出系数 . 25DSP 技术课程设计报告 1 第 1 章 数字滤波器设计

6、原理 1.1 数字滤波器的定义和分类 数字滤波器是指完成信号滤波处理功能的,用有限精度算法实现的离散时间线性非 时变系统,其输入是一组数字量,其输出是经过变换的另一组数字量。因此,数字滤波 器本身既可以是用数字硬件装配成的一台完成给定运算的专用的数字计算机, 也可以将 所需要的运算编成程序,让通用计算机来执行。 从数字滤波器的单位冲击响应来看,可以分为两大类:有限冲击响应 (FIR)数字滤波 器和无限冲击响应(IIR)数字滤波器。滤波器按功能上分可以分为低通滤波器 (LPF)、高 通滤波器(HPF)、带通滤波器(BPF)、带阻滤波器(BSF)。 1.2 数字滤波器的设计方法概述 实际中的数字滤

7、波器设计都是用有限精度算法实现的线性非移变系统,一般的设计 内容和步骤包括: 根据实际需要确定数字滤波器的技术指标。 例如滤波器的频率响应的幅度响应和 截止频率等等。 (2) 用一个因果稳定的离散线性非移变系统的系统函数去逼近这些性能指标。 集体来 说,就是用这些指标来计算系统函数 H(z) o (3) 利用有限精度算法来实现这个系统函数。 这里包括选择运算结构、进行误差分析 和选择合适的字长等。 (4) 实际的数字滤波器实现技术,包括采用通用的计算机软件和专用的数字滤波器硬 件来实现,或者采用通用或专用的数字信号处理器来实现。 而 IIR 滤波器设计的方法有两类,经常采用的第一类设计方法是借

8、用于模拟滤波器 设计方法来进行的。其设计的步骤是:先设计模拟原型滤波器,得到其传输函数 Ha(s), 然后将Ha(s)按某种方法转换成数字滤波器的系统函数 H(z),这一类相对来说容易一些。 另一类设计方法是直接在频域或者时域中进行设计, 这个需要借助于计算机做一些辅助 设计。 DSP 技术课程设计报告 2 1.3 窗函数法 窗函数设计的基本思想是要选取某一种合适的理想频率选择性滤波器, 然后将它的 脉冲响应截断以得到一个线性相位和因果的 FIR 滤波器。因此这种方法的重点在于选择 某种合适的窗函数和一种理想滤波器。对于给定的滤波器技术指标,选择滤波器长度和 具有最窄主瓣宽度和尽可能小的旁瓣衰

9、减的某个窗函数。任何数字滤波器的频率响应 A(ejw)都是 w的周期函数,它的傅立叶级数展开式为: H(严)=几(心皿 (3.1) - sin(oc(w-_) 、.儿( 3.2) - ) 2 其中的 Wc 为滤波器的归一化的截止频率。傅立叶系数 hd(n)实际上就是理想数字滤波 器的冲激响应。获得有限冲激响应数字滤波器的一种可能方法就是把无穷级数截取为有 限项级数来近似,而吉布斯(Gibbs)现象使得直接截取法不甚令人满意。 窗函数法就是用被称为窗函数的有限加权系列 W(n)来修正式(3.2)的傅立叶级 数,以求得要求的有限冲激响应序列 h(n),即有: h( n)=hd( n)W(n) (3

10、.3) w(n)是有限长序列,当 nN-1 及*0 时,W(n)=0。 几种常用的窗函数 工程中比较常用的窗函数有矩形窗函数、三角形 (Bartlett)窗函数、汉宁(Harming) 窗函数、海明(Hamming)窗函数、布莱克曼(Blackman)窗函数和凯塞 Kaiser)窗函数。 窗函数的选择原则是: 具有较低的旁瓣幅度,尤其是第一旁瓣幅度; 旁瓣幅度下降速度要大,以利增加阻带衰减; 主瓣的宽度要窄,以获得较陡的过渡带。 通常上述三点很难同时满足。当选用主瓣宽度较窄时,虽然得到较陡的过渡带,但 通带和阻带DSP 技术课程设计报告 3 的波动明显增加:当选用最小的旁瓣幅度时,虽能得到匀滑

11、的幅度响应和较小 的阻带波动,但过渡带加宽。因此,实际选用的窗函数往往是它们的折衷。在保证主瓣 宽度达到一定要求的条件下,适当牺牲主瓣宽度来换取旁瓣波动的减少。总之窗函数不 仅有截短的作用,而且能够起到平滑的作用在很多领域得到应用。 表 1.1 给出了几种常用窗函数的性能对比表。 表 1.1 常用窗函数的性能对比表 窗函数 过渡带宽度 旁瓣峰值幅度(dB) 阻带最小衰减CdB) 矩形窗 4打/幵 -13 -21 三角窗 8/n -25 -25 汉宁窗 Znln -31 -44 海明窗 -41 -53 布拉克曼窗 -57 -74 凯塞窗 10/n -57 -80 1.4 模拟数字变换法 模拟网络

12、的逼近和综合理论已经发展的相当成熟, 产生了许多效率很高的设计方法, 很多常用滤波器不仅有简单而严格的设计公式, 而且设计参数已表格化, 设计起来方便准确。 而数字滤波器在很多场合要完成的任务与模拟滤波器相同,如做低通、高通、带通和带阻滤波 器等。因此,完全可以借助于模拟滤波器的理论和设计方法来设计数字滤波器 IIR 数字滤波 器具有无限的冲激响应,与模拟滤波器相匹配,所以 IIR 滤波器的设计可以采取在模拟 滤波器设计的基础上进一步变换的方法。平时所要设计的数字滤波器,阶数和类型并不 一定是完全给定的,很多时候要根据设计要求和滤波器效果不断的调整,以达到设计的 最优化。在这种情况下,滤波器设

13、计就要进行大量复杂的运算,单纯的靠公式计算和编 制简单的程序很难在短时间内完成。利用 MATLAB 强大的计算功能进行计算机辅助设 计,可以快速有效地设计数字滤波器,大大简化了计算量。用模拟 -数字变换法设计 IIR 数字滤波器,首先必须设计一个模拟滤波器,它有许多不同的类型,主要有以下几种: 1 巴特沃斯(Butterworth 滤波器 BW 滤波器是根据幅频特性在通带内具有最平坦特性而定义的滤波器,对一个 N 阶低通滤 波器来说,所谓最平坦特性就是模拟函数的前 2N-1)阶导数在3=(处都为零,BW 滤波器的 另DSP 技术课程设计报告 4 一个特性是在通带和阻带内的幅频特性始终是频率的单

14、调下降函数,且其模拟函数随阶数 N 的增大而更接近于理想低通滤波器。 2. 切贝雪夫(ChbysheW 滤波器 CB 低通滤波器的模拟函数由切贝雪夫多项式定义,且其在通带内的幅频响应是波动的,在 阻带则单调变化。 3. 逆切贝雪夫(In verse-Chbyshew 滤波器 ICB滤波器的误差在通带内是单调增加的CB滤波器的误差在通带内均匀起伏地分布,ICB 滤波器的误差在阻带内是均匀起伏地分布的,因而在相同阶数时 CB 滤波器的过渡特性将优于 BW 滤波器。 4. 考尔(Cauer 简写为 C)滤波器也称为椭圆滤波器,其幅度特性是由雅可比 Tacobian 椭 圆函数决定的,在通带和阻带内都

15、具有等波纹”幅度特性,其系统函数不仅具有极点而且也有 零点。 上述滤波器是最常用的,此外还有贝塞耳(Besse)滤波器等。设计时选用那种类 型,设计者应视用途、指标要求等自行决定。一般地说,在相同设计指标下,“ C 滤波器过渡 带最为陡峭,或者阶数最低,“CB 滤波器次之,“BW 滤波器则更不及“CB 滤波器陡峭,或者 所需阶数最高。但从设计的复杂性和参数变化对滤波器特性的影响,即参数灵敏度的角度看, 情况恰恰相反。DSP 技术课程设计报告 5 2.1 系统功能介绍 任何一个实际的应用系统中,都存在着各种各样的干扰。数字滤波器是使用最为广 泛的信号处理算法之一。数字滤波器在语音信号处理、信号频

16、谱估计、信号去噪、无线 通信中的数字变频以及图像信号等各种信号处理中都有广泛的应用。 在本设计中,先使用 MATLAB 模拟产生合成信号,然后再利用 CCS 进行滤波处理 将模拟信号的采样频率设定为 8000Hz,设计一个 FIR 带通滤波器,其参数为: 滤波器名称: FIR 带通滤波器 米样频率: Fs=8000Hz 通带: 1500Hz 3000Hz 滤波器系数: 由 MATLAB 根据前述参数求得。 系统方案设计流程图: 图 2.1 系统方案设计流程图 带通数字滤波器: H(e唸唸) )= (H(j) ) 4 少少| 2 2 系统方案设计 产生输入数据 初始化 DSP 滤波处理 F 保存

17、滤波结果到输出 元 日单 开始 读入新数据并存放到 栈顶 待滤波的样本点数处理完成 DSP 技术课程设计报告 6 0 兀兀 ,2 豹豹 0 2.2 FIR 滤波器的实现方法 在数字信号处理系统中,常常要用到 FIR 数字滤波器,这是因为用 FIR 滤波器可以逼 近任意幅频特性的滤波器,并获得很好的性能,在本论文中介绍 FIR 低通滤波器的 DSP 实现。 TMS3205410 是 16 位的定点处理器,所以在进行汇编程序设计时,FIR 滤波器系数 要采用 Q15 格式,即必须将上述系数转化为 Q15 格式,这只要将滤波器各系数乘以 215 即可。 用 DSP 实现 Z算法是十分方便的,常用的方

18、法有两种:线性缓冲区法和循环缓冲 区法。在本文中采用的是循环缓冲法,循环缓冲区法的特点是: (1) 对于 N 阶的 FIR 滤波器,在数据存储器中开辟一个也称为滑窗的 N 个单元的缓 冲区,滑窗中存放最新的 N 个输入样本; (2) 每次移入新的样本时,以新样本改写滑窗中老的数据,而滑窗中的其他数据不 需要移动; (3) 利用片内 BK (循环缓冲区长度)寄存器对滑窗进行间接寻址,循环缓冲区地址 首尾相邻。 FIR 滤波器的核心算法是计算输入信号与滤波器系数的卷积。设 x(n)为输入信号,h(n) 为FIR 滤波器的冲击响应,n=0,,N-1,则 FIR 滤波器的输出 y(n)就是 x(n)与

19、 h(n)的卷积, 即: N 二 yn -、xn - m*hm (4.5) 由于卷积是数字信号处理中最常用到的算法,因此几乎所有的 DSP 芯片中都设有专DSP 技术课程设计报告 7 门的指令支持卷积运算。在 TMS3205410 中可以用 macd 指令完成卷积。macd 指令的形式 如下:macd( Smem, pmad, src); 在 macd 指令中, Smem 是间接寻址参数, 它是指令中指向数据存储器的单地址。 Pmad 是表示程序存储器地址的 16 位常数。Src 表示累加器,可以是 A 累加器或是 B 累加器。这 条指令在执行时,先把指令中的 pmad 常数送到程序地址寄存器

20、的 PAR 中,然后将 Smem 地址中的数据用 PAR 地址在程序存储器中读取的数据相乘,并将乘积结果累加到由 Src 指定的累加器中。在指令执行时,Smem 地址中的内容被同时复制到 T 寄存器和 Smemf 氐 中之后的下一个地址单元中。 若采用 repea 指令重复执行 macd 指令, 则在执行指令的最 后, PAR寄存器自动加 1,这样当 macd 再次执行时就直接用 PAR 中的地址读取程序存储 器中的数据。通常情况下,macd 指令执行时需要三个周期。但是若用 repea 指令执行 macd, 进入流水线后只要一个周期就可以执行一次 macd 指令。 由此可见, 该指令同时完成

21、了乘 累加和数据延迟(移位)的功能,这正是卷积算法所要求的。 对于输入序列,它在两个循环缓冲器里的存储情况如下,要建立缓冲区首先将循 环缓冲区大小寄存器的值设为 N/2 辅助寄存器 AR4 指到缓冲区 1( Bufferl)的顶部 AR5 指到缓冲区 2 ( Buffer2)的底部,新来一个样本存储到缓冲区 1 中时,应先将缓冲区 1 顶部的数据移到缓冲区 2 底部,处理器然后进行乘加运算,滤波程序每步运算后 AR4 指 向数据移到的下一个窗口,而 AR5 则指向下一个输入数据,对于下一步运算 AR4 指向 地址 1,AR5 指向地址 N/2。如图4.3 示。 input Sequence S

22、torage 图 4.3 FIR 系数存储格式示意图 考虑到在执行 macd 指令时是将低地址的数据复制到高地址来完成延迟功能,所以在用 macd 指令计算卷积时,先计算 x(n-N+1)与 h(N-1)的乘积,最后才计算 x(n)与 h(0)的乘积 因此在程序中,FIR 滤波器的系数在程序存储器中按倒序存储1517 eufJer 2 AddresDSP 技术课程设计报告 8 3 数字滤波器的 MATLAB 辅助设计 3.1 MATLAB 简介 MATLAB 是矩阵实验室(Matrix Laboratory)之意。除具备卓越的数值计算能力外, 它还提供了专业水平的符号计算,文字处理,可视化建模

23、仿真和实时控制等功能。 MATLAB 的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相 似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多, 当 前流行的MATLAB 5.3/Simulink 3.0 包括拥有数百个内部函数的主包和三十几种工具包 (Toolbox)。工具包又可以分为功能性工具包和学科工具包。功能工具包用来扩充 MATLAB 的符号计算,可视化建模仿真,文字处理及实时控制等功能。学科工具包是 专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于此类。 MATLAB 具有许多的优点比如:语言简洁紧凑,使用方便灵活,库

24、函数极其丰 富;MATLAB 既具有结构化的控制语句(如 for 循环,while 循环,break 语句和 if 语句), 又有面向对象编程的特性;程序的可移植性很好,基本上不做修改就可以在各种型号的计 算机和操作系统上运行,等等优点。因此在各个学科和领域得到了广泛的应用。 3.2 FDAtool 界面介绍 FDAtool( Filter Design Analysis tool )是 MATLAB 信号处理工具箱里专用的滤波器 设计分析工具, MATLAB6.0 以上的版本还专门增加了滤波器设计工具箱 (Filter Design toolbox) 。FDAtool 可以设计几乎所有的基本

25、的常规滤波器, 包括 fir 和 iir 的各种设计方 法。它操作简单,方便灵活。 FDAtool 界面总共分两大部分,一部分是 design filter,在界面的下半部,用来设置 滤波器的设计参数, 另一部分则是特性区, 在界面的上半部分, 用来显示滤波器的各种 特性。 design filter 部分主要分为:filter type (滤波器类型)选项,包括 lowpass (低通)、 highpass (高通)、bandpass(带通)、bandstop (带阻)和非凡的 fir 滤波器。 design method (设计方法) 选项, 包括 iir 滤波器的 butterworth

26、 (巴特沃思) 法、 chebyshev type i(切比雪夫 i 型)法、chebyshev type ii (切比雪夫 ii 型)法、elliptic (椭 圆滤波器)法和 fir 滤波器的 equiripple 法、least-squares(最小乘方)法、window (窗 函数)法。 filter order (滤波器阶数)选项,定义滤波器的阶数,包括 specify order (指定阶数) 和DSP 技术课程设计报告 9 minimum order (最小阶数)。在 specify order 中填入所要设计的滤波器的阶数(n 阶 滤波器,specify order= n-1)

27、,假如选择 minimum order 则 matlab 根据所选择的滤波器类 型自动使用最小阶数。 frenquency specifications 选项,可以具体定义频带的各参数,包括采样频率 fs 和频 带的截止频率。它的具体选项由 filter type 选项和 design method 选项决定,例如 bandpass (带通)滤波器需要定义 fstop1 (下阻带截止频率)、fpass1 (通带下限截止频率)、fpass2 (通带上限截止频率)、fstop2 (上阻带截止频率),而 lowpass (低通)滤波器只需要定 义fstop1、fpass1。采用窗函数设计滤波器时,由

28、于过渡带是由窗函数的类型和阶数所 决定的,所以只需要定义通带截止频率,而不必定义阻带参数。 mag ni tude specificatio ns 选项,可以定义幅值衰减的情况。例如设计带通滤波器时, 可以定义 wstop1 (频率 fstop1 处的幅值衰减)、wpass(通带范围内的幅值衰减)、wstop2 (频率 fstop2 处的幅值衰减)。当采用窗函数设计时,通带截止频率处的幅值衰减固定 为 6db,所以不必定义。window specifications 选项,当选取采用窗函数设计时,该选项 可定义,它包含了各种窗函数。 设置好参数后点击下方的(design Filter)滤波器设

29、计即可得到所设计的滤波器。 设计完成后,可通过主菜单选项 Analysis 来分析滤波器的幅频响应和相频响应特性。 点击 Analysis中的 Magnitude Response 对幅频特性和相频特性进行分析。 3.3 FIR 数字滤波器设计 3.3.1 得到滤波器冲激响应序数方法 在主菜单中选择 Targets Code Composer Studio(r) IDE 命令, 弹出 Export to Code Composer (r)IDE 窗口。设置 Numerator 及 Export as 选项单击 Select target 按钮,选择目 标 DSP 这里选择 C55X simul

30、ate 单击 OK 确认。滤波器冲激响应系数将按默认名称 s.h 显示出来结果见附录 D。 对 IIR 系数输出,在主菜单中选择 File Expor 命令,打开 Export 对话框,选择输 出到Text file,单击 OK 确认,即可将参数输出到指定文件中。在设计过程中,可以对DSP 技术课程设计报告 10 比滤波器幅频和相频特性及它们的设计要求,对参数和滤波类型做出调整。 332 FIR 参数设定及频域响应特性 设计 FIR 带通滤波器,采样频率 fs=8000Hz, fstop 仁 1400Hz, fpass1=1500Hz,fpass2=3000Hz,fstop2=3100HZ 阻

31、带的最小衰减为 40dB,通带的最大衰减 为3dB。频率响应特性如图 4.1 所示。 Fi ltr h-H.ii -i T1 ( (Q&-I a ilcJ. E-tb * i L* t E Ti Lp D U 0 & 贮| G 0 E ifi* =* J- Fl h-J O S 0 将 pgigning Filter. Done 川幵託 l| d 3 蛙 I 龜 *3 QI FLU r Ir . QIISLDJW . | 髯 GSIH E. | 型!| * 4. h | 也版启損新 嚣尊菖托盯 图 3.1 FIR 带通滤波器参数设置及频率响应特性 图 3.2 FIR 带通滤波器

32、设置|rvc1u- DfrwtiFu FB ittar SOifCiK YU DA 刼 5h?Fj|!jr Fi) )ei . 广(LOpfiS: f r 呂 BTF d*! 15 2 25 1 35 Ff#4u1Cy Fief LifWf 厂 荷Mrmun-wr _ PwfrrFsctoc 陌 MX* MM SpKanCMkrd gm: pje AstWl Jk|Mn Aah s3 MK-pcfiie TJ4* twMshw 广 ! |huHirw- th g MiwirfI1MfW DSP 技术课程设计报告 11 4 数字滤波器的 CCS 实现 4.1 简述 CCS 环境 CCS, 即卩

33、Code Composer Studio,是 TI 公司在 1999 年推出的一个开放、具有强大 集成开发环境。它最初是由 GO DSP 公司为 TI 的 C6000 系列 DSP 开发的。在 TI 收购 了 GO DSP 后,将 CCS 扩展到了其它系列。现在所有 TI 的 DSP 都可以使用 CCS 进行 开发,但是其中的 DSPBIOS 功能只有 C5000 和 C6000 的 CCS 中才提供。 以前的 DSP 软件开发都是在一个分散的开发环境下进行,程序的编写、代码的生 成以及调试等都是要通过命令来完成,类似于以前的 DOS,十分烦杂。而 CCS 的出现 是 DSP 开发软件的一次革

34、命性的变化。CCS 主要由代码生成工具、CCS 集成开发环境、 DSPBIOS 和 API 函数以及 RTDX 组成。 集成可视化代码编辑界面,可以方便地直接编写 C、汇编、.h 文件、.cmd 文件等。 集成代码生成工具,包括汇编器、优化的 C 编译器和连接器等。具有完整的基本调试工 具,可以载入执行文件(.out),查看寄存器窗口、存储器窗口和变量窗口、反汇编窗口等, 支持在C 源代码级进行调试。支持多片 DSP 联合调试。断点工具,支持硬件断点、数 据空间读/写断点、条件断点等。探针工具,用于进行算法仿真,数据监视等。剖析工具, 用于评估代码执行的时间。数据图形显示工具,可绘制时域/频域

35、波形、眼图、星座图等, 并可以自动刷新。提供 GEI 工具,用户可以根据需要编写自己的控制面板 /菜单,从而 方便直观地修改变量,配置参数。 DSP/BIOS(Basic In put Output System 和 API(Applicati on Program In terface)函数为 CCS 的主要插件之一。DSPBIOS 可以看作是一个准实时操作系统,支持 TI DSP 芯片的 各种实时操作系统都是以 DSP/BIOS 作为底层软件,为嵌入式应用提供基本的运行服务。 并且,它还能实时获取目标机的信息,并将其传递给主机上的 BIOSCOPE 工具,对应 用程序进行实时分析 RTDX

36、 (Real Time Data Exchange 插件是 CCS 中另一个十分重要的 插件。实时数据交换技术为 CCS 提供了一个实时、连续的可视环境,开发人员可以看 到 DSP应用程序工作的真实过程。RTDX 允许系统开发者在不停止运行目标应用程序的 情况下在计算机和 DSP 芯片之间传输数据,同时还可以在主机上利用对象链接嵌入 (OLE)技术分析和观察数据。RTDX 可以在 DSPBIOS 中使用,也可以脱离 DSP/BIOS 使 用。由于 CCS 中的Simulator 不支持 RTDX,所以必须在连接有硬件仿真器或目标板的 DSP 技术课程设计报告 12 Emulator 下使用。

37、4.2 CCS 配置 击桌面图标的“setupCCStudio v3.1 图标,运行 CCS 设置程序,如图 5.1 所示:点 击Add Save&quit 完成设置。 图 4.1 用标准配置文件设置系统配置 CCS 环境中工程文件的使用 在 CCS 集成环境下开发汇编程序或者 C/C+程序,首先要建立一个工程项目文件 (*.pjt),再向工程项目文件中添加汇编程序源文件(*.asm), C/C+源文件(*.c)和链 接命令文件(*.cmd),并设置工程项目选项。使用 CCS 开发应用程序的一般步骤如下: 创建或打开一个工程项目文件(*.pjt),编辑各类文件,可以使用 CCS 提供的

38、集成 编辑环境,对链接命令文件和源程序进行编辑。 对工程项目进行编译。在编译过程中如果出现语法错误,将在编译链接信息视窗 (build)窗口中显示错误信息,用户可以根据显示的信息找到错误的位置,更改错 误。 对结果和数据进行分析和算法评估。用户可以利用 CCS 提供的探测点.图形显示和 性能评价等工具,对运行结果及输出数据进行分析,评估算法的可能性。 下面分别进行介绍建立工程文件,单击 Project New命令,系统将弹出如图所示的 DSP 技术课程设计报告 13 对话框,在该对话框中输入项目文件名,如 fir 单击 完成”系统就会创建一个名为 fir.pjt 的工程项目文件。 选择 Fil

39、e New可打开一个 新的编辑窗口。在新 窗口中输入 源代码。选择 FileSave,在出现的对话框中输入一个文件名,并选择一个扩展名(C 源代码选择*.c , 汇编源代码选择*.asm),然后单击保存将源程序保存。 添加文件:单击 Project Add File to Project 命令然后会弹出如图 5.3 所示的对话框, 单击打开完成对文件的添加。 图 4.3 向工程项目中添加文件对话框 4.4 编译链接和运行目标文件 4.4.1 对程序进行编译链接 对程序进行编译:执行 Project Compile 命令就可以对当前的汇编程序进行编译生 成.obj 文件。如果程序存在语法错误,那

40、么就会在下面的编译链接信息框中显示错误信 息。根据错误提示,读者可对程序进行修改 。 对程序进行编译链接执行 Project Build 命令,就可以对当前的项目文件同时进行 编译,汇编和链接操作,并生成与工程项目名称相同的可执行的 .out 文件。如果有错误 信息,贝 U 会在 编译链接”信息框中显示。也可以执行 Project 下的 build All 命令,所有项 目中的文件重新编译,汇编和链接,生成.out 文件。 4.4.2 装载.out 文件 单击主菜单“File 中 “LoadProgram”选项,在对话框中,在 CCS 安装目录下,找到 DSP 技术课程设计报告 14 构建该工

41、程的 Debug 目录,选择构建生成后的.out 文件,并打开 CCS 装载完毕后,该 “*out 文件到目标 dsp 之后,会自动弹出“Disassembl 窗”如图 5.4 所示。 ;Ei li E 材 E 应luE EL 如 tig Iiolx IQ 用 BUS E*-n 融 lp H j片卫脑站t; a 吃 心 = 1= * 备* * 卑知(5 0 S 回 ft 图 4.4 CCS 调试程序时出现的视窗加工程界面神 评 (F 2? 蛍?J1I LJL fih* F FFPJIIKU b far _| DstLtj; PS5E a: ElAMi;FrWI: 图 5.3 FIR 带通滤波器

42、滤波后频域波形图 图 5.1 的仿真波形图时域部分上面的波形为两个参考波频率叠加后的波形,图 5.2 为滤掉干扰信号后的低频信号,频域波形窗口中第一部分所示的是 Display Type 为 FFT Magitude 的两个参考信号的后的频域波形, 图 5.3 为经过滤波后保留的通带频率 1500HZ 阻带频率 3000HZ 的带通信号的频域波形图。DSP 技术课程设计报告 17 结论 本文以窗函数法设计线性相位 FIR 数字滤波器和用模拟滤波器设计 IIR 滤波器,介 绍用MATLAB 工具软件设计数字滤波器的方法并在 CCS 上仿真结果观察波形图可以看 出本次设计基本实现了目标要求, 但还

43、存在误差,分析误差原因为在用 DSP 实现 IIR 滤 波器时,在定点运算中,乘法运算的结果因位数增多而需要进行截止或舍入处理,因而 引起了乘法运算的量化效应。由于舍入和截尾都是非线性过程,所以量化效应相当于在 滤波器某些链路中引入了非线性环节,给分析和设计带来问题。 如何设置 FIR 滤波器的参数以及加窗的计算等对滤波器的功能有着非常重要的影 响。本文在 MATLAB 平台上,研究了基于窗函数法并同时考虑衰减等多个参数设置问 题。 MATLAB 具有强大的数值计算和图形功能,虽然其执行效率较低,但其编程效率 与可读性、可移植性要远高于其他高级语言。它集数值分析、矩阵运算、信号处理和图 形显示

44、于一体,构成了一个界面友好的用户环境。它的信号处理工具箱包含了各种经典 的和现代的数字信号处理技术,是一个非常优秀的算法研究与辅助设计的工具。在设计 数字滤波器时,运用它来进行辅助设计,在系统的准确性和高效率方面起到了至关重要 的作用。 在对设计的数字滤波器的进行调试, 仿真时采用了 CCS 开发环境。CCS 加速和增 强了实时,嵌入信号处理的开发过程,它提供配置、构造、调试、跟踪和分析程序的工 具,在基本代码产生工具的基础上增加了调试和实时分析的功能。开发设计人员可在不 中断程序运行的情况下检查算法的对错,实现对硬件的实时跟踪调试,从而大大缩减了 程序的开发时间。DSP 技术课程设计报告 1

45、8 参考文献 汪春梅,孙洪波.TMS320C 55x DSP 原理及应用.第二版.北京:电子工业出版社 2008 姜 阳,周锡青.DSP 原理与应用实验.西安:西安电子科技大学出版社,2008 方华刚.DSP 原理与应用.北京:机械工业出版社,2006.1 程佩青,数字信号处理教程第二版,清华大学出版社, 2001.8 TMS320C55X DSP Programme s Guide SPRU376AZ.Texas Instruments,2001 TMS320C55X DSP Mnemonic Instruction Set Referenee Guide SORU374GZ. Texas

46、In strume nts,2002 TMS320C55XDSP AssemblyLanguage Tools User sGuide SPRU280HZ.Texas In strume nts,2004.DSP 技术课程设计报告 19 致谢 通过本次课程设计,使我加深了对 DSP 的理解及 CCS 环境还有 MATLAB 的使用, 还有经过在网上查找资料以及到图书馆学习,也使我更好的理解和认识了关于 DSP 设 计原理和实际中的应用过程。在这次课程设计中,我深深的体会到课本知识的重要性, 不把课本知识钻研透彻,就难以在自己专业课方面有所突破,以前总以为自己所学专业 课在以后用不上,所以学习态

47、度不端正,不认真学习专业课,通过这次课程设计我意识 到只是总有它的用处。 通过课程设计我也深刻认识到,理论知识学得再好,没有实践都会成为空谈,只有 通过实践,通过做一些实实在在的与理论知识有关的东西才能将所学理论知识巩固,才 能真正掌握理论知识。 最后,对给过我帮助的周锡青老师和所有同学表示忠心的感谢!DSP 技术课程设计报告 20 附录 A 1 主程序 FIR.C #i nclude s.h #i nclude math.h #define signal_1200 #define signal_23800 #defi ne sig nal_3_f 1700 #define signal_sample_f 8000 #defi ne pi 3.1415926 #defi ne coff_L 88 #defi ne bufer_L 256 int datan bufer_L; int outbufer_L; int firout; int xcoff_L+1; int k=0; int bufer=bufer_L; extern int fir(i nt *,i nt); extern int in it(i nt *,i nt); exter n int ou

温馨提示

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

评论

0/150

提交评论