全数字化语言教学实验室学生机单元的设计

发布时间:2010-12-18 17:23    发布者:conniede
关键词: dsp , Flash , MSM6588 , 存储器
由于语言教学实验室对语言教学产生着十分重大的影响和作用,是外语教学改革和提高外语教学质量的制高点和突破口,因而语音教学实验室得到了空间的发展和利用。我国现有的语言教学实验室产品大都属于模拟型语言教学实验室,然而面对信息时代的到来,高新技术的发展,语言教学实验室了适应未来教育的需要,必须寻求新的发展。而要解决传统语音教学实验室面临的问题必须引入数字化的设计,这主要包括以下四方面的内容:一是学生机中微控制器选择;二是语音信号的采集和播放;三是语音信号的存储,也就是数字录音机的功能实现;四是语音信号的网络化传播。

TMS320F206是美国TI(德州仪器)公司继TMS320C2X和TMS320C5X之后推出的一种低价格、高性能的16位定点运算DSP,其CPU接近于TMS320C25,但时钟速率提高、指令集更加丰富和优化、片内外设向TMS320C5X靠拢[1]。TMS320F206(以下简称F206)的性价比较高,目前已成为高档单片机理想替代品,在通信、语音/语言、军事、仪器仪表、图像处理、工业控制等领域得到了广泛应用。本文就是用F206对MSM6588语音芯片进行录音、放间控制,用FLASH存储器AM29F040B进行语音数据存储,用差分线驱动器和接收器SN75LBC180在RS-485总线网络上传输语音数据,从而满足全数字化语言教学实验室对学生机提出的上述要求的。图1示出了该语音系统的结构简图。



1 语音录放电路


语音芯片MSM6588是日本OKI公司的产品,内含话简放大器、低通滤波器(LPF)、12位A/D和D/A转换器,语音数据的处理采用ADPCM(自适应差分脉冲编码模式)方式[2]。语音芯片主时钟频率确定后,可用DSP通过软件输入控制字来设定采样频率。采样频率设定越高,放间的品质越好,录间的时间就越短。表1给出了MSM6588语音芯片的常用控制命令。

表1 MSM6588的控制命令表
命  令第1个4位命令
D3  D2  D1  D0
第二个4位命令
D3  D2  D1  D0
命令的功能
NOP0   0   0   0     -1个4位命令,空操作
SAMP0   1   1   0-   -  A1  A02个4位命令,A1、A0可设定4种采样频率
VDS1   1   0   0-   B  -   -2个4位命令,B=0表示3位ADPCM,B1表示4位ADPCM
PLAY0   0   1   0     -1个4位命令,播放
REC0   0   1   1     -1个4位命令,记录
STOP0   1   0   1     -1个4位命令,停止记录/播放
PAUSE0   0   0   1     -1个4位命令,暂时停止记录/播放
EXT1   0   1   1     -1个4位命令,启动记录/播放

U3是总线收发器,用来隔离和驱动DSP的数据线。MSM6588左边的模拟电路用来放大从麦克风给拾取的微弱电信号,左边的模拟电路是功率放大部分,U5即TPA302是音频功率放大器,可驱动32Ω耳机。

2 语音存储电路

由于语音芯片内无存储器,必须外挂存储器。可采用的存储器很多,如SRAM、PSRAM、DRAM、SDRAM、FLASH等。本方案采用的是AMD公司生产的AM29F040B,它的存储容量为512KB,使用单5V电源进行按扇区的擦除和按字节的写放操作。AM29F040B的非易失性可使语音数据在掉电后不会丢失,它的闪速存储器能可提高语音数据的采样频率,从而提高放间的品质。当采样频率设定为5.86kHz时,录音/放音时间为174.744s。

AM29F040B的引脚输出与工业标准的EPROM、E2PROM完全兼容,在电路设计时非常方便。图3示出F206与AM29F040B的接口电路。AM29F040B地址线有19根,设计F206与其接口的关键是将AM29F040B的高位地址线(图3中为A14、A15、A16、A17和A18,可根据分页的多少和页面大小而定)通过八D锁存器74HC574的输出保持,其余地址线直接连到F206的地址总线上。该接口电路将512KB的数据空间分成32页,每页16KB。这16KB的空间被定位在F206数据空间的哪一个范围则由信号线/CSFLASH决定。在对FLASH操作时,先要通过74HC574选择页面,然后便可对当前页面的16KB数据空间读写。



与静态RAM不同,对FLASH的操作是通过一系列命令来实现的。表2给出不AM29F040B的主要命令定义(其中XXX表示任意地址。RA表示要读的存储地址,RD表示要读的数据;PA表示编程地址,PD表示编程数据;SA表示扇区地址A18~A16)。从表2可以看出,读FLASH只需要1个时钟周期,而写入一个字节则需要4个时钟周期,因此FLASH的读写速度比SRAM慢。但FLASH比相同容量的SRAM便宜得多,工作可靠性高,因而FLASH非常适用于需要大容量、非易失性、重复编程存储的场合。

表2 AM29F040B的主要命令
命令描述时钟周期总线周期
123456
地址数据地址数据地址数据地址数据地址数据地址数据
1RARD          
复位1XXXF0          
编程4555AA2AA55555A0PAPD    
片擦除6555AA2AA5555580555AA2AA5555510
扇区擦除6555AA2AA5555580555AA2AA55SA30

3 语音传输网络

由于F206的片内异步串口(ASP)可以以高达2.5Mbit/s的传送速率进行全双工发送和接收操作,而且在所有方式下发送和接收数据都为双缓冲,故可利用ASP外接差分线驱动器和接收器SN75LBC180构成RS-485总线网络,将所有的学生机节点和教师机连成主从式网络结构。图4给出不F206与SN75LBC180的接口电路。SN75LBC180与F206接口的4根信号线是RX、TX、IO0及IO1,由于在图2中已给出不F206的所有管脚,这里就不再画出DSP不。其中IO0连接到SN75LBC180的接收数据控制引脚/RE,IO1接到SN75LBC180的发送数据控制引脚DE,数据的接收和发送就是靠IO0和IO1的电平高低来控制的。SN75LBC180的总线互连部分只画出不差分接收的电路,差分发送电路与接收电路相同,故没有在电路中示出。由于RS-485的通信载体是双绞线,它的特性阻抗是120Ω,所以在RS-485的网络传输线的始端和末端各接1只120Ω的匹配电阻R3,以减少线路上传输信号的反射。SN75LBC180的A、B输入端接上拉、下拉电阻R1、R2是为不防止F206被误中断而收到乱字符;R4、R5可使本机的硬件故障不影响整个总线的通信;稳压管D1、D2组成吸收回路以抵抗传输线上的各种干扰,用来保护RS-485总线。



4 软件设计简述


该语音教学系统中的学生机单元的软件框架见图5。软件设计的核心是协调各中断(从主机来的串口接收中断、从语音芯片MSM6588来的采样中断和播放中断以及从键盘来的中断)之间的逻辑关系。学生机的主要任务是:在播放的时候,既要保证接收数据完整,又要保证语音播放不间断;在寻间的时候,既要保证采样连续,又要保证完整地发送数据包。本程序采用双缓冲技术来解决这些剖,即在播放时,接收一个数据包到一个缓存区,同时播放另一个缓存区中的数据包;录音时,采样一个缓存区,同时发送另一个缓存区中的数据包。

本文地址:https://www.eechina.com/thread-47051-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表