基于DSP的声控电子记事本系统
本文所介绍的声控电子记事本系统将语音识别和语音编解码在同一片DSP芯片上实现,用语音方式代替其它方式进行信息输入,提高了系统的灵活性。
1 系统功能
可存200张语音名片,每张语音名片包含四条信息:姓名、电话号码、工作单位、备注;声控查找语音名片信息,用户只需口述所要查找人的姓名,即可获得电话号码、工作单位、备注等信息,同时电话号码显示在液晶显示屏上。
具有双音多频(DTMF)拨号功能,用户用声控查找到电话号码并显示在液晶屏上之后,只需轻触一个拨号键,即可通过普通电话机的话筒实现快速自动拨号。
数字录音,每段录音加语音标识;声控放音,在放音时只需口述所要语音段的语音标识即可自动找到该段录音并加放,累计录音时间达两个半小时以上。
具有方便的编辑功能,增加、删除语音名片,增加、删除数字录音段。
2 系统构成
本文所介绍的声控电子记事本系统,是在定点16位DSP芯片上实现的,它包含特定人孤立词语音识别算法和代数码本激励线性预测(ACELP)语音编解码算法数(MFCC)为语音特征、以动态时间规划(DTW)为模板匹配算法,对于普通词条,识别率达到了99%以上。用于“录音”功能的ACELP算法是该码率下性能优异的编解码算法,虽然算法复杂度较高,但共重建语音质量的平均主观评测分数(MOS分)达到了4.0,非常接近于压缩前的分数4.3。
如图1所示,系统由MCU实现总线控制,接受外部键盘输入,并在液晶屏上显示信息。在本系统中,语音充当大部分人机界面的角色,尽量省去复杂的键盘操作,而且用语音提示或语音回放代替一部门液晶文字提示。由于语音要经过DSP处理,所以MCU需要与DSP经常交换信息,以便实现友好的操作界面。
2.1 DSP
DSP(ADSP2185)是整个硬件系统的信号处理中心,完成语音识别、训练、编解码,进行片内RAM及外部FLASH存储芯片的数据管理与调度,并向主控芯片MCU提供简洁的命令与反馈信息。ADSP2185是Analog Devices公司的产品,其主要性能如下:
运算速度为50MIPS,且均为高效的单周期指令。
提供了80Kbyte的片内RAM,其中32Kbyte为数据RAM,48Kbyte为程序RAM。
最大可支持4Mbyte的外部存储区,用于存储数据或程序。
提供对字节存储区(BM)与片内RAM区之间的DMA方式支持。
提供两上可编程、全双工、自动进行收发缓冲区操作的串行口。
2.2 MCU
MCU(KS57C2316)是SAMSUNG公司生产的性价比较高的一种CMOS四位单片机,可以一次性编程,适于小批量生产,被广泛地应用于家用电器的控制,它具有强大的I/O功能。其主要性能如下:
ROM为16K;8 bit;
RAM为512;4 bit
40个I/O引脚
多至16位数字LCD显示 ——32个段,4个公共端引脚 这些性能保证了系统主控能力,而且能够提供灵活的外部接口,适于做进一步的改进和改造。计算器等附加功能可以直接由MCU完成。
2.3 数据FLASH存储器
数据FLASH存储器KM29U64000是SAMSUNG公司的产品,它可在3伏电压下低功耗工作,存贮量大、价位低、速度快、存储数据掉电后可保持而不会丢失。其主要性能指标如下:
存储单元阵列为(8M+256K;8bit;
数据寄存器(512+16;8bit ;
页写入为(512+16)Byte;
块擦除为(8K+256)Byte ;
命令/地址/数据复用I/O端口;
可靠的CMOS Floating-Gate技术,耐受一百万次写入/擦除,数据维持时间为10年,命令寄存器操作
2.4 其它器件
本系统还采用了Analog Devices公司的Codec(A/D、D/A变换器)AD73311L,SST的FLASH存储器SST29LE010(128K%26;#215;8bit)存储DSP程序及运算数据。
3 系统内主要芯片的互连互控
3.1 MCU与DSP
MCU与DSP采用串行口相连,传送MCU对DSP的命令字与DSP对于MCU的反馈字。DSP串口1用于语音输入和输出,串口2用于与MCU相连。由于DSP的串口收发方式与MCU的串口不一致,所以MCU用I/O口模拟串口与DSP相连。为了保证数据传送的稳定性,MCU采用中断方式接收。每次数据传送一般不止一个字节,所以采用打包方式传送。
3.2 DSP与数据FLASH存储器
DSP与数据存储器的接口如图2所示。DSP的数据总线中的8位连到FLASH存储器的总线上;用DSP的读写控制线WR和RD控制FLASH芯片的读写;用DSP的I/O口FL0控制FLASH存贮器的CE(片选)端,以保证DSP在进行其它总线操作时不会对该FLASH芯片产生误操作;用DSP的另一个I/O口PF3连到FLASH芯片的“忙/闲”信号线上,监视其工作状态;分别把两个地址线A8和A9连到FLASH芯片的两个锁存控制CLE和ALE上,以便控制总线的状态。
3.3 DSP与程序FLASH存储器
ADSP2185的Byte存储区是一个8位宽的外部双向存储空间,可用于存储程序与数据。整个Byte存储区的4Mbyte的存储空间由256个16K%26;#215;8的页面组成。B
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)
- 用CPLD实现DSP与PLX9054之间的连接(07-23)
- DSP+FPGA结构在雷达模拟系统中的应用(01-02)