新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 一种基于DSP的音频实时处理系统

一种基于DSP的音频实时处理系统

作者:时间:2011-03-15来源:网络收藏

1.2.2 改进的回声消除系统
如图2所示,通过加入静音检测算法(VAD)对输入信号的状态进行判断,不仅可以减轻实际的运算量,也可降低噪音对自适应滤波器的干扰,在一定程度上避免了滤波器发散的情况。同时加入MMSE Short-time Spectral Amplitude Estimator替代了传统的非线性器(NLP)算法。在频域内对参与回声的频谱能量进行估计,计算增益,最后达到相对平滑的残余回声和噪音的

本文引用地址:http://www.eepw.com.cn/article/150960.htm

c.JPG
通过对滤波器状态参数的跟踪,根据滤波器当前是否正常收敛,残余回声估计模块的输出结果会自动调节估计值的大小,避免在滤波器正常收敛的情况下,抑制残余回声导致后正常信号损失过多的问题。
图2中采用的静音检测算法(VAD)采用了同时检测短时能量与过零率的方法,保证了判断的可靠性。在远端语音不存在的时候,没有必要进行回声消除,只需要进行本地的噪音消除,若本地语音不存在则不需要做任何处理。
结合VAD系统更有效地减少了对噪音和回音估计的误差范围,通过对滤波器系数更新的学习和调整功能使得在双方通话过程中信号具备更好的信噪比。通过非线性信号检测模块加强了整体消除回音的能力。

2 统实现
2.1 硬件平台
的选型需要考虑运算速度、成本、硬件资源以及程序的可移植性等多个问题。由于算法的浮点特性,本文采用了美国德州仪器(TI)的TMS320C6713B浮点作为核心处理器,通过使用JTEG标准测试接口、EDMA控制器、GIPO通用输入输出端口以及多通道缓冲串口(McASP)等主要片外设备来完成系统的设计。
TMS320C6713B可以工作在225 MHz主频上,片内有8个并行处理单元,分为相同的两组,其体系结构采用甚长指令字(VLIW)结构,单指令字长为32 b,8个指令组成一个指令包,总字长为256 b。L1支持4 KB的程序缓存以及4 KB的数据缓存,L2支持64 KB的缓存。32 b的外部存储器接口(EMIF)。与SDRAM等无缝连接,可以寻址256 MB。
由于系统运行过程中需要实现的算法较多,仅依靠TMS320C6713B的192 KB片内RAM来执行程序是很困难的。本文使用了EMIF的接口扩展了SDRAM作为算法和数据的存储区域。采用TLV320AIC23B实现音频输入和输出,AIC23支持48kHz带宽、96kHz采样率的双声道立体声A/D,D/ A,音频输入包括了麦克风输入和线路输入。
系统的硬件平台如图3所示。

d.JPG
2.2 DSP的软件实现
DSP的处理的实现,本文将AIC23采集到的数据先存储到SDRAM中,在需要处理的时候利用EDMA实现Ping-Pong缓冲,将待处理的数据分批搬运到片内存储器,结合高速缓存和片内内存设计合适的数据结构,并将数据对齐,这样大大减小了数据搬移带来的开销。
DSP处理主流程图如图4所示。

e.JPG



评论


相关推荐

技术专区

关闭