基于DSP的实时语音处理设计_第1页
基于DSP的实时语音处理设计_第2页
基于DSP的实时语音处理设计_第3页
基于DSP的实时语音处理设计_第4页
基于DSP的实时语音处理设计_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘要:基于TMS320VC5402的音频信号采集与处理系统。介绍了该系统的总体方案和硬软件设计。讨论了模/数(A/D)和数/模(D/A)转换电路的设计方法以及如何利用TMS320VC5402的多通道缓冲同步串口(McBSP)和PCM1800及PCM1744芯片接口来实现音频信号的采集和输出。通过改变输入输出压缩比例自动控制增益的幅度,扩大了接收机的接受范围,它能够在输入信号幅度变化很大的情况下,使输出信号保持恒定或仅在较小范围内变化,不至于因为输入信号太小而无法正常工作,也不至于因为输入因为输入信号太大而使接收机发生饱和或阻塞。实验证明:所设计的基于DSP的硬件和软件系统是一个很好的音频信号采

2、集与处理系统。关键词:DSP , TMS320VC5402 , 多通道缓冲同步串口, 音频信号, 采集与处理1.绪言近年来,随着DSP技术的普及和低价格、高性能DSP芯片的出现,DSP已越来越多地被广大的工程师所接受,并越来越广泛地被应用于各个领域,例如:语音处理、图像处理、模式识别及工业控制等,并且已日益显示出其巨大的优越性。DSP是利用专门或通用的数字信号处理芯片,以数字计算的方法对信号进行处理,具有处理速度快、灵活、精确、抗干扰能力强、体积小及可靠性高等优点,满足了对信号快速、精确、实时处理及控制的要求。对实时数字信号处理的应用需求和超大规模集成电路技术水平的飞速发展,推动着DSP性能不

3、断提高。DSP是一种专用的数字信号处理器。随着超大规模集成电路技术上取得的突破进展,高度集成化的DSP数字信号处理器具有体积小、功耗低和运算速度快等诸多优点,因此非常适用于语音信号的压缩处理。基于DSP的实时语音处理系统,它具有可选择的信号采样速率和高性能的数字信号处理能力,不仅可以用来对立体音频信号进行实时编解码处理,还可以用来作为高速的实时信号采集与处理板使用。它包括多路语音实时采集,压缩处理,存储功能等基本功能。根据设计要求中的要点,所要设计的基于DSP的实时语音处理系统功能是,它能同时输入至少两路音频信号,而且能够对两路输入信号进行实时采集并将模拟信号数字化,然后对信号进行数字信号处理

4、,并能够根据要求存储不少于10小时的录音,最后输出音频信号。那么在设计系统过程中,为满足要求要有信号采集,模/数及数/模转换,数字信号处理部分,包括数据压缩等,电源电路,复位电路,时钟电路。信号特征分析音频信号经过高精度高速的ADC转换后得到一串数字信号,分帧输入到波形输入缓冲区RAM。然后由手动控制一种或几种处理算法将音频信号调入TMS320C5402的内部进行高速运算。经过处理的音频信号,再输入到高精度高速的DAC转换器中,还原成模拟的声音信号,经音箱功率放大电路放大输出。2.本设计的任务1.输入信号为2路语音信号,要求系统能对2路输入信号进行实时采集、数字化处理、压缩、存储(录音),要保

5、证一定的录音质量,录音时间不少于10小时。输入信号特征进行分析、需求分析,选择确定DSP芯片型号、语音采集芯片型号,完成系统硬件设计。本设计的实现方案1、系统结构框图:高精度高速音频信号ADC波形输入缓冲区RAMTMS320VC5402波形输出缓冲区RAM高精度高速音频信号DAC音频处理程序存储区EPROM语音信号存储器SDRAM电源复位电路图1 系统结构图音频系统应该具有较宽的动态范围,选择1624位的ADC和DAC能完全捕获或恢复高保真的音频信号。系统的核心芯片(DSP)选用美国TI公司的TMS320VC54021(以下简称C5402)。2、DSP芯片模块是整个实时语音处理系统的核心部分,

6、它对经数字化的信号进行压缩,编解码等。A/D转换模块功能是把模拟信号数字化,包括采集和量化,这部分为DSP处理语音数字信号做好了准备;D/A转换模块就是把数字信号转换为模拟的信号,输出音频信号。SDRAM(动态随机存储器)存储器模块主要是为DSP处理器扩展存储容量,达到要求的存储容量;但要注意的是要与DSP处理器的速度相匹配,以便良好的运行。电源模块是为内部芯片及周边系统电路提供能量的部分。3、DSP处理器:作为DSP家族高性价比代表的16位定点DSP芯片,C5402适用于语音通信等实时嵌入应用场合。与其它C54X芯片一样,C5402具有高度灵活的可操作性和高速的处理能力。其性能特点如下:操作

