1、基于TMS320VC5509DSP的语音信号的FIR滤波器课程设计报告基于TMS320VC5509DSP的语音信号的FIR滤波器课程设计报告 DSP原理与应用 课程设计报告书课题名称基于TMS320VC5509 DSP的语音信号的FIR滤波器姓 名学 号 院、系、部专 业指导教师 毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出
2、过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或
3、集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名: 日期: 年 月 日导师签名: 日期: 年 月 日指导教师评阅书指导教师评价:一、撰写(设计)过程1、学生在论文(
4、设计)过程中的治学态度、工作精神 优 良 中 及格 不及格2、学生掌握专业知识、技能的扎实程度 优 良 中 及格 不及格3、学生综合运用所学知识和专业技能分析和解决问题的能力 优 良 中 及格 不及格4、研究方法的科学性;技术线路的可行性;设计方案的合理性 优 良 中 及格 不及格5、完成毕业论文(设计)期间的出勤情况 优 良 中 及格 不及格二、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范? 优 良 中 及格 不及格2、是否完成指定的论文(设计)任务(包括装订及附件)? 优 良 中 及格 不及格三、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中
5、 及格 不及格2、论文的观念是否有新意?设计是否有创意? 优 良 中 及格 不及格3、论文(设计说明书)所体现的整体水平 优 良 中 及格 不及格建议成绩: 优 良 中 及格 不及格(在所选等级前的内画“”)指导教师: (签名) 单位: (盖章)年 月 日评阅教师评阅书评阅教师评价:一、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范? 优 良 中 及格 不及格2、是否完成指定的论文(设计)任务(包括装订及附件)? 优 良 中 及格 不及格二、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 及格 不及格2、论文的观念是否有新意?设计是否有创意? 优
6、良 中 及格 不及格3、论文(设计说明书)所体现的整体水平 优 良 中 及格 不及格建议成绩: 优 良 中 及格 不及格(在所选等级前的内画“”)评阅教师: (签名) 单位: (盖章)年 月 日教研室(或答辩小组)及教学系意见教研室(或答辩小组)评价:一、答辩过程1、毕业论文(设计)的基本要点和见解的叙述情况 优 良 中 及格 不及格2、对答辩问题的反应、理解、表达情况 优 良 中 及格 不及格3、学生答辩过程中的精神状态 优 良 中 及格 不及格二、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范? 优 良 中 及格 不及格2、是否完成指定的论文(设计)任务(包括装订及附件)? 优
7、 良 中 及格 不及格三、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 及格 不及格2、论文的观念是否有新意?设计是否有创意? 优 良 中 及格 不及格3、论文(设计说明书)所体现的整体水平 优 良 中 及格 不及格评定成绩: 优 良 中 及格 不及格(在所选等级前的内画“”)教研室主任(或答辩小组组长): (签名)年 月 日教学系意见:系主任: (签名)年 月 日基于TMS320VC5509 DSP的语音信号的FIR滤波器设计一、实践的目的和要求 1.熟悉ICETEK-VC5509-A板上语音codec芯片TLV320AIC23的设计和程序控制原理。2.熟
8、悉FIR滤波器工作原理及编程。3.掌握使用TI的算法库dsplib提高程序运行效率的方法。4.学习使用CCS图形观察窗口观察和分析语音波形及其频谱。二、实践原理: 在数字信号处理中,滤波占有极其重要的地位。数字滤波是语音处理、图像处理、模式识别、频谱分析等应用中的基本处理算法。用DSP芯片实现数字滤波除了具有稳定性好、精确度高、不受环境影响等优点外,还具有灵活性好等特点。 VC5509引脚图过渡带宽度=阻带边缘频宽-通带边缘频率采样频率:f1=通带边缘频率+(过渡带宽度)/2理想低通滤波器脉冲响应:h1n=sin(n1)/n/根据要求,选择布莱克曼窗,窗函数长度为:N=5.98fs/过渡带宽度
9、选择N=30wn=0.42+0.5cos(2n/30)+0.8cos(4n/24)滤波器脉冲响应为:hn=h1nwn|n|12根据上面计算,各式算出hn,然后将脉冲响应值移位为因果序列。完成的滤波器的差分方程为:yn=-0.001xn-2-0.002xn-3-0.002xn-4+0.01xn-5-0.009xn-6-0.018xn-7-0.049xn-8-0.02xn-9+0.11xn-10+0.28xn-11+0.64xn-12+0.28xn-13-0.11xn-14-0.02xn-15+0.049xn-16-0.018xn-17-0.009xn-18+0.01n-19-0.002xn-20
10、-0.002xn-21+0.001xn-22三、实践步骤1.首先自己参照指导书完语音信号的FIR滤波实验,认真阅读实验中的源程序,深刻理解语音信号FIR滤波的原理及具体实现方法,包括含噪语音信号的读取,滤波后信号的输出,语音编解码器的设置(AIC23),重点理解FIR滤波器的实现(循环寻找的实现)2.语音采集的采集与分析 (1)录制语音,并命名为“e”,保存在相应的位置(桌面)。(2)用MATLAB对原始语音信号进行分析,画出它的时域波形和频谱。程序如下:fs=22050;x,fs,Nbits=wavread(C:Documents and SettingsOwner桌面e);t=0:1/22
11、050:(length(x)-1)/22050;sound(x,fs) ; %对加载的语音信号进行回放figure(1)plot(x) %做原始语音信号的时域图形title(原始语音信号);xlabel(time n);ylabel(fuzhi n);figure(2)freqz(x) %绘制原始语音信号的频率响应图title(频率响应图)n=length(x); %求出语音信号的长度y1=fft(x,n) ; %傅里叶变换y2=fftshift(y1); %对频谱图进行平移f=0:fs/n:fs*(n-1)/n; %得出频点figure(3) subplot(2,1,1);plot(abs(
12、y2) %做原始语音信号的FFT频谱图title(原始语音信号FFT频谱)subplot(2,1,2);plot(f,abs(y2); %绘制原始语音信号的频谱图title(原始语音信号频谱)%加噪声k=1:1:n; %定义k 值,噪声与原始语音长度一致c1=100000*sin(2*pi*5000*k); %噪声信号的函数z=x+c1; %噪音与原始信号叠加wavwrite(z,8000,16,C:Documents and SettingsOwner桌面e2); %得到含噪语音s=length(c1);y3=fft(z,s); %对叠加信号进行频谱变换y4=fftshift(y3); %对
13、频谱图平移f=0:fs/s:fs*(s-1)/s; %得出频点figure(4)plot(z) %做原始语音信号的时域图形title(加噪语音信号);xlabel(time n);ylabel(fuzhi n);figure(5)plot(f,abs(y4); %绘出加噪语音频谱图axis(0 8000 0 100);title(含噪语音信号的频谱);figure(6)subplot(2,1,1);plot(f,abs(y2) %做原始语音信号的FFT频谱图title(原始语音信号FFT频谱)subplot(2,1,2);plot(f,abs(y4) %做加噪语音信号的FFT频谱图title(
14、加噪语音信号频谱) 原始语音信号 加噪语音信号 原始语音信号FFT频谱 含噪语音信号频谱 原始语音信号FFT频谱 频率响应图3. 设计一定参数的滤波器使用fir2函数设计一个31阶低通滤波器,信号的采样频率为8000Hz,滤波器的通带截止频率为2900Hz,阻带截止频率为3300Hz。在函数中,其截止频率均用归一化频率表示。归一化频率的计算方法:f=实际频率/(采样频率/2),则将截止频率归一化后的截止频率值为0.725、0.825用fir2函数实现的格式:f = 0 0.725 0.825 1 ; m = 1 1 0 0 ; b=fir2(30,f,m);b= -0.0005,0.0004,
15、0.0003,-0.0018,0.0039,-0.0045,0.0009,0.0086,-0.0210,0.0279,-0.0173,-0.0191,0.0793,-0.1486,0.2043,0.7744,0.2043,-0.1486,0.0793,-0.0191,-0.0173,0.0279,-0.0210,0.0086,0.0009,-0.0045,0.0039,-0.0018,0.0003,0.0004,-0.0005Audio滤波程序如下:#include myapp.h#include ICETEK-VC5509-EDU.h#include scancode.h#include #
16、define FIRNUMBER 31#define SIGNAL1F 2900#define SIGNAL2F 3300#define SAMPLEF 8000#define PI 3.1415926float InputWave();float FIR();float fHnFIRNUMBER=-0.0005,0.0004,0.0003,-0.0018,0.0039,-0.0045,0.0009,0.0086,-0.0210,0.0279,-0.0173,-0.0191,0.0793,-0.1486,0.2043,0.7744,0.2043,-0.1486,0.0793,-0.0191,-
17、0.0173,0.0279,-0.0210,0.0086,0.0009,-0.0045,0.0039,-0.0018,0.0003,0.0004,-0.0005;float fXnFIRNUMBER= 0.0 ;float fInput,fOutput;float fSignal1,fSignal2;float fStepSignal1,fStepSignal2;float f2PI;int i;float fIn256,fOut256;int nIn,nOut;main()nIn=0; nOut=0; f2PI=2*PI; fSignal1=0.0; fSignal2=PI*0.1; fSt
18、epSignal1=2*PI/30; fStepSignal2=2*PI*1.4; while ( 1 ) fInput=InputWave(); fInnIn=fInput; nIn+; nIn%=256; fOutput=FIR(); fOutnOut=fOutput; nOut+; /* break point */ if ( nOut=256 ) nOut=0; float InputWave()for ( i=FIRNUMBER-1;i0;i- ) fXni=fXni-1; fXn0=sin(double)fSignal1)+cos(double)fSignal2)/6.0; fSi
19、gnal1+=fStepSignal1; if ( fSignal1=f2PI ) fSignal1-=f2PI; fSignal2+=fStepSignal2; if ( fSignal2=f2PI ) fSignal2-=f2PI; return(fXn0);float FIR()float fSum; fSum=0; for ( i=0;i spcr1, 0); Write(pMCBSP0 - spcr2, 0); / Config frame parameters (32 bit, single phase, no delay) Write(pMCBSP0 - xcr1, XWDLEN
20、1_32); Write(pMCBSP0 - xcr2, XPHASE_SINGLE | XDATDLY_0); Write(pMCBSP0 - rcr1, RWDLEN1_32); Write(pMCBSP0 - rcr2, RPHASE_SINGLE | RDATDLY_0); / Disable int frame generation and enable slave w/ext frame signals on FSX / Frame sync is active high, data clocked on rising edge of clkx Write(pMCBSP0 - pcr, PCR_CLKXP); / Bring transmitter and receiver out of reset SetMask(pMCBSP0 - spcr2, SPCR2_XRST); SetMask(pMCBSP0 - spcr1, SPCR1_RRST); void AIC23_Init() I2C_Init(); / Reset t
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1