1z电竞

咨询热线:021-51095123
网站公告:
资讯资讯
服务热线

24小时全国服务热线

021-51095123

如果您有任何疑问或是问题,请随时与大家联系

查看联系方式>>
行业动态 当前位置:主页 > 资讯资讯 > 行业动态 >

基于DSP的回声消除系统设计与实现方案

文章来源:稳压电源企业,时间:2018-12-10 12:06    点击量:

常见的DSP系统的结构主要由低通滤波器、放大器、模数转换器(ADC)、数字信号处理器和数模转换器(DAC)五个模块构成。DSP系统设计步骤如图1所示。
 
基于DSP的回声消除系统设计与实现
系统架构
 
本文回声消除模块的总体设计如图2所示。
 
基于DSP的回声消除系统设计与实现
 
如图,本文设计的DSP系统可以划分成信号输入模块、算法实现模块和信号输出模块。
 
信号输入模块,可分为主通道和参考通道。DSP在处理算法时需要用到远端语音输入信号和近端语音输入信号。主通道和参考通道分别采集近端语音信号和远端语音信号,经过处理转换成数字信号,同时送入到DSP中进行处理。
 
算法实现是自适应滤波器设计的核心部分。本文采用型号为TMS320F28335的高速信号处理器。已经转换成数字信号的主通道和参考通道信号在高速信号处理器中按照自适应滤波算法进行处理,处理完成以后送到系统的输出模块。在信号的输出模块,通过数模转换器得到模拟信号,再经过低通滤波,送给扬声器输出,由此得到经过回声消除以后的语音信号。
 
本文设计的自适应回声消除模块的程序设计流程图如图3所示。在各个子模块的程序设计中,通过调用集成在CCS开发平台中的芯片支撑库,可以有效地简化开发流程,极大地提高工作效率。
 
基于DSP的回声消除系统设计与实现
App设计
 
自适应滤波算法的App实现流程框图如图4所示。根据滤波器系数迭代数据以后,并不需要根据计算误差e(n)来判断计算得到的数据是否输出。而是不管得到的数据和目标数据的误差有多大,都把该数据输出,所以输出的数据有个收敛的过程,刚开始误差比较大,往后就稳定在一个较小的误差范围以内。
 
在CCS开发平台上搭建好开发环境,选择目标配置对象为TMS320F28335,用C语言编写实现LMS自适应算法的核心程序代码如下:
 
for(i=0;i<n;i++)< p="">
{
sum = 0.0f;
for(j=0;j<m;j++)< p="">
{
sum+=h[j]*x[i+j];
}
y[i]=sum;
error=d[i]-y[i];
for(j=0;j<nh;j++)< p="">
{
h[j]=h[j]+(miu*error*x[i+j]);
}
}
 
首先对程序中需要用到的各个参数进行初始化,取每一次需要处理的信号序列长度N=512,滤波器的阶数M=4,步长因子miu=0.0001。用MATLAB录制一段语音从参考通道输入,作为回声消除算法的远端参考语音。同时把这段语音从主通道输入,在DSP处理器中把它缩小为原来的三分之一,作为近端回声信号。
 
基于DSP的回声消除系统设计与实现
 
在视频和音频数据流控制中经常用到一种被称为“乒乓操作”的处理机制。它的最大特点是接收数据流的缓存单元按照一定规律有节拍的切换,这样数据就传送的很顺畅,不会丢失,而且没有任何停顿,不会阻塞。这种方式非常适合音频和视频数据的流水线处理。在每一段单位时间内,处理器

处理数据的时间不能过长,否则本段数据还没有处理完成,下一段数据就已经来了,这样就会导致数据的丢失和错乱。通过DMA实现“乒乓操作”的流程如图5所示
基于DSP的回声消除系统设计与实现
 
双端检测(DTD)
 
双端通话指近端和远端同时说话的情况,此时远端、近端语音信号不相关,近端语音在算法处理时会表现成一个干扰信号,使得自适应滤波器性能变差,甚至发散。因此,为了使滤波器适应双端通话的情况,需要在回声消除系统中添加一个双端通话检测器(Double-Talk Detector,DTD)。通过它来区分单端和双端通话,如果不存在双端通话时,滤波器就实时更新其系数,反之,滤波器系数则停止更新。
 
基于DSP的回声消除系统设计与实现
 
目前,最常见的DTD算法有互相关比较法和能量比较法。
 
硬件设计
 
基于DSP的回声消除系统设计与实现
 
具体硬件设计如图6所示。整个硬件系统以TMS320F28335型号的DSP为核心,通过编码器TLV320AIC23b与外部进行语音信号的交换(TLV320AIC23b实现语音信号的模拟-数字,数字-模拟的转换工作)。TMS320F28335对TLV320AIC23b的控制通过I2C总线实现,其数据交换通过多通道缓冲端口(McBSP)来完成。JTAG通过仿真器连接DSP与上位机,以实现程序的下载、调试。其他模块与DSP构成能正常工作的最小系统。DSP与编码器的具体连接如图7所示。TLV320AIC23b数字音频接口与DSP之间的数据传输时序如图8所示。
 
基于DSP的回声消除系统设计与实现
 
在音频信号的输入端和输出端各加了一级滤波器,滤除高频信号的干扰。共有两个通道,分别获取远端参考信号和近端回声信号。
 
为了使编码器能够正常工作,需要对它内部的寄存器进行配置,配置是通过控制接口(I2C接口)来完成的。对应的配置命令字的前7位表示的是寄存器地址,后9位代表对寄存器的配置内容。该音频芯片提供了11个配置寄存器,如表1所示。
 
基于DSP的回声消除系统设计与实现
 
在本DSP系统设计中,采用+5 V的稳压直流输入作为外部引入电源,这样首先就满足了模拟电路供电需求,并且通过LM117DT3-3.3电源转换芯片将5 V转换为3.3 V来给I/O引脚及部分外围电路,再通过LM117DT3-1.8电源转换芯片将3.3 V主电源转换为1.8 V,给DSP内核供电。
 
回声消除系统调试
 
为了验证本文所设计的自适应滤波器的功能,设计了一个模拟实际通话环境的回声消除实验。
 
场景布置:房间A作为远端房间,房间B作为近端房间,两个房间的参与者利用局域网传输工具FeiQ进行语音通信。A说话的声音被计算机的麦克风捕获到,通过网络传到B房间的计算机中,此时声音从计算机中分为两路输出,其中一路直接输入到回声消除模块的参考通道,另一路则通过扬声器输出,作为远端参与者传输给近端参与者的声音信息。
 
扬声器出来的声音和近端参与者说话的声音通过麦克风进入回声消除模块的主通道,主通道和参考通道的声音经过DSP处理后输出,输出的声音通过电脑的麦克风再经过网络传输给A房间的远端参与者。

【返回列表页】
?
1z电竞 关于大家 产品中心 资讯资讯 客户案例 技术资料 解决方案 联系大家
电话:021-51095123  邮箱:xupower@qq.com XML地图 网站地图
企业主营: 1z电竞,1z电竞,隔离变压器,1z电竞,稳压电源
2002-2017 蓄新电气 www.xupower.cn 版权所有 技术支撑:蓄新科技 ICP备案编号: 沪ICP备17006370-1号
1z电竞科技有限企业,研发、设计、生产及销售1z电竞,1z电竞,1z电竞,稳压电源为主营业务的高新技术企业,致力于为客户提供安全稳定、绿色环保、节能的智能电源产品.  
XML 地图 | Sitemap 地图