基于DSP控制的音频解码系统设计
基于DSP控制的音频解码系统设计
文中提出了基于DSP的音频解码系统的研究与实现这一解决方案。本课题的主要目的是:以TI公司的C5000系列通用型DSP芯片TMS320VC5509为核心,完成系统硬件平台的设计以及MP3的解码算法在该硬件平台上的实现。整个系统的硬件平台包括DSP核心模块、FLASH存储器、音频CODEC,电源等模块。该系统通过USB接口与计算机通信,下载MP3格式的数据流,并将其存储在Flash中,然后由DSP读取Flash中的MP3数据流,完成解码工作,并通过CODEC播放。同时可以对DSP进行其他解码算法的软件编程,实现多种数据流格式的音频解码,具有很强的软件升级灵活性,还解决了低功耗的问题。
本方案采用的
TMS320C55x系列是TI公司推出的继C5000系列C5x、C54x后的新型产品。它采用了增强型的哈佛结构,具有专门的硬件乘法器,使用流水线操作,提供特殊的DSP指令,可用来快速地实现各种数字信号处理算法。为方便实际中的应用,C55X系列DSP具有各自不同的硬件结构,如在片存储器和片上外设等,可根据性价比和不同的应用场合灵活选用。由于采用了高度并行硬件结构、模块化设计,使得C55X系列DSP具有功耗低、速度快等优点。主要用在音频压缩、无线通讯等领域。
音频CODEC芯片采用的是TI公司的TLV320AIC23。它的主要作用是将DSP解码后的PCM音频流通过D/A变换,转换成模拟声音信号进行播放。
TLV320AIC23DSPCodec是德州仪器公司2001年推出的高性能单片立体声编码解码器,数据转换字长16/20/24/32可选,工作电压与TMS320C55xDSP的核心和I/O电乐兼容,可实现与C55xDSP串行口的无缝连接,功耗很低,带有的I2C和SPI总线兼容控制接口能使AIC23编码译码器与其他微处理器共同使用。
其主要特点如下:
1)高性能立体声编码解码器:支持8~96kHz采样频率,90DBADC,100DBDAC转换信噪比,1.42~3.6V内核数字供电电压,2.7~3.6V模拟供电电压均与C55xDSP兼容。
2)可编程多种串行口数据传输标准:支持I2C和SPI串口数据传输模式,均可以与C55xDSP的McBSP口兼容。
3)内置放大的立体声输入输出,耳机放大模块输出。
4)低功耗电源管理:录音重放模式下19mW,备用状态小于150uW,停止状态小于15uW。
AIC23的数字音频接口支持4种数据格式:Right—Justified;Left—Justified;I2S格式;DSP格式。控制接口的SPI模式时序以及数字音频接口的DSP模式时序分别如图6和图7所示。
本方案在LIBMAD的基础上对软件进行设计。MAD是一个开源的高精度MPEG音频解码库,支持MPEG-1(LaverI,LaverII和LaverIII)。LIBMAD提供24-hit的PCM输出,完全是定点计算,非常适合在没有浮点支持的平台上使用。使用LIBMAD提供的一系列API,就可以非常简单地实现MP3数据解码工作。在LIBMAD的源代码文件目录下的mad.h文件中,可以看到绝大部分该库的数据结构和API等。
MP3解码算法比较复杂,并且市面上大部分便携式MP3播放器都采用的是硬件解码器,也就是采用专门的音频解码芯片来实现的,然而随着数字信号处理技术的飞速发展,使得采用通用数字信号处理器实现这一解码算法成为可能,而且存性价比、低功耗和软件升级灵活性上都优于采用硬件解码方案的mp3播放器,成为未来MP3市场的发展方向。