16位定点运算DSP TMS320C2XX系列实现语音处理系统的.docx
文本预览下载声明
【Word版本下载可任意编辑】
PAGE
1 - / NUMPAGES 1
16位定点运算DSP TMS320C2XX系列实现语音处理系统的
闪速存储器FLASH是可快速擦写的非易失性存储器,自Intel公司于1988年推出FLASHMemory技术以来就得到了非常迅速的发展。FLASH 的特点是在不加电的情况下能长期保持存储的信息。此外,它还具有不需要存储电容器、集成度更高、制造成本低于DRAM、使用方便、读写灵活、访问速度快、功耗低等特点。我们结合实际课题,在一个以DSP为 的语音处理系统中,从存储容量、存储时间、回放音质等衡量语音处理系统优越性的这些重要指标出发,选用FLASH作片外存储器,实现了语音数据的数字录音和回放,既保证了系统的高性能,又减少了系统成本。 1系统组成 实际系统是一个以DSP为 的总线型网络,每一个单元以TMS320F206数字处理芯片作微处理器,实现语音的传送、录音、存储和播放。框图组成如图1所示。 在系统中,声卡采集的语音数据和从网卡传送过来的数据都可以存入FLASH。由于存储的是数字信息,数据不会丢失和失真,因此也不会引进任何噪声。本系统使用的存储器是两片4M位的FLASH,录音时间长达2分多钟。 2DSP与FLASH的接口电路设计 2.1芯片简介 系统使用的DSP为TMS320C2XX系列,是美国TI公司推出的16位定点运算数字信号处理器。它的性价比极高,目前已成为 单片机的理想替代品,在通信、语音处理、军事、仪器仪表、图像处理等领域得到了广泛的应用。系统使用的存储器是AMD公司生产的FLASH芯片,型号为Am29F040B。其容量为512K×8bit,提供的存储时间有55、70、90、120及150ns几种,因此高速微处理器(如DSP)对其开展操作时基本上不需要等待时间。为防止总线竞争,该器件有独立的片选、写使能与输出使能控制,器件命令集符合JEDEC单电源供电的FLASH标准,用标准微处理器写时序写FLASH命令存放器就可以控制其基本操作。Am29F040B具有省电方式,在FLASH没有被使用时进入此方式可以大大降低功耗。Am29F040B还可以分扇区开展操作,默认划分为8个扇区,每扇区容量64K字节。 2.2接口电路设计 接口电路的设计主要考虑的是存储器地址空间的分配以及写入和读出的时序要求。在系统中?共需要1M地址空间。我们使用了两片FLASH,而DSP的地址线只有16根, 只能提供64K的寻址空间,所以必须分页使用,才能合理分配地址空间。为此,我们将每一片存储空间分成32页,每页16K字节,片A每页地址从#8000h~#0bfffh,片B每页地址从#0c000h~#0ffffh。基于上述分析,DSP与FLASH的接口电路如图2所示。 图中只画出了DSP与一片FLASH的接口电路,因为另一片大同小异,只是通过不同的译码得到不同的片选而已。DSP用D0~D4选择分页,A12~A15通过适当的译码来分配两片FLASH的寻址空间。 3FLASH编程方法 通过把特定的命令或命令序列写入到FLASH命令存放器就可对FLASH实现各种操作。表1给出了有效命令的定义,如果写入的地址和数据值不正确或者写入的顺序不对,则会使器件复位到读阵列数据状态。表中除xxx指任意值外,其它值皆为16进制数,RA指要读出的存储器地址,RD指读出的数据,PA指编程写入存储器的地址,PD指编程写入存储器的数据。编程时,地址在WE#或CE#的下降沿锁定,而数据在WE#或CE#的上升沿锁定,SA指扇区地址。 表1给出了所有操作命令的定义。在本系统中,DSP对FLASH的控制主要用到的是读、刷新和编程操作,下面分别予以说明。 3.1读阵列数据 读操作很简单,只需要一个总线周期,直接把FLASH相应单元的数据读出即可。上电后,器件自动处于读阵列数据状态?在完成刷新和编程操作后,器件也处于读阵列数据状态?给器件写复位命令也可以使器件复位到读阵列数据状态。读操作主要用于回放录音内容。 3.2字节编程命令序列 编程命令要复杂一些,每一个单元的写入都需要四个总线周期。头两个是解锁命令,紧接着是编程建立命令, 才是要写入单元的地址和数据。图3是编程操作的基本流程。 如何判断是否已经正确写入呢?器件内部提供了一个嵌入式编程算法,通过查询DQ7或DQ6位可以得知编程操作状态。嵌入式编程算法完成后,器件自动返回读阵列数据状态,地址不再锁定。字节编程命令是开展录音的根底。这里需要特别指出的是:编程时不能将存储单元的任一位从“0”改成“1”,只有刷新操
显示全部