logo资料库

基于TMS320C5416芯片的语音采集和回放控制系统设计.pdf

第1页 / 共5页
第2页 / 共5页
第3页 / 共5页
第4页 / 共5页
第5页 / 共5页
资料共5页,全文预览结束
基于 TMS320C5416 芯片的语音采集和回放控制系统 设计 http://www.paper.edu.cn 苑方丞 1,罗建文 2,黄碧媛 1 1 华东交通大学 电气与电子工程学院,南昌(330013) 2 华东交通大学 土木建筑学院,南昌(330013) E-mail:yfc714@yahoo.com.cn 摘 要:本文主要介绍了以 TI 公司的 DSP 芯片 TMS320C5416 为核心的语音采集和回放的 控制系统,结合了外围的单片机、FLASH2808 存储器和语音芯片 TLV320AIC23。在此硬件 基础上实现语音信号的采集、播放、存储、回放。硬件方面主要是对于各主要芯片进行介绍 并讨论了 DSP 芯片 TMS320VC5416 与音频编解码芯片 TLV320AIC23 和单片机的硬件接口 和软件设计。软件方面总结了在 TMS320c54x DSP 上进行软件开发的流程,重点说明了 CMD 文件和中断向量表文件的编写方法,以及编写了 MCBSP 初始化程序和 DSP 的上电自举, 接着就是对其调试及其结论进行分析,通过实际运行结果表明,实现了模拟语音信号的采集、 数字化、编码,完成信号处理和回放。 关键词:DSP;语音采集芯片;接口设计 1. 引言 随着信息社会多媒体信息的急剧增长,信息社会已经进入了数字化时代 目前,采用 模拟的方法已经无法适应语音信号处理研究向纵深发展的要求,采用数字技术进行处理已经 成为主流。数字信号处理技术已成为数字化社会最重要的技术之一,其是信息技术中的一个 核心问题。实现数字信号处理的核心是数字信号处理器(DSP)。信息技术和超大规模集成 电路工艺的不断发展,极大地推动了 DSP 的发展。DSP 技术的应用领域也越来越广,尤其 在音频处理领域。目前.在很多语音处理系统中都用到了语音录放模块。采集现场的声音并 存储起来供以后回放。语音处理系统的实时性、功耗、体积、以及对语音信号的保真度都是 很影响系统性能的关键因素。基于 DSP 的语音处理系统是未来语音处理系统的主流,具有 良好的应用前景和市场前景。 2. 系统硬件设计和实现 2.1 系统的硬件整体框图 系统的工作流程如下: 当系统工作时,语音信号通过话筒传给 TLV320AIC23,经其进行采样和 A/D 转换后,此 时得到了 8kHz 采样 16bits 的数字语音信号传递给 DSP 芯片 TMS320C5416,再通过单片机 89C51RD 存储到 FLASH2808 中;PC 机通过 DSP 的开发环境进行编程,通过以太网卡将程 序下载到 DSP 板中,然后 DSP 将 FLASH2808 中的数字语音信号进行处理[1]。扩展的 FLASH 芯片在系统中作为数据区使用,保存程序代码。FLASH 的掉电保护作用,保证系统代码的 完整性和安全性,同时 FLASH 芯片还可在线进行擦除、写入操作,使得系统更易于软件编 程。FLASH 芯片内 SRAM 作为程序空间使用,在程序启动阶段,FLASH 芯片内部的程序 源代码和固定数据,被系统启动程序 Bootloader 搬移到外部程序区(即 SRAM)内,高速运行。 监控电路的主要功能是监控程序的正常运行,在程序失控跑飞的情况下,它可以使得系统总 复位,恢复正常运行。 - 1 -
计算机系统 以太网卡 DSP 芯片 TMS320C5416 语音采集卡 TLV320AIC23 http://www.paper.edu.cn FLASH2808 单片机 89C51RD 图 2-1 系统硬件框图 话筒 耳机 反之,当语音数字信号经由网络传送来的程序处理后,通过语音采集卡 TLV320AIC23 经过 D/A 转换后,然后通过耳机进行播放出来,其工作过程和声音采集的过程是相反[2]。 2.2 语音芯片接口设计 AIC23 有独立的控制接口和数字接口。控制口用于接收控制器的命令字,数据接口与 DSP 完成语音数据的交换。 1、音频控制接口 由上节语音芯片介绍可知,AIC23 提供三线制的 SPI 和两线制的 IIC 两种控制接口方式。 本设计将 MODE 引脚接高,该器件的模式终端状态(MODE)决定了控制接口的形式。AIC23 的控制口主要是为了接收单片机 89C51 的控制字。因此这里单片机作为主器件。 在 SPI 模式中,SDIN 传输串行数据,SCLK 作为串行时钟,CS 把数据字锁存进 AIC23。 一个控制字包括 16 位,以高有效位开始,数据位在 SCLK 的上升沿被锁存,16 个时钟 的上升沿后 CS 的上升沿将数据字锁存入 AIC23。每个控制字分为两部分,第一部分是地址 块,第二部分是数据块。 2、音频数据接口 选用 DSP 模式,在 DSP 模式中,该音频处理模块采用的是 DSP 作为从设备。AIC23 为主设备。DSP 模式下的数据格式为:发送、接收帧长度为 2 个字,每个字长 16 位。帧同 步信号有效后跟着是两个数据字[3]。 AIC23 作为数据接口的主器件,为 DSP 提供发送接收时钟。以及帧同步信号,在帧同 步信号的下降沿开始传送数据。左通道数据组成了首先传送的数据字,紧接着传送右通道的 数据。传送字长 32 位,其中左通道数据 16 位,右通道数据 16 位。BCLK 在主动方式下是 输出。而在从动方式下是输入。在 LRCIN 或 LRCOUT 的下降沿开始数据传输。DSP 为了 接收正确的语音数据。应该将串口的数据格式配置为与 AIC23 相同。帧同步脉冲高电平有 效。接收、发送时钟 CLKR、帧同步信号由外部时钟驱动。其中帧同步信号宽度是 1 个 BCLK 时钟宽度。帧周期为 32 个 BCLK 时钟。在 CLKR 的上升沿.发送或采样接收数据。 在帧同步信号(LRCIN/LRCOUT)作用下,串行口先传送左声道数据,然后再传送右 声道数据,C5416 的 MCBSP 口每接收一个字内部就会自动产生一个中断信号,通知 DSP 保存数据,为下一步数据处理做好准备,同时 DSP 通过 MCBSP 口向 AIC23 发送数据,经 过 D/A 转换就可以回放声音。 - 2 -
http://www.paper.edu.cn 3. 系统软件设计和实现 3.1 系统的软件整体框图 在任何系统中,硬件只是一个平台,提供了一个系统工作的外部环境,真正起决定性作 用的还是软件。对本语音处理系统而言,软件部分起着至关重要的作用。而其中的重中之重, 本设计的系统是现场采集并播放,即系统采集现场的话筒输入信号,并存储在 FLASH2808 中,在采集的过程中,同时通过耳机播放出来。具体的程序设计主要包括 MCBSP 口的配置、 AIC23 的初始化、FLASH2808 的烧写、DSP 上电自举这四个部分[4]。整个软件设计框图如 图 3-1 所示: DSP 初始化 语音 初始化音频芯片 烧写 FLASH2808 麦克输入 播放语音信号 语音信号的采集 图 3-1 系统工作流程图 3.2 McBSP 的初始化配置 C5416 提供的 MCBSP 口是一种高速、双向、多通道带缓冲的串行接口。其内部有三组 结构相同的 McBSP,分别为 McBSP0、McBSP1、McBSP2。McBSP 接收和发送数据的过程如 下:在发送数据时,首先将要发送的数据送到数据发送寄存器 DXR,此时若发送移位寄存 器 XSR 为空,则将 DXR 中的数据拷贝到 XSR 中,然后在帧同步 FSX 和时钟 CLKX 的作用 下,将 XSR 寄存器的数据逐位移到 DX 引脚并输出。在数据从 DXR 寄存器拷贝到 XSR 后, 就可以将下一个要发送的数据写到 DXR 寄存器中,从而保证数据的连续发送。串口接收数 据的过程与发送基本类似,数据依次经过接收移位寄存器 RSR、接收缓存寄存器 RBR 和数 据接收寄存器 DRR,最后通过串口进行接收[6]。 要完成串口 McBSP 数据的接收和发送,则必需对串口 MCBSP 进行串口配置,串口初 始化的主要工作是:设置 CLKSTP,使能 McBSP 的时钟停止模式;设置 CLKXP、CLKXM, 定义 BCLKx 的输出和极性;设置 RWDLEN1 和 XWDLEN1,定义接收和发送数据包的长 度;设置 CLKGDV,定义采样率发生器的降频因子:设置 XDATALY 和 RDATALY,提供 正确的 BFSX 信号启动时间等。 为了保证程序的简洁与可读性。这里采用调用函数的方法来替代这些重复代码,代码具 体实现如下:#define MCBSP1_SET(add,data) MCBSP1_SPSA = add,MCBSP1_SPSD =data //定义一个宏函数,第一个参数 add 为 子地址寄存器的地址.data 为子地址寄存器的值 MCBSP1_ SET(SPCR1,0xl801)//SPCRl=0xl 801 MCBSP1_ SET(SPCR2,0x03C 1)//SPCR2=0x03C1 - 3 -
http://www.paper.edu.cn 3.3 DSP 上电自举 当软硬件设计工作完成后,需要系统能够脱离 PC 机独立运行。这就需要将调试好的.out 烧写到外部 Flash 中。并要求目标系统上电后可自行启动并执行用户软件代码,这就需要用 到 DSP 的自举引导(Bootloader)技术[7]。这里采用的是 16 位并行 Flash 引导方式。使用 Hex500.exe 将.out 文件转换成 16 进制的自举表文件,通过烧写器将这个自举表文件烧写到 flash 中。然而,这种脱机烧写不能烧写贴片封装的芯片.系统的灵活性受到很大的限制。本 设计采用了一种新的一次装载程序并烧写的在线烧写方法。用 Hex500.exe 生成好自举表文 件后。另外跟据 Flash 的编程方法编写烧写代码,并读取自举表文件。在 C 程序源码中读取 的自举表文件是 ASCII 值,因此需要在程序中加一段格式转换代码,将数据转换成二进制 文件,并且去掉自举表的表头和表尾。转换时采用一个 4 次循环,先读取 4 位 16 进制数的 最高位,把这个 ASCII 值转换成二进制数字将其左移 4 位,接着读取次高位。循环 4 次便 得到了可以直接烧写的数据。系统脱机工时,通过外部并行总线通过串口将这些代码从数据 空间搬移到程序空间中。 本设计中选择 FLASH 芯片作为非易失存储器保存程序代码,主要考虑了它的设计简便, 可以在线擦除、读写,且具有很高的代码保护性;同时采用 FLASH 保存代码,也可以满足 Bootloader 所要求的 Boot 检测设置;采用 FLASH 的非易失特性,可以保证系统的独立性, 使用时,不需要外部的介入,可以独立工作。综合考虑 Bootloader 的方式和系统的使用情况, 本系统采用了 16 位并行 Boot 模式。 DSP 在启动时,为适应各种 Boot 方式,Boot 程序使用一个特定的顺序,来依次检测各 种 Boot 方式,直到符合某一条件,确定为某一种启动方式,然后开始 Boot 加载操作。 4. 结论 本文首先分析了 TI 公司的 TMS320C54X DSP 体系结构,并简单的将它同通用处理器进 行了对比。C54X 是 TI 公司推出的 16 位定点 DSP,针对数字信号处理的特点,它从硬件运 算单元、总线结构、存储器管理、指令系统等方面进行了全面的优化。专用的硬件运算单元、 多总线结构是 C54X 系列 DSP 的最大特色。然后,本文提出了一个语音信号采集与处理系 统的硬件平台构建方案,分析其中的几个主要硬件模块,包括存储器 FLASH2808 模块、DSP 芯片 TMS320C5416 模块、语音采集卡 TLV320AIC23 模块、单片机 89C51RD 模块。接着, 就是对于模块之间的硬件的连接进行详细的分析及论述,总结了在 TMS320C54X DSP 硬件 平台上使用 C 语言进行软件开发的流程,并设计了两个底层软件模块,HPI 串口收发程序和 A/D,D/A 程序。 参考文献 [1]姚天任,数字语音处理[M],华中理工大学出版社,1992 [2]易克初,语音信号处理[M],国防工业出版社,2000 [3]胡广书,数字信号处理:理论算法与实现[M],清华大学出版社,1997 [4]张雄伟等,DSP 芯片的原理与开发(第二版) [M],电子工业出版社,2000 [5]张雄伟等,DSP 集成开发与应用实例[M],电子工业出版社,2002 [6]戴明祯,TMS320c54X 结构、原理及应用[M],北京航空航天大学出版社,2001 [7]刘益成,TMS324c54xDSP 应用程序设计与开发[M],北京航空航天大学出版社,2002 - 4 -
http://www.paper.edu.cn Based on DSP chip 5416 control system design Yuan Fangcheng, ,Luojianweng ,Wang Xun East China JiaoTong University , Nanchang(330013) Abstract This article mainly introduced take TI Corporation's DSP chip TMS320C5416 as core pronunciation gathering and the playbacking control system, unified the periphery monolithic integrated circuit, the FLASH2808 memory and pronunciation chip TLV320AIC23. Realizes pronunciation signal gathering, the broadcast, the memory, playbacking in this hardware foundation. The hardware aspect mainly was enters the expert regarding each main chip few and discussed DSP chip TMS320VC5416 and the audio frequency arranges decoding chip TLV320AIC23 and the monolithic integrated circuit hardware connection . The software aspect summarized has carried on the flow on TMS320c54x DSP which the software developed, Explained with emphasis the CMD document and the interrupt to the meter document compilation method, as well as has compiled the MCBSP initialization routine and the DSP on electricity from lifts, Then is carries on the analysis to its debugging and the conclusion, indicated through the actual movement result, has realized simulation pronunciation signal gathering, the digitization, the code, completes the signal processing and playbacking. Keywords: DSP;Voice Chip; Interface Design - 5 -
分享到:
收藏