7、速率可达100MIPS;具有先进的多总线结构,三条16位数据存储器总线和一条程序存储器总线;40位算术逻辑单元(ALU),包括一个40位桶形移位器和两个40位累加器;一个1717乘法器和一个40位专用加法器,允许16位带/不带符号的乘法;整合维特比加速器,用于提高维特比编译码的速度;单周期正规化及指数译码;8个辅助寄存器及一个软件栈,允许使用业界最先进的定点DSP C语言编译器;数据/程序寻址空间为1M16bit,内置4K16bit ROM和16k16bit RAM;内置可编程等待状态发生器、锁相环(PLL)时钟产生器、两个多通道缓冲串口、一个与外部处理器通信的8位并行HPI口、两个16位定时

8、器以及6通道DMA控制器且低功耗。与C54X系列的其它芯片相比,5402具有高性能、低功耗和低价格等特点。它采用6级流水线,且当RPT(重复指令)时,一些多周期的指令就变成了单周期的指令;芯片内部RAM和ROM可根据PMST寄存器中的OVLY和DROM位 可灵活设置。、硬件设计1、C5402采用3.3V和1.8V电源供电,其中I/O采用3.3V电源供电,芯片的核采用1.8V电源供电。而实际常用的只有5V电源,所以必须采用电源转换芯片。选用TPS7301和TPS7333两块电源转换芯片(它们都是TI公司为配合DSP而设计的电源转换芯片),分别接上适当的外围电阻,构成电阻分压器,即可调整两块芯片的

9、输出电压分别为3.3V和1.8V。 2、A/D电路PCM1800是双声道单片型20位ADC,单+5V电源供电,信噪比为95dB,动态范围为95dB,其内部嵌有高通滤波器,具有PCM音频接口和四种数据格式,分为主控和受控两种模式,采样频率可选为32kHz、44.1KHz和48KHz。3、PCM1800构成音频信号采集系统时,主要涉及到BCK(位时钟信号)、LRCK(采样时钟信号)、FSYNC(帧同步信号)、DOUT(数字信号输出)、SYSCLK(系统时钟输入)这几个对时序有要求的引脚。通过对引脚MODE0和MODE1进行编程,可让PCM1800工作于主控模式(Master Mode)。此时,BC

10、K、LRCK、FSYNC均作为输出,其时序由PCM1800内部的时钟产生电路控制。但SYSCLK只能由外部提供(这里用C5402的TOUT脚输出信号提供)。PCM1800的系统时钟只能是256fs、384fs或者512fs,这里fs是音频信号采样频率。在主控模式时,FSYNC用来指明PCM1800的DOUT输出的有效数据,它的上升沿表明一帧数据的起始,下降沿表明一帧数据的结束。FSYNC的频率是采样时钟频率LRCK的2倍。在此模式下,位时钟信号BCK的频率是采样时钟频率LRCK的64倍。4、通过对PCM1800的FMT0、FMT1两引脚编程(FMT01,FMT10),可以设置PCM1800输出

11、的数据格式为20位的IIS格式。为了保证在数据处理时不影响新数据的接收以及在接收数据时不中断正在进行的数据处理过程,采用了多通道缓冲同步串口(McBSP)。 PCM1800与C5402连接后,C5402使用缓冲串口0接收数据,各种同步信号由PCM1800产生,C5402是被动接收各种信息。PCM1800与C5402的硬件接线图如图2所示。图2 PCM1800与C5402的硬件接线图5、电源管理功能模块所用器件: TPS73HD301(,)该芯片一端输入可调,范围是(1.2-9.7V)图3 TPS73HD3016、D/A电路PCM1744是双声道立体声DAC,包含数字滤波器和输出放大器,动态范围

12、为95dB,具有多种采样频率可选,最高可达96kHz。采用24位的IIS数据输入格式。PCM1744的操作主要涉及到LRCIN(采样时钟信号输入)、BCKIN(位时钟信号输入)、SCKI(系统时钟输入)、DIN(数据输入)这几个对时序有要求的引脚。PCM1744与C5402连接后,C5402使用缓冲串口1发送数据,各种时钟信号均由C5402产生,PCM1744被动接收各种信息。PCM1744的系统时钟信号(SCKI)由C5402的TOUT引脚提供,TOUT是C5402的定时器输出信号引脚,有较强的驱动能力,可以驱动多个芯片。PCM1744的数据接收时钟格式必须是IIS格式,C5402在缓冲串口

