FIR滤波器设计..docx
文本预览下载声明
DSP技术课程设计课程题目: FIR滤波器设计姓 名:学 号:专 业: 通信工程2011级学 院: 电气信息学院指导教师:时 间:目录摘要31.设计题目42.系统功能介绍43.设计原理及算法研究4 3.1设计原理4 3.2算法设计54.相应参数设计6 4.1低通滤波器的滤波系数的计算64.2滤波器输入信号参数65.编写程序65.1部分源程序65.2 0119.cmd程序75.3滤波器系数测试程序和图形85.4 滤波器输入信号生成程序和图形96.调试过程106.1调试前的准备106.2 MATLAB的使用106.3编写及编译程序106.4观察点设置117.实验结果117.1运行结果11 7.2输入信号频谱图138.设计总结14参考文献15摘要:在TMS320C54x系统开发环境CCS下对FIR滤波器的DSP实现原理进行了讨论。利用Matlab中的FIR数字滤波器的函数设计相应的滤波器,对得到的滤波器系数采用Q15格式表示,并用C语言产生模拟输入信号。将获取的系数和输入信号通过相应的指令调到DSP芯片的数据存储器中,运用MAC指令,循环缓冲寄存器、块循环寄存器实现已知混合信号的滤波,通过实验仿真,从输入信号和输出信号的时域和频域曲线可看出在DSP上实现的FIR滤波器能完成预定的滤波任务。关键字:CCS开发环境;DSP;FIR;Matlab1.设计题目 FIR滤波器设计:设计一个FIR低通(或高通、带通)滤波器,通带边界频率为1500Hz,通带波纹小于1dB;阻带边界频率为2000Hz,阻带衰减大于40dB;采样频率大于8000Hz。FIR滤波器的设计可以用MATLAB窗函数法进行。2.系统功能介绍任何一个实际的应用系统中,都存在着各种各样的干扰。数字滤波器是使用最为广泛的信号处理算法之一。数字滤波器在语音信号处理、信号频谱估计、信号去噪、无线通信中的数字变频以及图像信号等各种信号处理中都有广泛的应用。在本设计中,先使用MATLAB模拟产生合成信号,然后再利用CCS进行滤波处理。将模拟信号的采样频率设定为12000Hz,设计一个FIR低通滤波器。3.设计原理及算法研究3.1 设计原理FIR数字滤波器是一种非递归系统,其传递函数为:H(z)=Y(z)/X(z)=∑b(n)z-n由此可得到系统的差分方程为:y(n)=∑h(i)x(n-i),其冲击响应h(n)是有限长序列,它其实就是滤波器系数向量b(n),N为FIR滤波器的阶数。 为了使滤波器满足线性相位条件,要求其单位脉冲响应h(n)为实序列,且满足偶对称或奇对称条件,即h(n)=h(N-1-n)或h(n)=- h(N-1-n),这样,当N为偶数时,偶对称线性相位FIR滤波器的差分方程表达式为:y(n)=∑h(i)x(n-i)+x((N-1-n-i)应用MATLAB设计FIR滤波器的主要任务就是根据给定的性能指标设计一个H(z),使其逼近这一指标,进而计算并确定滤波器的系数b(n),再将所设计滤波器的幅频响应、相频响应曲线作为输出,与设计要求进行比较,对设计的滤波器进行优化,设计完成之后将得到FIR滤波器的单位冲击响应序列h(n)的各个参数值。用fir1函数设计FIR滤波器:fir1函数用来设计标准频率响应的基于窗函数的FIR滤波器,可实现加窗线性相位FIR数字滤波器的设计。具体语法如下: b=fir1(n,Wn)b=fir1(n,Wn,‘ftype’)其中n为滤波器的阶数;Wn为滤波器的截止频率; ftype为用来决定滤波器的类型,当ftype=high时,可设计高通滤波器;当ftype=stop时,可设计带阻滤波器。当没有ftype没有的时候,可以设计低通滤波器,本次实验就是设计的低通滤波器。3.2 算法设计1.设N=16,FIR滤波器算法设计如下: y(n)=h(0)x(16)+h(1)x(15)+,…,+h(15)x(1)+h(16)x(0)2. AR4,FIR_DATA_PAR6,INBUF_PAR7,OUTBUF_P程序分别用AR4指向FIR_DATA_PC,AR6指向INBUF_P,AR7指向OUTBUF_P4.相应参数计算4.1低通滤波器的滤波系数的计算round(fir1(16,1500/12000)*32768)4.2滤波器输入信号参数5.编写程序5.1部分源程序5.2 0119.cmd程序MEMORY{PAGE 0:PROG:o= 100h,l= 2000h PAGE 1:DATA1:o= 2600h, l= 1000hDATA2:o= 2100h, l= 100hDATA3:o= 2200h,l= 100hDATA4:o= 2300h,l= 100hDATA5:o= 2400h,l=
显示全部