多制式語音編碼及其DSP實現
扫描二维码
随时随地手机看文章
在各种通信设备中,实时的语音压缩通常在dsp上实现。单一的编码算法,由于码率和算法固定,系统的灵活性较差。越来越多的通信服务要求能实现多种、多路编码算法,提供一定范围内的编码速率和编码算法的多种选择,例如软件无线电、ip电话、多媒体终端等。 g.729a是itu制定的一种高质量的中速率语音编码标准,编码速率为8kbps,目前已在许多通信系统中得到了应用。16/32kbps的cvsd是一种抗信道误码非常好的语音编码算法,在军事通信、宇航通信中得到了广泛的应用。32kbps的adpcm是一种算法较简单的波形编码,具有很好的话音质量和抗噪性能,在卫星通信、数字话路倍增系统中得到了广泛应用。综合了这三种算法的编码系统,在8kbps~32kbps码率具有较高的灵活性。 由于语音压缩的运算量、存储量和精度要求都不太高,在考虑价格因素的基础上,定点dsp足以胜任语音编解码的要求。本文采用了ti公司的tms320vc5409定点dsp实现了上述三种语音编解码算法。算法dsp的实现通过了有关测试。其中g.729a和adpcm采用itut有关建议提供的测试序列进行了测试,cvsd按照我国有关标准进行了测试。本文对以上三种语音编码和tms320vc5409做简单介绍后,对算法的软件和硬件实现进行介绍,并给出算法所需运算量以及所占用的硬件资源。 1 dsp芯片和语音编码算法?(1)tms320vc5409简介tms320vc5409tms320vc5409是ti公司生产的一种性价比较高的定点dsp芯片,运算速度为80mips/100mips。它拥有改进的哈佛结构、一个cpu、片上存储区(32kb的rom和64kb的daram)、片上外设以及专用的指令结构。它具有以下主要优点:1条程序总线和3条数据总线。配合存储区的双操作数读取能力,可以支持单周期,三操作数指令,提高了程序的运行效率和通用性; 先进的针对应用设计的cpu硬件逻辑提高了芯片的性能; 高度专用的指令结构提供了更快的算法实现和更方便的优化; 片上外设包括3个mcbsp(多通道缓冲串口)、一个6通道的dma控制器、8bit hpi口及锁相环时钟发生器; 模块化结构方便了快速的后续发展;? 先进的ic处理技术实现了高性能和低功耗,5v静态cmos技术进一步降低了功耗。
(2)g.729a算法g.729是itu在8kbps速率上的标准,采用"共轭结构代数码本激励线性预测编码方?quot;(c-ascelp)算法。这种算法综合了波形编码和参数编码的优点,以线性预测编码技术为基础,采用了矢量量化、分析合成和感觉加权等技术。g.729a只在g.729的基础上减少了一些运算量,保持了兼容性,质量也基本没有下降。? (3)32kbps adpcm算法g726是itu制定的自适应差分脉冲编码算法标准,有4种速率。在此项目中,使用32kbps的速率。adpcm算法是一种波形编码,它在pcm编码的基础上引入了预测和差分的概念,仅对实际值与预测值之间的差值进行编码。在编码过程中,用过去样点的值对当前样点进行预测,并自适应地调整预测系数,使预测误差很小,从而在降低码率的同时,保持了很高的编码质量。?(4)cvsd(32kbps/16kbps)算法连续可变斜率增量调制,是一种1bit的差分波形编码方式。自适应的量阶随信号统计特性的变化而变化?在信号很大动态范围内?可获得最大信噪比。并且易于实现?电路结构简单。主要技术:三连0/三连1检测,即若检测到码流中有三连0或三连1,则表示信号在骤升或骤降,调整量阶以适应信号变化。2 硬件系统(1)硬件板介绍在发端,模拟信号通过前端处理电路和a/d采样,转换成8bit a-law pcm信号。对数pcm信号在tms320vc5409中转成线性码,并进行压缩编码。输出的g.729a/adpcm/cvsd码流在信道上传输。接收端接收到的压缩码流在dsp中被解码成对数pcm信号,再经过d/a变换和用户电路,最终得到模拟话音。其中cpld用来产生8khz的帧同步信号,使各硬件芯片之间协同工作。a/d、d/a部分采用单片mc14557mc14557芯片。单路信号的硬件系统框图如图1所示。(2)算法的硬件选择程序定义了两个标志变量flag1、flag2。利用vc5409提供的可屏蔽中断int0~int3,在中断