基于DSP 的实时处理的实现,本文将AIC23 采集到的数据先存储到SDRAM 中,在需要处理的时候利用EDMA 实现PINg Pong 缓冲,将待处理的数据分批搬运到片内存储器,结合高速缓存和片内内存设计合适的数据结构,并将数据对齐,这样大大减小了数据搬移带来的开销。
DSP 处理主流程图如图4 所示。
图4 DSP 处理主流程
基于Ping Po ng 缓冲结构的音频处理流程如图5所示。
图5 基于Ping Po ng 缓冲结构的音频处理流程
通过对音频处理算法中数据结构的调整和优化,将Ping Pong 缓冲架构的数据进行合理的安排,使得EDMA的数据传输和Process AEC 线程更好地并行处理。将当前需要处理的*信号和扬声器信号的数据保存在片内地址内,并将回声消除中用到的FFT 和扬声器参考数据均放在片内地址处理。将算法的其他辅助数据结构均放在SDRAM。这使得片内资源得到最大化利用,并且很大程度地提升了整个系统的运算效率。
参考TI DSP 相关优化资料,T I 的编译器选项使用-mv6700,-O3,-oiO,-pm 开关,使得编译的代码能更多地利用TMS320C6713B 的硬件资源和浮点指令,参考了TI 带的FFT 加速函数,结合实际算法做了局部的改进,使得所有算法最终在TI TMS320C6713B 上均能实时高效的运行。
3 结 论
声学回声消除以及噪音抑制等算法在多媒体通信的音频处理中起着至关重要的作用。
本文通过结合相关的自适应滤波器以及非线程处理和噪音抑制等算法,并在基于TI 的T MS320C6713B上实现和优化,实现了高效率的声学回声、噪声消除实时处理系统。通过实际应用表明,该系统对噪音消除可达40 dB以上,对回音消除可达50 dB 以上,并具备良好的双工处理能力。目前在本系统的基础上已经延伸扩展出了多路输入/ 输出的专业数字音频处理器,并实际应用在视频会议系统中,取得了较好的体验效果。