苏州大学FIR滤波器的实现实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
FIR滤波器的实现
一、实验目的
1.熟悉FIR滤波器的滤波的原理
2.熟悉FIR滤波器的汇编实现
3.掌握CCS的文件输入输出操作
4.学习用MATLAB设计滤波器
二、程序说明
这次实验的项目文件是fir.pjt,在实现FIR滤波器时采用了三种方法,分别是fir1:基于循环缓存、fir2:基于线性缓存以及fir3:当系数是对称时,利用dsp的内部命令firs,可减小一半的循环次数。
三、实验内容
1.编译项目,装载程序和数据。
2.调试程序,注意执行过程,特别是对fir1、fir2和fir3的调用过程。
3.比较程序段fir1、fir2和fir3的不同点,了解循环缓存和线性缓存的实现方法,理解语
句firs的意义。
4.在ccs中观察输入输出信号的频谱图,图形窗口设置如下,当要看输出图形时,将start
Address一栏改为output1、output2或output3。
四、实验结果和提示
1.输入信号频率图
2.输出信号频率图
五、关于实验数据
1.滤波器系数
程序中的系数段.data中的内容是基于以下要求在Matlab中求得的,该数据采用Q16格式:
采样频率:8000Hz
截止频率:1500Hz
阻带衰减:-50dB以下
滤波器级数:81
注:在项目目录中有相应的求系数的Matlab程序,数据放在fircoef.dat中。
2.Matlab中设计FIR滤波器的函数简介
fir1基于窗函数的fir滤波器设计——标准响应
fir2基于窗函数的fir滤波器设计——任意响应
fircls约束最小二乘fir滤波器设计——任意响应
fircls1约束最小二乘fir滤波器设计——低通与高通
firls最小二乘fir滤波器设计
firrcos升余弦fir滤波器设计
intfilt内插fir滤波器设计
remez Parks_McClellan最优fir滤波器设计
remezord Parks_McClellan滤波器阶数选择
所附程序中用的是fir1函数,求出滤波器响应如下:
3.关于输入数据
输入数据是按照采用频率8000Hz,1000个采样点的三个正弦信号组合,幅度都是0.5,频率分别是500Hz(处在通带),1550Hz(处在过渡带),3600Hz(处在截止带)。产生的数据采用Q15格式定点化,存放在input.dat文件中。