DSP课程设计.docx
- 文档编号:26645627
- 上传时间:2023-06-21
- 格式:DOCX
- 页数:16
- 大小:196.81KB
DSP课程设计.docx
《DSP课程设计.docx》由会员分享,可在线阅读,更多相关《DSP课程设计.docx(16页珍藏版)》请在冰豆网上搜索。
DSP课程设计
DSP课程设计
淮阴工学院
《DSP技术及应用》课程设计报告
选题名称:
数字滤波器
系(院):
计算机工程学院
专业:
计算机科学与技术(嵌入式系统软件设计)
班级:
姓名:
学号:
指导教师:
学年学期:
2011~2012学年第1学期
2011年12月31日
设计任务书
课题
名称
数字滤波器设计
设计
目的
1.了解数字滤波器的主要功能;
2.理解数字滤波器设计的基本思路及方法;
3.练习使用汇编语言知识编写应用程序的基本步骤;
4.学习软件开发过程及资料收集与整理,学会撰写课程设计报告;
5.学会对所学知识进行总结与提高;
实验
环境
1.Windows2000以上操作系统;
2.CSS集成环境;
任务
要求
1.利用课余时间去图书馆或上网查阅课题相关资料,深入理解课题含义及设计要求,注意材料收集与整理;
2.在第15周末之前完成预设计,并请指导教师审查。
通过后方可进行下一步工作;
3.按指导书要求设计软件,实现设计的功能,并显示正确的结果;
4.要求形成稳定的程序软件,可以运行,方可申请参加答辩;
工作进度计划
序号
起止日期
工作内容
1
2011..12.26~2011.12.27
在预设计的基础上,进一步查阅资料,完成硬件电路设计。
2
2011.12.27~2011.12.27
编写软件代码,调试与完善。
3
2011.12.27~2011.12.28
测试程序,优化代码,增强功能,撰写课程设计报告。
4
2011.12.28~2011.12.30
提交软件代码、硬件电路成果和设计报告,参加答辩。
指导教师(签章):
年月日
摘要:
在信号处理中,滤波占有十分重要的地位。
数字滤波是数字信号处理的基本方法。
数字滤波与模拟滤波相比有很多优点,它除了可避免模拟滤波器固有的电压漂移、温度漂移和噪声等问题外,还能满足滤波器对幅度和相位的严格要求。
低通有限冲激响应滤波器(低通FIR滤波器)有其独特的优点,因为FIR系统只有零点,因此,系统总是稳定的,而且容易实现线性相位和允许实现多通道滤波器。
DSP(数字信号处理器)与一般的微处理器相比有很大的区别,它所特有的系统结构、指令集合、数据流程方式为解决复杂的数字信号处理问题提供了便利,本文选用TMS320C54X作为DSP处理芯片,通过对其编程来实现FIR滤波器。
关键词:
DSP;数字滤波;数字滤波器;波形;频谱
1.数字滤波器概述
1.1数字滤波器的研究背景和意义
当今,数字信号处理技术正飞速发展,它不但自成一门学科,更是以不同形式影响和渗透到其他学科;它与国民经济息息相关,与国防建设紧密相连;它影响或改变着我们的生产、生活方式,因此受到人们普遍的关注。
数字化、智能化和网络化是当代信息技术发展的大趋势,而数字化是智能化和网络化的基础,实际生活中遇到的信号多种多样,例如广播信号、电视信号、雷达信号、通信信号、导航信号等等。
上述这些信号大部分是模拟信号,也有小部分是数字信号。
模拟信号是自变量的连续函数,自变量可以是一维的,也可以是二维或多维的。
大多数情况下一维模拟信号的自变量是时间,经过时间上的离散化(采样)和幅度上的离散化(量化),这类模拟信号便成为一维数字信号。
因此,数字信号实际上是数字序列表示的信号,语音信号经采样和量化后,得到的数字信号是一个一维离散时间序列;而图像信号的经采样和量化后,得到的是数字信号是一个二维离散空间序列。
数字滤波技术是数字信号分析、处理技术的重要分支。
无论是信号的获取、传输,还是信号的处理和交换都离不开滤波技术,它对信号安全可靠和有效灵活地传输时至关重要的。
在所有的电子系统中,使用最多技术最复杂的要算数字滤波器了。
数字滤波器的优劣直接决定产品的优劣。
1.2数字滤波器的应用及现状
数字滤波器精确度高、使用灵活、可靠性高,具有模拟设备所没有的许多优点,已广泛应用于各个学科技术领域,例如数字电视、语音、通信、雷达、声纳、遥感、图像、生物医学以及许多工程应用领域。
随着信息时代数字时代的到来,数字滤波技术已经成为一门极其重要的学科和技术领域。
以往的滤波器大多采用模拟电路技术,但是,模拟电路技术存在很多难以解决的问题,例如,模拟电路元件对温度的敏感性,等等。
而采用数字技术则避免很多类似的难题,当然数字滤波器在其他方面也有很多突出的优点,所以采用数字滤波器对信号进行处理是目前的发展方向。
1.3数字滤波器的设计方法
数字滤波器按照单位取样响应
的时域特性可以分为无限脉冲响应(IIR)系统和有限脉冲响应(FIR)系统。
FIR数字滤波器的优点在于它可以做成具有严格线性相位,而同时可以具有任意的幅度特性;它的传递函数没有极点;这保证了设计出的FIR数字滤波器一定是平稳的。
所谓数字滤波器设计,简单地说,就是要找到一组能满足特定滤波要求的系数向量a和b。
而滤波器设计完成后还需要进一步考虑如何将其实现,即选择什么样的滤波器结构来完成滤波运算。
FIR数字滤波器的设计方法很多,其中较为常用的是窗函数设计法、频率采样设计法和最优化设计法。
本文讨论利用窗函数法、频率采样法和等波纹切比雪夫逼近法(调用remez函数)来分别实现各种FIR滤波器的设计。
窗函数法设计的基本思想是把给定的频率响应通过IDTFT(InverseDiscreteTimeFourierTransform),求得脉冲响应,然后利用加窗函数对它进行截断和平滑,以实现一个物理可实现且具有线性相位的FIR数字滤波器的设计目的。
其核心是从给定的频率特性,通过加窗确定有限长单位取样响应
;频率采样法设计的基本思想是把给出的理想频率响应进行取样,通过IDFT从频谱样点直接求得有限脉冲响应;最优化设计方法是指采用最优化准则来设计的方法,在FIRDF的最优化设计中,最优化准则有均方误差最小化准则和等波纹切比雪夫逼近(也称最大误差最小化)准则两种。
2.FIR滤波器概述
2.1FIR滤波器的基本概念
FIR滤波器:
有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。
因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。
滤波器设计是根据给定滤波器的频率特性,求得满足该特性的传输函数。
2.2FIR滤波器的特点
有限长单位冲激响应(FIR)滤波器有以下特点:
(1)系统的单位冲激响应
在有限个n值处不为零;
(2)系统函数
在
处收敛,极点全部在z=0处(因果系统);
(3)结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率抽样结构)也包含有反馈的递归部分。
设FIR滤波器的单位冲激响应
为一个N点序列,
,则滤波器的系统函数为
(2-2)
就是说,它有(N—1)阶极点在z=0处,有(N—1)个零点位于有限z平面的任何位置。
优点:
(1)很容易获得严格的线性相位,避免被处理的信号产生相位失真,这一特点在宽频带信号处理、阵列信号处理、数据传输等系统中非常重要;
(2)可得到多带幅频特性;
(3)极点全部在原点(永远稳定),无稳定性问题;
(4)任何一个非因果的有限长序列,总可以通过一定的延时,转变为因果序列,所以因果性总是满足;
(5)无反馈运算,运算误差小。
缺点:
(1)因为无极点,要获得好的过渡带特性,需以较高的阶数为代价;
(2)无法利用模拟滤波器的设计结果,一般无解析设计公式,要借助计算机辅助设计程序完成。
2.3FIR滤波器的种类
(1)数字集成电路FIR滤波器
一种是使用单片通用数字滤波器集成电路,这种电路使用简单,但是由于字长和阶数的规格较少,不易完全满足实际需要。
虽然可采用多片扩展来满足滤波要求,但会增加体积和功耗,因而在实际应用中受到限制。
设计数字滤波器的任务就是寻求一个因果稳定的线性时不变系统,使其系统函数H(z)具有指定的频率特性。
(2)DSP芯片FIR滤波器
另一种是使用DSP芯片。
DSP芯片有专用的数字信号处理函数可调用,实现FIR滤波器相对简单,但是由于程序顺序执行,速度受到限制。
而且,就是同一公司的不同系统的DSP芯片,其编程指令也会有所不同,开发周期较长。
图2.1DSP芯片FIR滤波器
(3)可编程FIR滤波器
还有一种是使用可编程逻辑器件,FPGA/CPLD。
FPGA有着规整的内部逻辑块整列和丰富的连线资源,特别适合用于细粒度和高并行度结构的FIR滤波器的实现,相对于串行运算主导的通用DSP芯片来说,并行性和可扩展性都更好。
3.FIR滤波器设计
3.1FIR滤波器设计的原理
设ai(i=0,1,2,…,N-1)为滤波器的冲激响应,输入信号为x(n),则FIR滤波器的输入输出关系为:
FIR滤波器的结构如图3.1所示:
图3.1FIR滤波器的结构
3.2 FIR滤波器的设计方法
循环缓冲算法:
对于N级的FIR滤波器,在数据存储器中开辟一个称之为滑窗的N个单元的缓冲区,滑窗中存放最新的N个输入样本。
每次输入新的样本时,一新样本改写滑窗中的最老的数据,而滑窗中的其他数据不需要移动。
利用片内BK(循环缓冲区长度)寄存器对滑窗进行间接寻址,环缓冲区地址首位相邻。
下面,以N=5的FIR滤波器循环缓冲区为例,说明循环缓冲区中数据是如何寻址的。
5级循环缓冲区的结构如图3.3所示,顶部为低地址。
图3.2循环缓冲区的结构
当第一次执行完
之后,间接寻址的辅助寄存器
指向x(n-4)。
然后,从I/O口输入数据x(n+1),将原来存放x(n-4)的数据存储单元改写为x(n+1)。
接着,进行第二次乘法累加运算,
,最后
指向x(n-3)。
然后从I/O口输入数据x(n+2),将原来存放x(n-4)的数据存储器单元改写为x(n+2)。
3.3FIR滤波器设计框图
FIR滤波器设计框图如图3.1所示
图3.3FIR滤波器设计框图
4程序代码
;============================================================
;fir.asm
;用用循环缓冲区和双操作数寻址方法实现FIR滤波器
;先用matlab,选择80点汉明窗设计一个截止频率为0.2π的低通滤波器
;本例与前不同的是系数直接引用程序存储器的系数表
;N=5y(n)=h0*x(n)+h1*x(n-1)+h2*x(n-2)+h3*x(n-3)+h4*x(n-4)
;============================================================.title"fir.asm"
.mmregs
.defCodeEntry
;分配数据存储区
.bssy,1;y
xn.usect"xn",80;xn
h.usect"h",80;h
PA0.set0000H;数据输出端口
PA1.set0001H;数据输入端口
;参数表
.data
table:
.word-7,-18,-24,-22,-9,11,33,48;已在Matlab中转成十六进制的小数
.word46,20,-24,-73,-104,-97,-43,49
.word146,204,187,81,-91,-268,-371,-337
.word-144,162,476,661,603,261,-297,-894
.word-1283,-1222,-562,697,2373,4142,5618,6456
.word6456,5618,4142,2373,697,-562,-1222,-1283
.word-894,-297,261,603,661,476,162,-144
.word-337,-371,-268,-91,81,187,204,146
.word49,-43,-97,-104,-73,-24,20,46
.word48,33,11,-9,-22,-24,-18,-7
CodeEntry:
SSBXFRCT;小数乘法
STM#h,AR1;把参数表复制到数据存储区
RPT#79
MVPD#table,*AR1+
STM#xn,AR1;把x(n)-x(n-79)赋始值0
RPT#79
ST#0,*AR1+
STM#xn+79,AR3;x(n-79)---AR3
STM#h+79,AR4;h(n-79)---AR4
STM#80,BK;循环缓冲区大小80
STM#-1,AR0;指针调整值-1
LD#xn,DP;DP指向xn所在页
PORTRPA1,@xn;输入数据
LD#y,DP;DP指向y所在页
FIR:
RPTZA,#79;进行一次FIR运算
MAC*AR3+0%,*AR4+0%,A;A=(AR3)*(AR4)+A,AR3=AR3+AR0,AR4=AR4+AR0
STHA,@y;保存计算结果
PORTW@y,PA0;输出结果
NOP
NOP;数据导入点
BDFIR;读入下一个数据并进行下一次计算
PORTRPA1,*AR3+0%;新数据覆盖了最旧的数据
.end
5.程序调试
原输入信号滤波前CCS中的数据时域波形如图5.1:
图5.1滤波前CCS中的数据时域波形
原输入信号滤波前CCS中的数据频域波形如图5.2:
图5.2滤波前CCS中的数据频域波形
滤波后CCS中的数据时域波形如图5.3:
图5.3滤波前CCS中的数据时域波形
滤波后CCS中的数据频域波形如图5.4:
图5.4滤波后CCS中的数据频域波形
程序运行后滤波结果如图5.5:
图5.5程序运行结果
总结
通过这一周的实习,我制作了一个基于DSP的简单的fir滤波器。
其实我觉得这样的课程设计最大的优处就在于它是把一个人的整体水平衡量了出来了,首先做这样的设计要求你在一开始就要做全局的思考,只有思考比较完善才可以下手,不然到了设计中途才发现自己的设计思想不正确,那就麻烦大了,很有可能你要从新来过,浪费时间,浪费精力。
磨刀不误砍柴功,还是先总揽全局比较好。
再者,作设计时我觉得应该先把问题划分成几个部分去完成,这样就算遇到难题也可以逐个击破。
要比一处停步好办的多。
第三,我发现“细心”在这次课程设计中尤为重要。
实习期间,在两位老师的指导下,通过自身的不断努力,无论是思想上,还是学习上,都取得了长足的发展和巨大的收获。
尤其是在思想上,学会了用科学的精神去解决问题。
很多事情看起来是很简单的问题,但实际做起来去会发现有许多奥妙!
这是因为其中蕴含着许多科学的问题。
运用科学的方法去解决问题,这是我这次实习给我带来的思想上的改变。
实习,就像一面镜子,通过它能够看出自身的缺点,通过它能够查找出自身缺乏的知识。
通过这次设计,我明显感觉到“书到用时方恨少”。
在以后的生活中我会不断地学习充实自己,认真对待每一件事情。
致谢
感谢淮阴工学院、计算机工程学院提供的这次实践机会,以及实验室人员提供的良好实验环境。
还有就是要感谢同学给予的帮助,感谢他们陪同我一起参考资料,一起讨论问题,共同走过了充足的一周,使我能把理论联系实际,真正做到活学活用;特别要感谢同学,在我调试出现错误的时候认真的指导我改正。
还要感谢院里给我们提供这么优越的硬件支持,开放机房和空调以及提供免费的上机时间让我能够有更多的时间调试及美化软件;感谢指导我的老师;感谢和我在同一条战线上并一直帮助我支持我的朋友们,以及那些在软件出问题时和我一起寻找错误,纠正错误并一起体验胜利喜悦的舍友。
再次感谢我的指导老师们,你们辛苦了!
感谢您在我运行出错误的时候对我细心地指导!
参考文献
[1]程佩青.数字信号处理教程[M].北京:
清华大学出版社,1999年
[2]孙宗瀛,谢鸿林.TMS320C5xDSP原理设计与应用[M].北京:
清华大学出版社,2002年
[3]乔瑞萍,崔涛,张芳娟.TMS320C54xDSP原理及应用[M].西安:
西安电子科技大学出版社,2005年
[4]张雄伟.DSP芯片的原理与开发应用(第三版)[M].北京:
电子工业出版社,2003年
[5]郑红.TMS320C54XDSP应用系统设计[M].北京:
北京航空航天大学出版社,2002年
指导教师评语
学号
1081301607
姓名
巩尊宝
班级
计算机1086
选题
名称
数字滤波器
序号
评价内容
权重(%)
得分
1
考勤记录、学习态度、工作作风与表现。
5
2
自学情况:
上网检索机时数、文献阅读情况(笔记)。
10
3
论文选题是否先进,是否具有前沿性或前瞻性。
5
4
成果验收:
是否完成设计任务;能否运行、可操作性如何等。
20
5
报告的格式规范程度、是否图文并茂、语言规范及流畅程度;主题是否鲜明、重心是否突出、论述是否充分、结论是否正确;是否提出了自己的独到见解。
30
6
文献引用是否合理、充分、真实。
5
7
答辩情况:
自我陈述、回答问题的正确性、用语准确性、逻辑思维、是否具有独到见解等。
25
合计
指导教师(签章):
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DSP 课程设计
![提示](https://static.bdocx.com/images/bang_tan.gif)