13、寄存器中设置各种时钟方式时,必须满足IIS格式的要求。C5402作为主动工作器件,可以对其缓冲串口输出信号进行调整。输出的采样时钟信号、位时钟信号可以在McBSP寄存器SRGR1和SRGR2中设置,设置遵循图4的原则。图4 C5402时钟发生流程图基本的时钟信号可以来自CPU时钟,也可以来自晶振时钟,这在SRGR2寄存器中的第13位设置。基本时钟输入后,经CLKGDV(SRGR1的第7位到第0位)所设置的值进行第一次分频,得到位时钟信号(由BCLKX1脚输出)。值得注意的是,位时钟信号最高为DSP频率的一半。位时钟信号经FPER(SRGR2的第11位到第0位)和FWID(SRGR1的第15位到

14、第8位)所设置的值进一步分频得到采样时钟信号(由BFSX1脚输出),FPER和FWID分别设置采样时钟信号的低电平和高电平的时间值。C5402与PCM1744的硬件接线如图5所示。图5 PCM1744与C5402接线图PCM1800完成音频信号采集后,在DSP的外扩程序存储器中嵌入相应的处理算法,语音信号经处理后,再从PCM1744输出。7.复位电路:所用芯片为74HC14 图6 复位电路存储器模块:所用芯片为MT48LC8M8A2TG-75存储容量Density 为64Mb数据宽度16位工作电压 3.3V TSOP封装 54管脚 时钟速率133 MHz 图7芯片为MT48LC8M8A2TG-

15、753、软件设计在本课程设计中的一些主要的程序语音的采集滤波与放大int dIn21=0,mOut21=0; /定义dInmOutchar dOut ;char hn21=0.05;int Read_BSP1(void);void Write_BSP1(int);void Led_Light(void);int AGC_audio(int);/ Main programvoid main() init_board(); while (1) int i,j; dOut=0; for (i=0;i21 ;i+) dIni=Read_BSP1(); mOuti=AGC_audio(dIni); /将

16、采集大信号放大 for(j=0;jmaxArrIn) /如果输入信号大于临时正峰值maxArrInmaxArrIn=AGC_in; /则更新临时峰值if(-1*AGC_inmaxArrIn) /早果输入信号大于临时负峰值maxArrInmaxArrIn=-1*AGC_in; /则更新临时峰值if(dTime4096) /每隔4096个时钟修改一次长期峰值maxAGC_in=maxArrIn; /则更新长期峰值maxArrIn=0; /并重新捕捉临时峰值dTime=0; /重新开始计时dTime+;if(AGC_in maxAGC_in) /及时检测长期正峰值勤maxAGC_in=AGC_in;

17、 /及时更新长期正峰值if(maxAGC_in10) /如果输入信号大于1AGC_Coff=500.0/(maxAGC_in+100); /按信号幅度成反比关系计算放大系数if(-1*AGC_in)maxAGC_in) /及时检测长期正峰值勤maxAGC_in=-1*AGC_in; /及时更新长期负峰值if(maxAGC_in10) /如果输入信号大于-1AGC_Coff=500.0/(maxAGC_in+100); /按信号幅度成反比关系计算放大系数if(maxAGC_in20000) /对放大后的信号进行限幅AGC_out=20000; /如果信号幅度超过2000则用2000表示if(AG

18、C_out-20000)AGC_out=-20000;return AGC_out; /返回放大后的信号,即AGC_audio(dIn)=AGC_out滤波器放大设计图8滤波器放大设计4、系统调试及结果分析(1)调试步骤:测试电源电压 测试DSP芯片的输出频率 对硬件系统进行系统仿真 对DSP外围硬件调试 模数接口的调试 (2)软件调试 DSP系统的软件调试主要是在仿真器上进行。为了提高程序的效率,编写系统软件可采用三种不同的方法,即用汇编语言编写、C语言编写以及C与汇编的混合语言编写。 软件调试时,可以通过比较C程序的模拟结果与汇编程序的结果来实现。通常,两种结果应完全一致。 (3)系统调试 本系统的初始化主要有以下几项工作:中断矢量的重定位工作时钟设置等待状态数的设置中断设置其他设置 (4)结果分析最后试听出来

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论