摘 要: 介绍了基于TMS3.0VC5510A实现的低功耗通用语音处理平台的方案,并且在其上实现了多种语音压缩算法以及基于算法的自适应功耗控制,较好地达到了低功耗的要求。
语音信号处理在通信领域得到了广泛的应用,语音传输的数字化是全数字化移动通信系统中的重要环节。高质量、低速率的话音编码技术与高效率的数字调制技术结合,为现代移动通信提供了优于模拟移动通信的系统容量、通信质量和频谱利用率。现代移动通信的发展也对系统的功耗提出了较高的要求,因此低功耗、高性能的DSP已经越来越广泛地被应用于各个领域。本文介绍采用美国德州仪器公司(TI)最新开发出来的TMS320VC5510A,利用其数据处理能力及低功耗特性,并且结合MSP430F149增加了系统的控制能力,进行各种语音算法的实时实现,对于实际开发语音处理系统具有重要的参考价值,并且该平台已经应用于实际产品中。
1 语音处理系统组成及其原理
1.1 语音处理系统的组成
语音算法多种多样,要求语音处理系统的前端提供符合算法精度要求的数字采样信号,因此要求前端的A/D、D/A具有较高的采样率和采样精度。语音处理系统还有实时性的要求,在一些应用中还要求语音编解码算法、加解密算法、信道编解码算法甚至调制、解调算法都在同一块芯片中实现,因此要求系统的数据处理能力强,存储空间大。在通常的DSP应用系统中,DSP加上存储器、 A/D、D/A和外设接口就可以实现。但是越来越多的场合要求系统完成与外部系统的通信和控制,例如人机接口、信道传输设备等控制功能。这些均可以采用 MCU+DSP的结构,以弥补单一DSP系统控制能力差的不足。经过仔细选择比较,最终的语音处理系统的硬件结构设计如图1所示。
语音处理系统框图
图1 语音处理系统框图
1.2 语音处理系统原理
如图1所示,模拟话音经过功放构成的带通滤波器,通过TLV320AIC10的模/数转换器(ADC)转换成8 000Hz的数字信号,该采样信号的精度为16位,对输入模拟信号的幅度要求为-3.3~3.3V。数字化的语音信号通过同步串口(McBSP)传送到DSP(TMS320VC5510A)内部缓冲区,送入编码器进行编码,得到的数据流通过同步串口(McBSP)及信道接口传给终端,经过信道编码后传输。从信道收到的码流经过终端解码通过同步串口(McBSP)传给DSP内部的缓冲区,送入解码器进行解码,得到的数字化语音再通过同步串口(McBSP)传给TLV320AIC10的模/数转换器(ADC),转换成模拟信号输出。为了增强该硬件平台的控制能力,DSP(TMS320VC5510A)通过主机接口(HPI)与MCU(MSP430F149)进行通信。并且增加了存储器Flash(SST39VF800A),以保证可以进行脱机运行。
2 系统具体实现
2.1 主要芯片选择及简介
该平台采用的TLV320AIC10是德州仪器公司推出的一款通用型低功耗16位A/D、D/A音频接口芯片,适用于语音以及宽带音频处理;其数字接口采用同步串口方式,可以非常方便地与DSP的同步串口(McBSP)相连,其中SCLK提供位时钟信号,FS提供帧同步信号,DIN为串行数据输入,DOUT为串行数据输出。TLV320AIC10与DSP的串口连接方式如图2所示。其中TLV320AIC10工作在主模式(Master Mode)下,DSP的同步串口(McBSP)工作在从模式(Slave Mode)下。同步串口的时钟由TLV320AIC10的SCLK提供,为2.048MHz。
TLV320AIC10 与TMS320VC5510A 连接示意图
图2 TLV320AIC10 与TMS320VC5510A 连接示意图
系统的主要数字信号处理芯片TMS320VC5510A与TMS320VC54X相比,功耗更低,代码执行效率更高,而且与TMS320VC54X的指令完全兼容,具有以下特点。
(1)资源丰富。32位宽的外部存储器接口(EMIF),2个20位宽的定时器,6通道的DMA控制器和3个多通道缓冲串口(McBSP),16位增强主机并行接口(EHPI),8个通用管脚(GPIO)。
(2)数据处理能力强而且运算速度快。TMS320VC5510A采用了改进的哈佛结构,C55X的DSP在一个总线周期内同时进行3个数据读和2个数据写的操作,采用了并行的双MAC结构,提供了更强大的并行处理能力。
(3)功耗低。TMS320VC5510A采用高性能静态CMOS技术,I/O供电电压为3.3V,内核供电电压为1.6V,而且有多种低功耗工作模式,有效地降低了系统功耗。内核静态功耗为0.112mA/MIPS,I/O静态功耗为0.148mA/MIPS。内核动态功耗约为0.628mA /MIPS。
为了增加平台的控制功能和扩充能力,采用了TI公司的微控制器MSP430F149。该芯片是TI公司的一种超低功耗的Flash微控制器,内核为16位RISC CPU。其存储器模块是目前业界所有内部集成Flash存储器产品中能耗最低的一种,具有超低功耗工作模式即活动模式(仅MSP430)且:400?滋 A/MHz,3.0V。MSP430F149可以提供5种工作模式,最低功耗消耗可达1?滋A/MHz;采用IAR开发环境,可以直接进行C语言编程,开发起来方便快捷。
2.2 CODEC与DSP的接口电路设计
由于CODEC(TLV320AIC10)与DSP(TMS320VC5510A)都是TI公司提供的高速芯片,因此二者在速度和时序上可完全匹配,能实现芯片间的无缝连接(二者的连接示意图见图2)。
其中TLV320AIC10的工作时钟由MSP430F149通过内部分频向TLV320AIC10的MCLK提供2.048MHz的时钟作为系统时钟。TLV320AIC10工作在主模式下,向TMS320VC5510A提供串行时钟SCLK和帧同步信号FS。帧同步信号FS由 TLV320AIC10内部256分频后通过FS管脚输出,是脉宽为一个SCLK时钟的8 000Hz正脉冲信号。TLV320AIC10的复位信号由DSP的通用I/O管脚提供,PWRDWN管脚用于控制TLV320AIC10的工作状态:该管脚置低,TLV320AIC10停止工作,处于IDLE状态,达到节省功耗的目的;该管脚置高,TLV320AIC10处于正常工作模式。本例中在该管脚处加了一个上拉电阻,以确保TLV320AIC10处于正常工作状态。
DSP采用McBSP0与TLV320AIC10相连接,该McBSP0通用串口工作在从模式。BCLKR0/BCLKX0分别是通用串口接收和发送的移位时钟,BFSR0/BFSX0分别是接收和发送的帧同步信号,BDR0是接收数据引脚,BDX0是发送数据引脚。接收来的数据可以由帧同步信号触发中断,由中断服务程序进行读写;也可以通过DMA通道直接转换到特定的缓冲区中。
TLV320AIC10的帧可分为主帧和从帧。在主帧中进行采样数据的传输,在从帧中对TLV320AIC10的内部寄存器进行配置。当 TLV320AIC10工作在15+1位模式时,主帧的最后1个位决定主帧之后的下一个帧是从帧还仍然是一个主帧。在TLV320AIC10初始化过程中,通过这种方式对其进行初始化,配置TLV320AIC10内部的4个寄存器。DSP配置TLV320AIC10寄存器的过程如图3所示。
TLV320AIC10 初始化流程图
图3 TLV320AIC10 初始化流程图
DSP主程序配置完TLV320AIC10的内部寄存器以后,会设置相应的中断处理程序,打开相应的中断屏蔽,通过中断服务程序进行语音样点的传输。
来源:维库