基于TMS320C64x DSP的语音采集与盲信号分离系统设计

时间:2007-04-28
摘 要:本文利用TMS320C64xDSP的多通道缓冲串口(McBSP)和增强型直接存储器访问(EDMA)的特点,设计出了混合语音采集与盲信号分离(BSS)系统。
关键词:盲信号分离;McBSP; EDMA
引言
盲信号分离是指在对彼此独立的源信号混合过程中及各源信号本身均未知的情况下,从混合信号中分离出这些源信号的方法。BSS可以用来从多个麦克风混合语音信号中提炼出单个语音信号。然而,现有的BSS算法比较复杂、运算量大、实时性差,不能满足语音处理对实时性的要求,从而限制了它的硬件实现和应用。
本文利用TMS320C6416 DSP设计出了混合语音盲信号分离系统。该系统通过采集的两路混合语音信号进行盲信号分离,实时输出分离的语音信号。

TMS320C6416的特点
本系统用TMS320C6416(以下简称C6416)的2个McBSP和EDMA来实现语音信号的采集、数据的传递和分离语音的输出。
McBSP的特点
除了具有标准串口的功能以外,McBSP还有以下特点:支持多种传输接口,如MVIP兼容的交换方式以及ST-BUS兼容设备和T1/E1帧协议等;可以与多达128个通道进行收发;支持不同字长的数据传输,并且当8bit数据传输时,还可以选择先传LSB或MSB;可设置帧同步信号和数据时钟信号的极性;内部传输时钟和帧同步信号可编程程度高。
EDMA的特点
EDMA控制器负责片内L2存储器与其他外设之间的数据传输。EDMA和DMA控制器在结构上有很大的不同,DMA控制器是基于寄存器结构的,而EDMA控制器是基于RAM结构的。其增强之处包括:提供了64个通道;通道之间的优先级可以设置;支持不同结构数据传输的链接。EDMA控制器由事件和中断处理寄存器、事件编码器、参数RAM和硬件地址产生器组成。首先,事件寄存器对EDMA事件进行捕获,事件编码器再对同时发生的多个事件进行分辨,,硬件地址产生器根据参数RAM中存放的相关传输参数产生读写操作所需要的地址。EDMA数据的传输格式和控制都是通过设置EDMA控制寄存器和参数RAM来实现的,每个通道有一组6个字节(192 bit)参数RAM,可以通过32 bit的外设总线对其进行访问。

接口设计
由于本系统采样的数据量比较大,并且C6416的McBSP通道含有m律和A律压扩硬件,支持对输入数据的m律或A律扩展以及对输出数据的m律或A律压缩,因此,本文选用A律编/解码芯片TP3057作为ADC和DAC。
系统选用两片TP3057,它们将麦克风采集到的语音信号数字化(8KHZ的采样频率),输出8位A律PCM码。图1是TP3057和C6416的接口图。
本方案将C6416的McBSP0和McBSP2分别与两片TP3057相连,采集两路混合语音信号。TP3057(1)还会输出分离语音信号。TP3057将模拟混合语音信号转换为8位A律PCM,然后在FSX为低期间,C6416通过McBSP接收PCM码,经过McBSP A律解压缩后放入DRR中,再由EDMA控制器将数据从DRR中读到L2中的SDRAM指定单元,进行BSS处理。分离语音信号由EDMA送到McBSP0中的发送寄存器(DXR),经过A律压缩后送入发送移位寄存器,然后在FSR为低期间,经接口送到TP3057(1)。TP3057(1)把数据A律解压缩后用扬声器输出。

系统软件设计
本系统的程序主要有以下几部分构成:C6416的初始化、McBSP0和McBSP2两通道的初始化、EDMA通道的设置以及BSS子程序。图2给出了系统的程序流程。
C6416的初始化主要是对DSP时钟、工作模式、片内L2存储器的分配和DSP堆栈的设置。McBSP0和McBSP2两通道的初始化则是通过14个控制寄存器来设置时钟和帧同步信号、帧同步的相位、帧的长度、数据单元的字长、数据延迟和压扩方式等。在本系统中,由于接口处是8位PCM码,所以数据单元的字长设置为0,以8位传输,延迟为0,并将压扩模式设置为A律。EDMA通道初始化主要是对相关通道(通道12、13、17和18)的控制寄存器和传输参数RAM进行设置。而BSS子程序是整个系统的部分,对采集到的两路混合语音信号运用盲信号分离方法进行处理,分离出语音信号。

结语
本文设计了一个高性能的混合语音信号采集与盲分离系统,采集到的数据经过DSP的McBSP 和EDMA通道直接被送到片内存储器堆栈中,然后进行BSS,将混合语音分离出来。
另外,由于BSS算法复杂,在一定程度上影响了整个系统的性能。因此,要想进一步提高系统的实时性,研究简单的、易于实现的、鲁棒性好的BSS算法是十分必要的,这也是下一步工作要解决的问题。■

参考文献


[1]. TMS320C6416 datasheet https://www.dzsc.com/datasheet/TMS320C6416_1078043.html.
[2]. TP3057 datasheet https://www.dzsc.com/datasheet/TP3057_656730.html.
[3]. FSX datasheet https://www.dzsc.com/datasheet/FSX_2346448.html.
[4]. FSR datasheet https://www.dzsc.com/datasheet/FSR_2346447.html.
[5]. TMS320C6000 datasheet https://www.dzsc.com/datasheet/TMS320C6000_891022.html.
[6]TMS320C60000 DSP Reference Set(Rev.). Texas InstrumentInc. 2003
[7]He, P., Sommen, P.C.W. and Yin, B. A realtime DSP blind signal separation experimental system based on a new simplified mixing model[J]. Proc. of EUROCON’2001, Bratislava, Slovak Republic. July. 2001
[8]李方慧 等.TMS320C6000系列DSPs原理与应用[M]. 北京:电子工业出版社,2003. 1


上一篇:为高速A/D转换应用设计无噪声时钟
下一篇:基于USB2.0的语音数据采集系统设计

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料