




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录20DSP技术及应用课程设计1 引言12 课程设计题目描述和要求23 总体设计23.1 系统工作原理23.2 器件选择33.3 电源模块33.4 JTAG仿真接口34 详细设计44.1 系统硬件详细设计44.2系统软件详细设计8总 结11致 谢12参 考 文 献13附录:源程序14指导教师评语211 引言信息技术和超大规模集成电路工艺的不断发展,极大地推动了DSP 的发展。DSP 技术的应用领域也越来越广,尤其在音频处理领域。目前,在很多语音处理系统中都用到了语音录放模块,采集现场的声音并存储起来供以后回放。语音处理系统的实时性、功耗、体积、以及对语音信号的保真度都是很影响系统性能的关键因素。本设计采用的高速54x DSP 芯片,最高频率能达到160MIPS,能够很好的解决系统的实时性;采用的数字编解码芯片TLV320AIC23(以下简称AIC23)具有1632 位采样精度,录音回放模式下仅23mW的功耗。因此,该音频编解码芯片与54x DSP 的结合是可移动数字音频录放系统、现场语音采集系统的理想解决方案。经过实验表明,本设计实现的基于定点DSP 的语音录放系统具有如下优点:a)音频数据占用资源少b)声音保真度高c)开发难度低d)语音芯片与DSP 接口电路简单e)体积小2 课程设计题目描述和要求设计一种基于定点DSP的语音录放系统,在DSP芯片TMS320C5416与音频编解码芯片TLV320AIC23上进行硬件接口和软件设计,实现语音信号的采集、播放、存储和回放。3 总体设计3.1 系统工作原理本系统包括音频采集、DSP 对语音信号的处理、键盘控制、液晶屏显示、Nandflash 存储五部分。系统结构如图3-1 所示,DSP 作为主芯片实现各模块之间的通信,其主要工作有:上电自举,读取键盘值并初始化音频编码芯片和液晶屏,通过液晶屏显示AIC23 的工作状态,将音频数字信号存储在Nlandflash 中。图3-1 总体设计图AIC23 的语音信号输入可以是麦克输入也可以是线路输入,这可以通过配置寄存器选择。当能过麦克输入人的说话声时,综合人声的频率、数据量大小的要求,采样频率不需要太高,设定为8KHz 比较合适。实验证明,在这个采样频率下能清晰地采集、回放人的说话声,并且具有较好的保真度。当输入为音乐或歌曲的线路输入时,为了保证音质不失真,采样频率可以设定为96KHz。采样率的选择可以通过初始化时对按键的控制。3.2 器件选择为满足语音信号处理的实时性要求,语音信号采集与处理系统应具有高速数据处理能力本系统采用TMS320VC5416芯片作为信号处理芯片系统采用的主芯片是TI 公司的一款16 位定点DSP:TMS320VC5416(以下简称C5416),主要是考虑到C5416 片内具有128KX16 位的内部RAM,这对提高系统总体性能和集成度有很大的帮助。另外C5416 还具有3 个MCBSP 多通道缓冲串口。该串口与SPI 器件兼容,提供多达128 个发送和接收通道。与其他C54xDSP芯片一样C5416 具有功耗低、运算速率高、性价比高的优点。另外C5416 具有如下特点:当核电压为1.6伏特时的工作频率可达到160 MIPS;能访问64K 数据存储空间、64K I/O 空间、以及192K 程序存储空间。语音编码芯片的选择从适应语音信号频率、满足实时性、降低成本、简化设计的要求出发,本系统选择TLV320AIC23。AIC23工作电压3.3 伏特,能在数字和模拟电压下工作,与TMS320VC5416 的I/O 电压相兼容,其控制接口和数字接口与DSP 的MCBSP 端口能够无缝连接。AIC23的模数转换(ADCs)和数模转换(DACs)部件高度集成在芯片内部,采用了先进的Sigma- delta 过采样技术,可以在8K 到96K 的频率范围内提供16bit、20bit、24bit 和32bit 的采样,ADC 和DAC 的输出信噪比分别可以达到90dB 和100dB。3.3 电源模块VC5416属于低功耗定点芯片,采用双电源供电电源由内核电源(CVdd)和I/O电源(DVdd)两部分构成,其中内核电源为1.8V, IO电源为3.3V内核电源采用1.8V供电可以降低功耗;IO电源采用3.3V供电使得芯片可以直接与外部低压器件接口,而不需要额外的电平转换电路本系统采用TI公司的TPS73HD318(简称HD318)作为电源输入芯片,HD318提供的两路输出电压一路为1.8V、一路为3.3V另外该芯片提供的宽度为200ms的低电平复位脉冲还可以用来作为VC5416的上电复位信号AIC23芯片具有单电源(5V电源)和双电源(3V数字电源+5V模拟电源)两种供电模式,本系统选择双电源供电模式,这样AIC23和VC5416之间就可以直接联接而不需要其它电平转换芯片3.4 JTAG仿真接口 系统由硬件仿真器XDS510/PP通过JTAG仿真接口和计算机相连,用户可以通过此接口向VC5416芯片加载程序并观察芯片内部存储器的数据,完成系统仿真及程序调试的任务如果系统需要以脱机方式工作,可以用JTAG仿真接口将用户程序烧录到Flash Rom中,再通过设置启动方式引脚确定系统从片外ROM启动。4 详细设计4.1 系统硬件详细设计AIC23 有独立的控制接口和数字接口。控制口用于接收控制器的命令字,数据接口与DSP 完成语音数据的交换。AIC23 的工作时钟由外接的一个11.2896M的晶振提供,同时该晶振也为DSP 提供工作时钟。DSP的工作时钟是5 倍频后的时钟:56.488M。VC5416有3个McBSP,可以方便地利用其中2个McBSP完成对AIC23的控制和通信,其中VC5416的McBSP0与AIC23的数据口相连,McBSP1与AIC23的控制口相连AIC23芯片是一个可编程芯片,内部有11个16位寄存器,控制接口具有SPI和I2C工作方式,这两种工作方式由MODE引脚来选择,即:MODE=0为I2C模式;MODE=1为SPI模式本系统用到了利用DSP 的MCBSP0 和MCBSP1,分别与AIC23 的控制和数据接口相连。DSP 与AIC23 的接口电路如图4-1。图4-1 DSP与AIC23的接口电路图4.1.1 TMS320VC5416芯片和TLV320AIC23介绍TMS320VC5416(以下简称VC5416)是TI公司的一款16bit定点高性能DSP,是TMS320VC54x系列中的第3代芯片主要特性有:速率最高达160MI/s;3条16bit数据存储器总线和1条程序存储器总线;1个40bit桶形移位器和2个40bit累加器;1个1717乘法器和1个40bit专用加法器;最大8M16bit的扩展寻址空间,内置128k16bit的RAM和16k16bit的ROM;3个多通道缓冲串口(McBSP);配有PCM3002,可对语音进行 A/D和D/A转换由于VC5416功耗低,性能高,其分开的数据和指令空间使该芯片具有高度的并行操作能力,在单周期内允许指令和数据同时存取,再加上高度优化的指令集,使得该芯片具有很高的运算速度并且该芯片本身具有丰富的片内存储器资源和多种片上外设,因此在工程界得到广泛应用尤其是在语音编码和通信应用方面TLV320AIC23(以下简称AIC23)是TI公司的一款高性能Codec芯片主要特性有:内置耳机输出放大器,支持MIC和LINE IN两种输入方式(二选一),且对输入和输出都具有可编程增益调节;芯片中的A/D转换器和D/A转换器采用多位Sigma-Delta技术,数据传输字长为16、20、24、32bit,采样率为8kHz96kHz;在采样率为96kHz的情况下A/D转换器信噪比达到90dBD/A转换器达到 100dB;回放模式下功率为23mW,省电模式下更是小于15uW;只占用25mm2的面积基于上述优点,AIC23是可移动的数字音频播放和录音使用中的模拟输入输出等应用系统的理想选择,例如MP3播放器等图4-2 TMS320VC5416芯片连接原理图图4-3 TLV320AIC23芯片连接原理图4.1.2 音频控制接口MCBSP1 接AIC23 的控制接口。AIC23 提供SPI和I2C 两种控制接口方式。该器件的模式终端状态(MODE)决定了控制接口的形式。本设计将MODE 引脚接高,选择SPI 方式。AIC23 的控制口主要是为了接收DSP 的控制字,因此这里DSP 的MCBSP1 作为主器件。AIC23 有许多可编程特性,其内部有11 个9 位可编程控制寄存器,DSP 通过MCBSP1 来访问这些控制寄存器。SDIN 为串行数据输入端,它接收DSP 串行数据,数据字长16 位,其中高7 位为地址信息,低9 位为AIC23 的命令字。SCLK 为控制端口串行数据时钟输入, DSP 串口的采样率发生器对CPU 时钟分频后得到串口的发送时钟BCLKX1=225.952KHz,产生的时钟通过SCLK 引脚驱动AIC23。4.1.3 音频数据接口DSP 与AIC23 的数据交换是通过串口0 实现的。其中MCBSP 多通道缓冲串口数据的接收是通过三级缓冲完成的,即引脚DR 上的数据先到达移位寄存器RSR,当收到一个满字之后数据被装载到数据接收寄存器RBR 中,最后数据才被拷贝到接收数据寄存器DRR 中。DSP 通过串口0 接收AIC23 采集的语音数字信号,并且在回放模式下,通过串口将语音信号传送给AIC23。这时音频芯片为主器件,给DSP 提供帧同步和时钟信号。AIC23 芯片与数字系统的接口有右判断模式、左判断模式、I2S 模式和DSP 模式四种数据格式。数字音频接口由时钟信号BCLK、数据信号DIN 和DOUT、同步信号LRCIN 和LRCOUT 组成。由于DSP 的MCBSP接口与该芯片的DSP 模式相兼容,因此该音频模块采用了DSP 模式。现对DSP 模式进行说明。该音频处理模块采用的是DSP 作为从设备,AIC23 为主设备。DSP模式下的数据格式为:发送、接收帧长度为2 个字,每个字长16 位。帧同步信号有效后跟着是两个数据字。 AIC23 作为数据接口的主器件,为DSP 提供发送接收时钟,以及帧同步信号,在帧同步信号的下降沿开始传送数据,左通道数据组成了首先传送的数据字,紧接着传送右通道的数据。传送字长32 位,其中左通道数据16 位,右通道数据16 位。BCLK 在主动方式下是输出,而在从动方式下是输入。在LRCIN 或LRCOUT 的下降沿开始数据传输。DSP 为了接收正确的语音数据,应该将串口的数据格式配置为与AIC23相同。帧同步脉冲高电平有效。接收、发送时钟CLKR、帧同步信号由外部时钟驱动。其中帧同步信号宽度是1 个BCLK 时钟宽度。帧周期为32 个BCLK 时钟。在CLKR 的上升沿,发送或采样接收数据。DSP 模式下的数据传输时序入下:图4-4 DSP模式下的数据传输时序4.1.4 语音数据存储模块 考虑到存储器芯片的容量、系统供电、以及对语音信号的读取速率。本系统采用了具有32MX8 位存储空间的K9F5608 Nandflash。Nandflash 以容量大价格低的优势被广泛应用在便携式设备中。同时Nandflash存储器在写入时需要复杂的操作命令,这样确保了数据写入的正确性。K9F5608 有8 位I/O 端口,地址、命令字以及数据复用这8 位I/O 端口。它采用复杂的操作顺序来区分地址、命令、数据信息。DSP 采集到的32位语音数据通过外部数据总线的低8 位分4 次,从左声道的高8 位到右声道的低8 位依次写入Nandflash。4.1.5 液晶屏显示模块 对于DSP 来讲LCD 是典型的慢速设备,如果仅仅靠设置DSP 等待周期寄存器,在访问外部I/O 时最多只能插入14 个等待周期,这点延时对DSP 来说是远远不够的。因此,需要在DSP 与LCD 之间加入时序控制电路。与Nandflash 模块类似,液晶屏、Nandflash与DSP 的接口电路由CPLD 来完成,液晶屏占用DSP两个I/O 地址,分别是命令和数据地址。DSP 对I/O 空间的操作由地址线、数据线和三根信号线IOSTRB、R/W和IS 来完成。CPLD 根据DSP 给出的读写信号以及地址信号,产生液晶屏的片选、读写信号、以及键盘的扫描信号。4.2 系统软件详细设计 系统的软件开发环境是TI 公司的DSP 集成开发环境CCS 2.0。CCS 提供了软件开发、程序调试和系统仿真环境。CCS 不但能支持汇编语言,而且还支持C/C+语言进行软件开发。CCS 提供的C 编译器能优化代码,提高C 程序的运行效率。系统有两种工作方式,一种是现场采集并播放,即系统采集现场的线路输入信号或麦克语音信号,并存储在NandFlash 中,在采集的过程中,同时通过耳机播出。另一种是播放录制的语音数据,即不采集现场语音信号,直接播放已经存储在NandFlash 中的语音数据。这两种工作方式可以在系统初始化工程时通过按键选择。具体的程序代码段设计主要包括MCBSP 口的配置、AIC23 的初始化、NandFlash 烧写、DSP 上电自举,这四个部分。其中现场采集、播放的流程图如下图4-2:图4-5 系统工作流程4.2.1 MCBSP 的配置5416 提供的MCBSP 口是一种高速、双向、多通道带缓冲的串行接口。它可以与其他C54x DSP 器件、编码器或其他串行接口器件通信。MCBSP 的硬件部分是基于标准串行接口的。MCBSP 的控制模块包括帧同步信号发生器、内部时钟发生器、以及它们的控制电路和多通道选择。与MCBSP 有关的控制寄存器是通过子地址寻址来访问的,它有28 个子寄存器只占用一个DSP 内存地址。MCBSP 的子地址寄存器(SPSA)用来指向这些使用同一个内存地址的寄存器中的某一个。MCBSP 子数据寄存器(SPSDx) 用来访问选中的寄存器。由于配置每个寄存器的代码段相同,首先指定子地址寄存器地址,接着给数据。为了保证程序的简洁与可读性,这里采用调用函数的方法来替代这些重复代码,代码具体实现如下:#define MCBSP1_SET(add,data)MCBSP1_SPSA = add, MCBSP1_SPSD = data /定义一个宏函数,第一个参数add 为子/地址寄存器的地址,data 为子地址寄存器的值MCBSP1_SET( SPCR1, 0x1801) / SPCR1=0x1801MCBSP1_SET( SPCR2, 0x03C1) / SPCR2=0x03C14.2.2 AIC23 的初始化AIC23 具有8 个可编程的内部寄存器,通过软件编程能随时控制AIC23 的采样频率,高、低通滤波器的截止频率,模拟输入及输出的增益。DSP 通过串口1完成对AIC23 的初始化工作。程序中把对AIC23 的初始化命令写在一个数组中,采用循环方式将这些命令通过串口发送出去。codec 10=0x1e00,0x0c00,0x0811,0x0a04,0x0e43,0x102c,0x1201,0x0117,0x05ff, 0x07ff;MCBSP1_DXR1=codeci;4.2.3 DSP 上电自举当软硬件设计工作完成后,需要系统能够脱离PC机独立运行。这就需要将调试好的.out 烧写到外部Flash 中,并要求目标系统上电后可自行启动并执行用户软件代码,这就需要用到DSP 的自举引导(Bootloader)技术。这里采用的是16 位并行Flash 引导方式。使用Hex500.exe 将.out 文件转换成16 进制的自举表文件,通过烧写器将这个自举表文件烧写到flash 中。然而,这种脱机烧写不能烧写贴片封装的芯片,系统的灵活性受到很大的限制。本设计采用了一种新的一次装载程序并烧写的在线烧写方法。用Hex500.exe 生成好自举表文件后,另外跟据Flash 的编程方法,编写烧写代码,并读取自举表文件。在C 程序源码中读取的自举表文件是ASCII 值,因此需要在程序中加一段格式转换代码,将数据转换成二进制文件,并且去掉自举表的表头和表尾。转换时采用一个4 次循环,先读取4 位16 进制数的最高位,把这个ASCII 值转换成二进制数字,将其左移4 位,接着读取次高位。循环4 次便得到了可以直接烧写的数据。系统脱机工时,通过外部并行总线,用DMA 方式将这些代码从数据空间搬移到程序空间中。总 结这次DSP课程设计历时一个星期,在整整一个星期的日子里,可以说是苦多于甜,但是可以学的到很多很多的东西,同时不仅可以巩固以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次设计,进一步加深了对DSP的了解,让我对它有了更加浓厚的兴趣。特别是当每一个进程编写调试成功时,心里特别的开心。我虽然学习过C语言的编程,但一旦将它应用到实际的比较专业的问题上,我所学的知识就变得完全不够用了,为了这次实验我和我的搭档查询了大量的资料,无论是C语言方面的还是压缩算法方面的都让我们花费了很多时间,查询到了需要的资料我们又对它们进行了整理,并且努力去理解其中的知识,使其能为我们所用,用我们已经理解的知识去分析它,并根据我们的实际对它进行一些修改,从而我们才得出我们现在的程序。虽然程序编写成功了但我们在调试上又遇到了很多的问题,比如在CCS环境下我们要如何观察波形,波形有代表什么等等,为此我们又不断的翻阅课件和资料,才最终解决了所有的问题,我们的实验才算基本完成了。总之通过这次的实验,让我认识到了自己的不足,同时又通过这次的实验让我们学到了让我们受用一生的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。总的来说,这次设计的DSP语言录放系统的设计还是比较成功的。致 谢这次DSP课程设计历时一个星期,在整整一个星期的日子里,可以说是苦多于甜,但是可以学的到很多很多的东西,同时不仅可以巩固以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次设计,进一步加深了对DSP的了解,让我对它有了更加浓厚的兴趣。特别是当每一个进程编写调试成功时,心里特别的开心。但是在编写顶层文件的程序时,遇到了不少问题,特别是信号的定义,总是有错误,在细心的检查下,终于找出了错误和警告,排除困难后,程序编译就通过了,心里终于舒了一口气。在波形仿真时,也遇到了一点困难,后来,在数十次的调试之后,才发现是因为输入的时钟信号对于器件的延迟时间来说太短了。经过屡次调试,终于找到了比较合适的输入数值,这样就可以观察到完整的仿真结果。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。最后在老师的辛勤的指导下,终于游逆而解,有点小小的成就感,终于觉得平时所学的知识有了实用的价值,达到了理论与实际相结合的目的,不仅学到了不少知识,而且锻炼了自己的能力,使自己对以后的路有了更加清楚的认识,同时,对未来有了更多的信心。最后,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢!参 考 文 献1 高海林 钱满义 DSP技术及其应用 自编讲义,20052 谭浩强 C程序设计(第二版)清华大学出版社,20033 李颖 李文海 现代通信技术 人民邮电出版社 2002.34 赵勇、甘泉 DSP应用系统设计 电子工业出版社 2002.105 乔瑞萍 TMS320C54X DSP原理及应用 西安电子科技大学出版社 2005.26 戴明祯 TMS320VC54x DSP结构、原理及应用 北京航空航天大学出版社,20017 郝软层 基于DSP芯片的MELP声码器的算法实现 微计算机信息,2006附录:源程序.title ex12BSP.set1;当前使用McBsp1;McBsp 内存映射寄存器SPSA0.set 038hSPSD0.set 039hDRR10.set 021hDRR20.set020hDXR10.set 023hDXR20.set022hSPSA1.set 048hSPSD1 .set 049hDRR11 .set041hDRR21 .set 040hDXR11 .set 043hDXR21 .set042h;McBsp Subaddressed RegistersSPCR1.set00hSPCR2.set01
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025浙江嘉兴南湖嘉禾商务咨询有限公司招聘3人笔试参考题库附带答案详解
- 2025河北保定钞票纸业有限公司人员招聘29人笔试参考题库附带答案详解
- 2025广东中山市三角镇资产经营有限公司招聘管理人员1人笔试参考题库附带答案详解
- 2025年开封市文化旅游投资集团有限公司招聘5人笔试参考题库附带答案详解
- 2025年南京地铁运营有限责任公司秋季招聘笔试参考题库附带答案详解
- 2025天津市今晚网络信息技术股份有限公司招聘40人笔试参考题库附带答案详解
- 2025中国机械工业集团有限公司(国机集团)社会招聘19人笔试参考题库附带答案详解
- 地铁扶梯安全培训课件
- 地球仪的课件
- 河北省廊坊市三河市2024-2025学年八年级上学期期末生物试题(含答案)
- 恒瑞医药简介课件
- 甲午中日战争情景剧
- 石油行业安全培训课件
- 国开电大组织行为学任务四调查报告
- 事业单位医学基础知识名词解释
- 施工现场安全监理危险源清单一览表
- GB/T 233-2000金属材料顶锻试验方法
- FZ/T 74003-2014击剑服
- 颈椎DR摄影技术-
- 功能材料概论-课件
- 一点儿有点儿课件
评论
0/150
提交评论