● 摘要
本课题讨论的共轭结构代数码激励线性预测(CS-ACELP)的语音编码算法是一种高效高质量的语音压缩编码算法。该算法作为ITU-T G.729标准被广泛应用于IP电话、移动通信、多媒体网络通信等领域。然而算法的运算量很大,算法复杂度较高,很难保证实时性,这就要求根据实际的应用平台对算法的实现进行优化。项目的最终目标是在G.729语音编码算法的C程序源代码移植到StarCore 140 DSP平台上,而来自ITU-T的标准C代码参考程序已经实现了完整的编解码功能,但是程序的执行速度无法满足严格的实时性要求。所以对参考程序的移植优化就成为主要工作。本文在深入理解语音编码关键技术和G.729算法原理的基础上,首先提出了在StarCore 140平台上实现G.729语音编解码器的方案,并以ITU-T提供的参考序列进行准确性测试,验证方案的正确性;然后通过对该算法C代码的分析和研究,综合运用编译器、算法级、C语言级、汇编级等多种优化方法,充分利用StarCore 140的指令并行流水线,对程序代码进行了优化。最后对实现后的编解码器的复杂度和编解码性能进行了测试。通过算法的仿真测试,优化后的G.729算法实现与参考算法得到了相同的结果,但是运算复杂度大大降低,对语音数据的编码和解码效率明显提高,在StarCore 140平台上对G.729算法的一帧语音数据进行编解码处理,相比较未优化之前,编码速度提高了8.8倍,解码速度提高了3.1倍,取得了比较好的优化效果。 本文所讨论的方法和技术不仅适用于StarCore 140 DSP平台的音频处理器,对于其它具有并行处理机制的DSP程序优化也具有一定的工程参考价值。