付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、科信学院DSP应用系统(三级项目)(2014/2015学年第二学期)课程名称:DSP原理与应用题目:基于DSP的语音信号FIR低通滤波器设计专业班级:信息1221学号:学生姓名:Liu指导教师:设计成绩:2015年7月10日1、项目设计目的通过课程设计,加深对DSP芯片TMS320C54X的结构、工作原理的理解,获得DSP应用技术的实际训练,掌握设计较复杂DSP系统的基本方法、数字滤波器的设计过程,了解FIR的原理和特性,熟悉设计FIR数字滤波器的原理,学习FIR滤波器的DSP的实现原理,学习使用CCS的波形观察窗口观察输入/输出信号波形和频谱变化情况。2、项目设计正文2.1 硬件设计2.1.
2、1 方案设计本次设计基于ccs3.3运行环境下,使用ICETEK-VC5509-ED区验箱(包括仿真器)、麦克风输入设备、耳机输出相关设备等完成此次设计。主要是通过实验箱上AIC23芯片实时采集语音信号,进彳TFIR低通滤波,使用MATLAB环境下的FDAtool工具来产生低通滤波器系数,用DSP汇编语言或C语言进行编程实现FIR运算对语音信号进行滤波处理,并且与CCS算法库中的dsplib中的算法相比较,对所设计的FIR滤波器各项指标进评价。2.1.2 CCS开发环境配置CCSM以工作在纯软件仿真环境中,就是由软件在PC机内存中构造一个虚拟的DSP环境,可以调试、运行程序。但一般软件无法构造
3、DSP中的外设,所以软件仿真通常用于调试纯软件的算法和进行效率分析等,本次设计将使用硬件仿真(Emulator)。在使用软件仿真方式工作时,无需连接板卡和仿真器等硬件。双击桌面上图标:进入CC皱置窗口。在出现的窗口中按标号顺序进行如下设置:IImportConfiiguraltion二”JAWV*141J部4143-uriOnS一一IICETEKUSBEmulstorfor:C54ra-JT+J-U:F:TFI'IF:EmulfcS,史:fwG5S器.ImportVC54衣XDS51OU5BEmxiloirVC54gXDS51OUSBEmulatorV1C541OXDS5LDLISBE
4、mml-HrVC541BXDSSlOiUSBEmulatorRyPl1it.vw1FukilyFl*tf4r«iEndi皿二11*11二iajdCofiEiDiri.mD-s-ei*i1i0部TIIS32OCS5XMCFVR*v1.x&r*nTITETEK-51OOUfSIBEmulfttors«t.xcoruhtet«dvi<七?工/口Foart.口广单击关闭、窗口歹this&i*26一nr<U>1-1advanced.»1*ridQm"tlCli1|H*ip在出现的窗口中按标号顺序进行如下设置:BoardR
5、rofiertirsStartiipGIL的mdPrsptirt14-sSttrtuipGELFilt(i)BqdNs电*DtttFiltFrseessorCehfxpur4tion届性卡片单击完成设詈Finish图2-3Emulator配置完成图在出现的窗口中按标号顺序进行如下设置8注Ji此技Sy*lertrt匚2口也例甲i宓单d此捶tH不心动CCSS3BtegjdftMgw图2-4配置完成图X以上设置完成后,CCS已经被设置成Emulator的方式(用仿真器连接硬件板卡的方式),并且指定通过ICETEK-5100USB仿真器连接ICETEK-VC5509-A2.1.3 语音编解码芯片TLV
6、320AIC23原理ICETEK-VC5509-A评估板上有一个语音编解码芯片TLV320AIC23。TLV320AIC23内置耳机输出放大器,支持MIC和LINEIN两种输入方式(二选一),且对输入和输出都具有可编程增益调节。AIC23的模数转换(ADCs)和数模车t换(DACs)部件高度集成在芯片内部,采用了先进的Sigma-delta过采样技术,可以在8K到96K的频率范围内提供16bit、20bit、90dB和100dB。24bit和32bit的采样,ADC和DAC的输出信噪比分别可以达到图2-5TMS320VC5509与TLV320AIC23的连接示意图系统中AIC23的主时钟12M
7、Hz直接由外部的晶振提供。MOD强数字地,表示利用I2C控制接口对AIC23传输控制数据。CS接数字地,定义了I2C总线上AIC23的外设地址,通过将CS接到高电平或低电平,可以选择AIC23作为从设备在I2C总线上的地址。SCLK和SDIN是AIC23控制端口的移位时钟和配置数据输入端,分别与VC5509的I2C模块端口SCL和SDA相连。收发时钟信号CLKX1和CLKR1由AIC23的串行数据输入时钟BCLK提供,并由AIC23的帧同步信号LRCIN、LRCOUT0动串口数据传输。DX0和DR0分另与AIC23的DIN和DOUT相连,从而完成VC5509与AIC23间的数字信号通信。2.1
8、.4 FIR滤波器原理对于一个FIR滤波器系统,它的冲击响应总是又限长的,其系统函数可记为:N1Hzhnz”n=0(2-a)其中N-1是FIR的滤波器的阶数,z为延时结,h(n)为端口信号函数。最基本的FIR滤波器可用下式表示:N1ynChkxnkk4(2-b)其中x(n-k)输入采样序列,h(k)是滤波器系数,N是滤波器的阶数Y(N)表示滤波器的输出序列,也可以用卷积来表示输出序列y(n)与x(n)、h(n)的关系,如下:(2-c)2.1.5 滤波器系数的生成在Matlab的Start菜单中选择Toolboxes->FilterDesign->FilterDesign&A
9、nalysisTools(fdatool),或者在命令行中输入fdatool来启动滤波器设计分析器。启动成功后界面如图所示。图2-6fdatool界面图在选项中选择或输入滤波器参数,然后点击“DesignFilter”按钮,完成滤波器的设计。具体参数及设计成功后的结果如图图2-7滤波器图从Matlab中导出FIR滤波器系数。在Fdatool中,选择Targets->CodeComposerStudio(tm)IDE,在出现的对话框中选择输出文件类型为Cheaderfile,输出系数类型为signed16-bitinteger,如图所示。点击Generate按钮,选择路径,即
10、可输出前一步设计出的FIR滤波器的系数表。图2-8系数生成图2.1.5FIR滤波器的DS际现FIR滤波器的输出表达式为(2-d)3(刀)=人0)x("_£)=Vh(i)s(n_i),=:是:0式中为滤波器系数x(n)表示滤波器在n时刻的输入y(n)为n时刻的输出。它的基本算法是一种乘法-累加运算即不断地输入样本x(n)经过延时后,再进行乘法-累加,最后输出滤波结果y(n)。该次设计中采用的是循环缓冲法设计FIR低通滤波器,循环缓冲区法的特点如下(1)对于N级FIR滤波器在数据存储器中开辟一个N单元的缓冲区滑窗用来存放最新的N个输入样本。(2)从最新样本开始取数(3)读完最后
11、一个样本最老样本后,输入最新样本来代替最老样本而其他数据位置不变。图2-9FIR滤波器循环缓冲示意图2.2软件设计2.2.1 系统分析通过麦克风利用芯片AIC23进行带噪声的语音信号采集,由于AIC本身自带A/D转化,采集得到的数据传输保存于MCBS吸据接收寄存器DDRDSP对MCBS叩的数据进行FIR滤波,并送给MCBSP中的数据发送寄存器DXRDXR中数据回传给AIC23,并利用它带的D/A转换进行输出,从而能听到滤波后的信号。2.2.2 系统流程图2.2.2实现代码主程序:/测试时音频插孔J5接音源,J7接扬声器。#include"5509.h"#include&qu
12、ot;util.h"voidwait(unsignedintcycles);voidEnableAPLL();externintfir(int*,int*,unsignedint,int);voidmain()SDRAM_init();EnableAPLL();PLL_Init(40);AIC23_Init();PLL_Init(120);for(;)(AIC23_Mixer();AIC2323_Mixer();)voidwait(unsignedintcycles)(inti;for(i=0;i<cycles;i+)voidEnableAPLL()/*EnusreDPLLis
13、running*/* (ioportvolatileunsignedshort*)0x1f00=4;wait(25);* (ioportvolatileunsignedshort*)0x1f00=0;/MULITPLY* (ioportvolatileunsignedshort*)0x1f00=0x3000;/COUNT* (ioportvolatileunsignedshort*)0x1f00|=0x4F8;wait(25);/*(ioportvolatileunsignedshort*)0x1f00|=0x800/MODE* (ioportvolatileunsignedshort*)0x
14、1f00|=2;wait(30000);/APLLSelect* (ioportvolatileunsignedshort*)0x1e80=1;/DELAYwait(60000);子程序1:#defineAUTIODATALEFT0x0d000#defineAUTIODATARIGHT0x17000int*pAudioLeft,*pAudioRight;intwww=0;intleft,right;int*pLeft,*pRight;intlft,rgt;voidAIC23_Mixer()PC55XX_MCSPpMCBSP0=(PC55XX_MCSP)C55XX_MSP0_ADDR;int*p
15、l,*pr,nAudioCount;inti;pAudioLeft=pl=(int*)AUTIODATALEFT;pAudioRight=pr=(int*)AUTIODATARIGHT;nAudioCount=0;for(i=0;i<NX;i+)xi=0;for(i=0;i<NH+2;i+)dbi=0;while(1)while(!ReadMask(pMCBSP0->spcr2,SPCR2_XRDY);/等待数据传输完成left=(*pl)=Read(pMCBSP0->ddr1);/读入左声道数据right=Read(pMCBSP0->ddr2);/读入右声道数据
16、xNX-1=left/16;/防止滤波时数据溢出rNX-1=lowpassfir();(*pr尸rNX-1;Write(pMCBSP0->dxr1,left);Write(pMCBSP0->dxr2,rNX-1);nAudioCount+;pl+;pr+;if(nAudioCount>=1024)nAudioCount=0;/breakpointpl=pAudioLeft;pr=pAudioRight;/数组r的最后一个单元为当前输出/将原始数据送左声道输出/将经过滤波后的数据送右声道输出/循环使用缓冲区for(i=0;i<NX-1;i+)/重新调整输入序列(供fir2
17、使用)xi=xi+1;)intlowpassfir()(inti,y_out=0;for(i=0;i<NX;i+)(y_out+=(xNX-i+hi);)return(y_out);)子程序2:voidAIC2323_Mixer()(PC55XX_MCSPpMCBSP0=(PC55XX_MCSP)C55XX_MSP0_ADDR;int*pll,*prr,nCount,i;pLeft=pll=(int*)AUTIODATALEFT;pRight=prr=(int*)AUTIODATARIGHT;nCount=0;for(i=0;i<NX;i+)ini=0;for(i=0;i<N
18、H+2;i+)dbi=0;while(1)(while(!ReadMask(pMCBSP0->spcr2,SPCR2_XRDY);/等待数据传输完成lft=(*pll)=Read(pMCBSP0->ddr1);/读入左声道数据rgt=Read(pMCBSP0->ddr2);/读入右声道数据inNX-1=lft/16;防止滤波时数据溢出fir2(in,h,out,db,NX,NH);(*prr)=outNX-1;Write(pMCBSP0->dxr1,lft);Write(pMCBSP0->dxr2,outNX-1);/调用滤波程序计算当前输出/数组r的最后一个单元
19、为当前输出/将原始数据送左声道输出/将经过滤波后的数据送右声道输出nCount+;pll+;prr+;if(nCount>=1024)(/循环使用缓冲区nCount=0;/breakpointpll=pLeft;prr=pRight;for(i=0;i<NX-1;i+)/重新调整输入序列(供fir2使用)(ini=ini+1;2.2.3 仿真结果在View的Graph中单击Time/frequency出现graphpropertydialog框。将显示类型,图形名称,起始地址,抽样点数,数据类型等分别进行设置,输出各种波形。输出滤波前的信号时域波形语音输入波形图图2-10语音输入(时域)图2-11语音输入(频域)图2-12滤波语音输出(时域)E自编F工K滤波后湾音希出图域)Ofblfx图2-14滤波器(时域)图2-13滤波语音输出(频域)图2-15滤波器(频域)图2-16库函数滤波语音输出(时域)图2-17库函数滤波语音输出(时域)图2-18库函数与自编函数滤波对比图通过分析仿真图可知,自己编写的函
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 钛冶炼工QC管理知识考核试卷含答案
- 木地板制造工岗前理论能力考核试卷含答案
- 传输机务员技巧知识考核试卷含答案
- 玻璃制品手工成型工风险识别水平考核试卷含答案
- 联碱洗盐工决策判断测试考核试卷含答案
- 苯乙烯装置操作工纪律能力考核试卷含答案
- 玩具设计师技能安全水平考核试卷含答案
- 热缩材料制造工岗位复试考核试卷含答案
- 环形行程试题附完整答案
- 2026事业单位工勤技能-宁夏-宁夏垃圾清扫与处理工一级(高级技师)历年参考题库含答案详解
- 2026新人教版二年级上册小学数学教学计划附教学进度表教案
- 2027届高考语文复习:成语填空、典故运用、俗语辨析 课件
- 河南省普通高中2026-2027学年高二上学期开学联考英语试题(含答案)
- 新苏教版科学五年级上册 3.9《弹力》教学课件
- 新教材部编人教版五年级上册道德与法治(课件)第11课走进新时代
- 2026中国食品加工业的稳定行业中市场深度调研及投资前景与投资策略研究报告
- 【初一】【秋季上】七年级开学家长会:从小学到初中陪孩子完成一次重要换挡 校园风【课件】
- 肺癌合并骨转移护理查房
- 2025年昆山市各镇事业单位招聘笔试真题(含完整答案解析)
- 2026年政治技能测试题及答案
- 2026年秋统编版(新教材)道德与法治五年级上册(全册)分层作业及答案(附目录)
评论
0/150
提交评论