DSP课程设计--基于IIR的语音信号滤波

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

基于IIR的语音信号滤波1/211设计的总体方案本题目通过DSP处理器控制TLC320AD50采集音频信号,在CCS软件中分析音频信号的频谱图,使用Matlab设计相应的IIR数字滤波器(低通、带通或带阻等滤波器中的一种)并得到滤波器H(z)的系数,然后根据这些系数,编写DSP程序(C语言或汇编)对已采集信号进行处理,最后在CCS软件中得到处理后音频信号的频谱图,比较滤波前后信号的频谱图。其中语音信号的采集与回放是采用TLC320AD50芯片对语音信号进行A/D以及D/A转换,从而实现对语音信号的数字处理和语音回放;DSP芯片主要是将转化成数字信号的语音信号用DSP算法对其进行处理,并将处理后的信号送到输出端,图1.1为本题目设计的总体方案图。图1.1总体方案设计图对滤波后的语音信号进行D/A转换语音信号的采集输入语音信号的回放设计IIR滤波器并编写DSP程序对语音信号进行A/D转换DSP信号处理器基于IIR的语音信号滤波2/212设计原理2.1DSP信号处理器与TLC320AD50接口电路的原理图图2.1给出了一种基于TMS320C54X数字信号处理芯片和TLC320AD50C模拟接口电路的语音处理系统方案,这个系统可用于多种语音处理场合,通过修改程序可达到不同的语音处理效果,具有良好的扩展性、灵活性和适应性等。图2.1DSP信号处理器与TLC320AD50接口电路的原理图2.2IIR滤波器的基本结构IIR滤波器与FIR滤波器相比,具有相位性差的特点,但它的结构简单、运算量小、具有经济、高效的特点,并且可以用较小的阶数获得很高的选择性。因此,也得到了较为广泛的应用。IIR滤波器的差分方程的一般表达式为y(n)=∑bix(n-i)-∑aiy(n-i)式中,x(n)为输入序列;y(n)为输出序列;ai和bi为滤波器系数。若所有的系数ai等于零,则为FIR滤波器。IIR滤波器具有无限长的单位脉冲响应,在结构上存在反馈回路,具有递归性,即IIR滤波器的输出不仅与输入有关,而且与过去的输出有关。基于IIR的语音信号滤波3/21IIR滤波器具有多种形式,主要有:直接型、标准型、变换型、级联型和并联型。2.3双线性变换法双线性变换法的S域与Z域间的变换关系为:由式(1)可以看出,z和s之间可以直接代换,由于这是一非线性变换,需考察一下是否能把jΩ映射成单位圆,以及是否能将s域左半平面映射到单位圆内部。对于s平面上的虚轴jΩ,用s=jΩ代入式(1)得:可见:上式表明S平面与Z平面一一单值对应,S平面的虚轴(整个jΩ)经映射后确已成为z平面上的单位圆,但Ω与w为非线性关系,因此,通过双线性变换后两个滤波器的频率特性形状不能保持相同,双线性变换不存在混迭效应。对于s域的左半平面,用s=σ+jΩ入式(1),得到:此式表明,当σ0,有|z|1,因而s平面的左半平面被映射在单位圆内部,这意味着稳定的模拟滤波器经双线性变换可以映射成稳定的数字滤波器。基于IIR的语音信号滤波4/213设计步骤和过程3.1IIR数字滤波器的设计IIR数字滤波器的设计可以利用模拟滤波器原型,借鉴成熟的滤波器的设计结果进行双线性变换,将模拟滤波器变换成满足预定指标的数字滤波器,即根据模拟设计理论设计出满足要求的传递函数H(s),然后将H(s)变换成数字滤波器的传递函数H(z)。3.2IIR滤波器的MATLAB设计3.2.1滤波器的选择由于采集的语音信号的主频在300HZ—1500HZ左右,因此在滤波器的选择上,我们可以采用带通或者是低通滤波器,本设计采用的是带通滤波器,其中通带的范围为300HZ—1500HZ,阻带范围为100Hz以下和2500HZ以上。将录制好的声音在MATLAB里进行抽样并绘制时域和频域的波形图,然后用滤波器进行多次滤波,以达到最好的滤波效果,将a和b的参数确定下来。根据MATLAB分析出的语音信号的频谱特点,本课题采用Butterworth型设计一个带通滤波器对采集的语音信号进行滤波。3.2.2程序清单wp=[1502000]/22050;ws=[1002500]/22050;[n,wn]=buttord(wp,ws,25,30);[b,a]=butter(n,wn);axis([0600002]);freqz(b,a,512,44100)得到滤波器的系数a,b如下:b=1.0e-003*0.14250-0.427600.42760-0.1425基于IIR的语音信号滤波5/21a=1.0000-5.766013.8730-17.828312.9067-4.99080.80533.2.3带通滤波器的幅频特性图00.511.52x104-800-600-400-2000Frequency(Hz)Phase(degrees)00.511.52x104-300-200-1000100Frequency(Hz)Magnitude(dB)图3.2.3IIR带通滤波器的幅频特性图3.3IIR滤波器的DSP实现.在用定点DSP器件设计数字滤波器时,一个重要的问题就是由于硬件字长精度有限,运算会出现溢出。IIR滤波器可以用较少的阶数获得很高的选择特性,所用的存储单元少、运算次数少,具经济、高效的特点。在相位要求不敏感的场合,如语音通信等,很适合用IIR滤波器。基于IIR的语音信号滤波6/213.3.1程序流程图图3.3.1主程序及中断程序流程图3.3.2用CCS编写DSP程序处理采集的语音信号IIR滤波器有以下几种基本网络结构:直接I型、直接II型、级联型和并联型。各种结构都有其优缺点。鉴于级联型常用于均衡器中,而且优点比较突出,所以,以级联型为便详细介绍其算法实现。采用级联实现的IIR滤波器将传递函数分解为二阶传递函数的乘积,即H(z)=H1(Z)H2(Z)…HM(Z),每一级的子滤波器Hk(z)常取以下的形式:一般级联实现都采用直接II型结构作为子滤波器的网络结构。使用直接II型的子滤波器的网络结构。二级级联IIR滤波器的主要实现程序如下:;已初始化PMST=FFA0H,ST1=2300H,;SWWSR=0,开始初始化DSP初始化16阶IIR滤波参数初始化McBSP接口与AD50进行二次通讯设置ADC/DAC通道参数打开中断等待McBSP中断信号开始接收ADC通道采样数据把接收到的数据经过16阶IIR滤波后再反馈到DAC通道结束中断服务程序等待下一次中断基于IIR的语音信号滤波7/21OVM=1,FRCT=1,SXM=1STM#X,AR1STM#Y,AR2STM#d,AR3;RPTA,#5;初始化d(n),d(n-1),d(n-2)=0STLA,*AR3+STM#2,AR0;初始化Arn是地址偏移量为常数INLOOP:STM#d+5,AR3;STM#table,AR4;IIR的系数A2,A1,B2,B1,B0PORTR100H,*AR1;从端口读入数据LD*AR1,7,ASTM#N-1,BRC;计算IIR的节数NRPTELOOPLOOP:MAC*AR4+,*AR3-,A;input+d(n-2)*A2MAC*AR4,*AR3,A-;input+d(n-2)*A2+d(n-1)*A1MAC*AR4+,*AR3-,ASTHA,*AR3+0;d(n)=input+d(n-2)*A2+d(n-1)*A1MPY*AR4+,*AR3-,A;d(n-2)*B2MAC*AR4+,*AR3,A;d(n-2)*B2+d(n-1)*B1DELAY*AR3-;d(n-2)=d(n-1)MAC*AR4+,*AR3,A;d(n-2)*B2+d(n-1)*B1+d(n)*B0DELAY*AR3-;d(n-1)=d(n)ELOOP:STHA,*AR2;output=d(n-2)*B2+d(n-1)*B1+d(n)*B0PORTW*AR2,200h;将结果写入文件中BINLOOPEND基于IIR的语音信号滤波8/214设计程序的调试结果和运行结果比较滤波前后语音信号的波形及其频谱:图4.1滤波前语音信号的波形图图4.2滤波前语音信号的频谱图基于IIR的语音信号滤波9/21图4.3滤波后语音信号的波形图图4.4滤波后语音信号的频谱图基于IIR的语音信号滤波10/21图4.5滤波前后波形对比图图4.6滤波前后频谱对比图比较滤波前后语音信号的波形图、频谱图,可以得出结论:滤波前后语音信号几乎未变,回放信号的声音和原始信号的声音也几乎一致,这也说明本课题所设计的滤波器是合理的,它能对所采集的语音信号进行高效滤波。基于IIR的语音信号滤波11/215心得体会通过最近两个星期的DSP课程设计,我发现了自己很多的不足:理论知识的大面积漏洞,以及实践能力的严重缺乏,并且理论联系实际的能力还急需提高。此次课程设计中我组的课题是《基于IIR的语音信号滤波》,刚开始做课设的时候,我查阅了一些资料,通过资料,我对课题相关内容有了更多的了解,也对本次课程设计的目的有了更深刻的认识,我觉得本次课程设计对我们电子信息工程专业的学习意义重大。这两个星期里,我不但熟悉了Matlab相关操作,掌握了IIR滤波器的DSP实现的相关原理和步骤,而且还更进一步地了解了DSP数字信号处理中的一系列相关概念,最主要的是此次课程设计锻炼了我的独立思维和动手能力,这对我以后的工作和学习有着十分重要的意义。此次课设的两周不仅让我学到了实实在在的专业知识,而且引发了我对专业知识以外的一些事情做了深刻地思索:我觉得当我们要去学习、研究一门技术或学问时,持之以恒的耐力以及越挫越勇的信念是非常重要的。课设刚开始的时候,我并没有觉得自己选择的课题很难,但当开始操作起来的时候却是历尽艰辛困难重重,这才发现原来理论和实践之间真的是有一定的差距在的。很多时候都觉得做不出就不要做了何必难为自己,但真的不做了心理又总觉得有些不是滋味,好在有同组设计者的帮忙终究还是完成了课题的设计。在完成课设的时候,很多感受一起涌上了心头:成就、欣喜、遗憾、悔恨……,只有错过才会懂得,不是没机会,而是机会来的时候自己没有珍惜罢了。大学的生活很快就要结束了,回首看看自己之前走过的路,感觉自己错过了太多更错了太多,因为懒惰因为随性,基础课程、专业课程都没有扎实掌握,太浮躁,捡了扔扔了检,总是为了考试而应试,真正抓在手里的除了时间的流逝以及因此而累增的悔恨就真的没剩什么了,忽然有一种欲哭无泪的沮丧。不过从另一个角度想想,自己还是收获了的,起码自己意识到了到底错在哪里,这也为自己未来的发展提供了一些参考吧。我觉得人总不能在同一些问题上摔倒太多次吧,以后的路途中肯定会格外留意了。基于IIR的语音信号滤波12/21总之,在本次课程设计中,我学到很多平时在书本上学不到的东西,比如独立思考的意识、认真钻研的态度以及对生活的认真沉淀……这两周我感觉自己过的很充实,我希望以后能够有更多这样的机会,让我真正地融入到了学习当中去,别无它思。6参考文献[1]邹彦.DSP原理及应用[M].北京:电子工业出版社,2005,1.[2]戴明桢.TMS320C54xDSP结构、原理及应用[M].北京航空航天大学出版社,2001,8.[3]胡圣尧.DSP原理及应用[M].东南大学出版社,2008.7.[4]清源科技.TMS320C54xDSP应用程序设计教程[M].机械工业出版社,2004,1.[5]清源科技.TMS320C54x硬件开发教程[M].机械工业出版社,2003,1.基于IIR的语音信号滤波13/217附录BSP.set1;当前使用McBsp1;McBsp内存映射寄存器SPSA0.set038hSPSD0.set039hDRR10.set021hDRR20.set020hDXR10.set023hDXR20.set022hSPSA1.set048hSPSD1.set049hDRR11.set041hDRR21.set040hDXR11.set043hDXR21.set042hSPSA2.set034hSPSD2.set035hDRR12.set031hDRR22.set030hDXR12.se

1 / 21
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功