您好,欢迎访问三七文档
1DSP的音频采集、存储与回放摘要DSP是数字信号处理器的缩写,是一种独特的微处理器,是实现数字信号处理技术的硬件支持。是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,转换为0或1的数字信号。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。目前已经处于数字信息产品核心引擎的地位,在图形、图像处理,语音、语言处理,通用信号处理,测量分析,通信等领域发挥越来越重要的作用。本文介绍一种基于TMS320VC5509数字信号处理器(DigitalSignalProcessor,简称DSP)的语音采集与回放系统的总体方案和软硬件设计。文中重点介绍了DSP与音频编解码芯片的接口设计方法以及如何实现音频信号的采集和回放。DSP微处理器(芯片)一般具有如下主要特点:(1)在一个指令周期内可完成一次乘法和一次加法;(2)程序和数据空间分开,可以同时访问指令和数据;(3)片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问;(4)具有低开销或无开销循环及跳转的硬件支持;(5)快速的中断处理和硬件I/O支持;2(6)具有在单周期内操作的多个硬件地址产生器;(7)可以并行执行多个操作;(8)支持流水线操作,使取指、译码和执行等操作可以重叠执行。当然,与通用微处理器相比,DSP微处理器(芯片)的其他通用功能相对较弱些。目录1、系统总体方案.....................................................12、系统硬件电路设计.................................................22.1C5509与音频编解码器的接口设计............................22.1.1C5509与AIC23的控制接口设计..…………………………………….32.1.2C5509与AIC23的数字音频接口设计………………………………….42.2系统的存储器扩展...........................................42.3C5509的电源与时钟电路设计..................................................................................43、系统的软件设计...................................................64、总结.............................................................7参考文献............................................................8系统总体方案3系统框图如图1所示,音源(如麦克风)发出的音频信号经音频处理器的A/D部分转换为数字信号后进人DSP,完成数据的采集工作,由系统的模式识别部分决定对采集的数据进行何种处理(如滤波等),处理后的信号再通过音频编解码器的D/A部分还原为模拟的声音信号送往扬声器输出。4系统硬件电路设计系统的核心芯片选用,rI公司的TMS320VC5509。TMS320VC5509(以下简称C5509)是,rI推出的高性能的定点DSP,是,rI公司55xx系列的代表之一,最高可以运行在144MHz的主频,它是基于TMS320C55xDSP的核,因而具有高效且低功耗的特点,非常适合便携设备使用。C5509采用统一编址的方式来划分存贮空间,程序与数据总线均能对其访问,从而使C5509便于大量数据的处理与程序的优化。C5509片内集成了128K×16Bits的SRAM,并具有外部存储器接口(EMIF:ExternalMemoryInterface),可以与静态随机存储器(SRAM)、只读存储器(ROM)、闪存存储器(FLASH)、同步突发静态存储器(SBSRAM)和同步动态存储器(SDRAM)等器件进行无缝连接。与C5502和C5510等相比,C5509具有更加丰富的片内外设。C5509具有以下的外设:1个通用串行总线(USB)接口、2个多媒体卡控制器(MMC/SD)的标准接口、1个I2C总线接口、3个多通道缓冲串口(McBSP)、1个实时时钟(RTC)接口等。这些特点使得设计出来的系统具有很高的扩展性,也使得C5509非常适合于MP3等音频处理的便携设备的开发。2.1C5509与音频编解码器的接口设计系统中的音频编解码器选用,TI公司的TLV320AIC23。TLV320AIC23(以下简称AIC23)是,TI公司推出的一款高性能的立体声音频编解码(Codec)芯片,芯片内置了耳机输出放大器,并支持MIC和LINEIN两种输入方式(二选一),且对输入和输出都有可编程增益调节。AIC23的模数转(ADC)和数模转换(DAC)部件集成在芯片内部,采用了先进的Sigma—delta过采样技术,可以在8kHz到96kHz的频率范围内提供16bit、20bit、24bit和32bit的采样,ADC和DAC的输出信5噪比分别可以达到90dB和100dB。与此同时,AIC23还具有很低的能耗,回放模式下功率仅为23roW,省电模式下更是小于15w。由于具有上述优点,使得AIC23是一款非常理想的音频模拟l/O器件,可以很好的应用在随声听(如CD,MP3等)、录音机等数字音频领域。AIC23与C5509的接口有两个,一个是控制接口,用于设置AIC23的工作参数;另一个是数字音频接口,用于将经AIC23的ADC转换后的音频数据送往C5509,或者接收C5509来的送往AIC23的DAC转换的音频数据。2.1.1C5509与AIC23的控制接口设计AIC23的控制接口有两种工作方式,分别为2线制的I2c方式和3线制的SPI方式。在SPI方式下,SDIN携带串行的数据,SCLK是串行的时钟,片选信号cs有效时锁存数据。由于也是同步串口,所以可以通过配置C5509的一个多通道缓冲串口(McBSP)为SPI模式即可与之无缝连接。这时,多通道缓冲串口(McBSP)的帧信号连接AIC23的控制接口(SPI方式)的片选信号、数据信号和时钟信号与AIC23的控制接口(SPI方式)一一对应。这种连接只需设置多通道缓冲串口(McBSP)的寄存器,使用简单可靠,但是要占用一个多通道缓冲串口。在I2C方式下,SDIN携带串行的数据,SCLK是串行的时钟,数据6传输完全符合I2c规范,起始条件是当SCLK为高时,SDIN由高变低。起始条件后的7位地址表明I2c总线上哪个器件接收数据,fL/w表明数据传送方向。如果fL/w为0,则表明AIC23为接收数据。AIC23的地址由片选引脚cs的状态来决定。数据传输的停止条件是当SCLK为高时,SDIN由低变高。i2C方式下数据传输的时序如图3所示。2.1.2C5509与AIC23的数字音频接口设计AIC23芯片与数字系统的数字音频接口有右判断模式、左判断模式、IS模式和DSP模式四种。这四种数据传送模式都是从最高位(MSB)开始,字长范围从16bits到32bits(除了在右判断模式下不支持32bits外)。数字音频接口由时钟信号BCLK、数据信号DIN和DOUT、同步信号LRCIN和LRCOUT组成。注意,BCLK在主动方式下是输出,而在从动方式下是输入。四种模式中的DSP模式是专门设计用来与TI公司的DSP的多通道缓冲串口(McBSP)相兼容,因此,在设计中被采用。此时,AIC23的LRCIN与LR—COUT引脚必须与McBSP的帧同步信号相连接。在LRCIN或LRCOUT的下降沿开始数据传输。左通道数据组成了首先传送的数据字,紧接着传送右通道的数据。传送字长由IWL寄存器决定。2.2系统的存储器扩展7DSP芯片的片内存储器是比较有限的,因此一般的DSP系统都要进行存储器外扩。存储器外扩主要包括两部分:SDRAM和FLASH。其中SDRAM主要用来存储程序运行过程中的数据,在本系统中主要用来存放处理前后的音频数据;FLASH主要用来固化编译链接后生成的应用程序。系统中的SDRAM选用MT48LCIM16A,接在C5509外部存储器接口的CE0空间。根据C5509的EMIF接口的特点,SDRAM的工作频率为CPU主时钟的一半,主时钟144MHz时,SDRAM的工作频为72MHz。在使用SDRAM之前,C5509还需要对EMIF进行设置,其配置过程如下:(1)设置寄存器EBSR,将外部总线设为全EMIF工作模式。(2)设置寄存器CE0,选择SDRAM容量的大小,数据的宽度,刷新的方式。(3)设置有关时序的相关寄存器,包括SDC1、系统中的FLASH选用的是AM29LV800,接在C5509的外部存储器接口的CE1空间。C5509与SDRAM、FLASH等的具体连线可见参考文献。2.3C5509的电源与时钟电路设计C5509采用了双电源供电机制,以获得更好的电源性能,其工作电压为3.3V和1.6V。其中,1.6V主要为该器件的内部逻辑提供电压,包括CPU和其他所有的外设逻辑。与3.3V供电相比,1.6V供电可以大大降低功耗。外部接口引脚仍然采用3.3V电压,便于连接与外部低压器件接口,而无需额外的电平变换电路。设计中电源芯片我们采用的是TI公司的TPS73HD301(简称HD301)双电源输出芯片。HD301的输出电压为一路3.3V,另一路为可调输出(1.2V一9.75V)。具体的连接电路见参考文献[7]。系统的时钟部分设计是利用DSP芯片内部所提供的晶振电路,在DSP芯片的xl和X2/CLKIN之间连接一晶振可启动内部振荡器。8系统的软件设计在系统软件部分,首先通过写相关的寄存器来对C5509和AIC23进行初始化,然后就可以根据模式识别部分的状态进行音频数据的采集、回放和录音。整个系统的程序流程如图4所示。采用C语言编程的主函数如下:voidmain(){CLK_Init();//系统时钟初始化SDRAM—Init();//外扩SDRAM初始化I2C_Init();//5509的12C模块初始化9AIC23一Init();//通过12C对AIC23的寄存器进行配置McBSPO—Init();//初始化5509的多通道缓冲串口0AIC23一Mixer();//音频采集和回放}总结该技术基于DSP技术,音源(如麦克风)发出的音频信号经音频处理器的A/D部分转换为数字信号后进人DSP,完成数据的采集工作,由系统的模式识别部分决定对采集的数据进行何种处理(如滤波等),处理后的信号再通过音频编解码器的D/A部分还原为模拟的声音信号送往扬声器输出。实践证明,该语音采集系统设计简单,工作性能良好,运行稳定可靠,具备一定的实用价值。
本文标题:dsp期末考试论文
链接地址:https://www.777doc.com/doc-2871113 .html