DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 223|回复: 0
打印 上一主题 下一主题

DSP的声控电子记事本的设计与实现

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-27 14:07:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

                      语音输入方式与手写输入方式相比,具有操作简便、查找方便、识别准确率高等优点。省去了大量的输入时间,降低了信息检索的复杂度。本文所介绍的声控电子记事本系统将语音识别和语音编解码在同一片DSP芯片上实现,用语音方式代替其它方式进行信息输入,提高了系统的灵活性。
  1 系统功能
  可存200张语音名片,每张语音名片包含四条信息:姓名、电话号码、工作单位、备注;声控查找语音名片信息,用户只需口述所要查找人的姓名,即可获得电话号码、工作单位、备注等信息,同时电话号码显示在液晶显示屏上。
  具有双音多频(DTMF)拨号功能,用户用声控查找到电话号码并显示在液晶屏上之后,只需轻触一个拨号键,即可通过普通电话机的话筒实现快速自动拨号。
  数字录音,每段录音加语音标识;声控放音,在放音时只需口述所要语音段的语音标识即可自动找到该段录音并加放,累计录音时间达两个半小时以上。
  具有方便的编辑功能,增加、删除语音名片,增加、删除数字录音段。
  2 系统构成
  本文所介绍的声控电子记事本系统,是在定点16位DSP芯片上实现的,它包含特定人孤立词语音识别算法和代数码本激励线性预测(ACELP)语音编解码算法数(MFCC)为语音特征、以动态时间规划(DTW)为模板匹配算法,对于普通词条,识别率达到了99%以上。用于“录音”功能的ACELP算法是该码率下性能优异的编解码算法,虽然算法复杂度较高,但共重建语音质量的平均主观评测分数(MOS分)达到了4.0,非常接近于压缩前的分数4.3。



  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完成。



  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×8的页面组成。Byte存储区只能通过BDMA方式进行访问。在使用BDMA方式工作时用A0~A13作为低端地址,用D16~D18作为扩展的高端地址,联合使用实现4Mbyte的外部寻址能力。D8~D15作为数据总线,BMS、RD、WR分别用于控制存储器的片选以及读写操作信号。DSP与程序FLASH存储器的接口如图3所示。
  值得提出的是,ADSP2185的开发系统提供了“重载”功能的支持。其基本思路是,当片内RAM(程序RAM或数据RAM)不够用时,可以由主程序将所需子程序动态调入。子程序在程序FLASH存贮器中,在需要运行时才将其调入DSP的RAM区。这样就相当于用软件调入方法扩大了DSP的RAM区。这一性能为本系统的设计提供了方便,这是因为语音识别和编解码程序都较长,不可能同时装入DSP的RAM区。因此,系统软件设计中必须利用这一点进行程序动态输入。
  4 系统软件设计
  本系统采用动态程序调入的办法扩充可利用硬件资源,在一个芯片上实现了几个复杂算法的协同工作;在程序结构上,采用了C语言和汇编语言混合编程,充分利用了DSP的运算速度,并兼顾了程序的灵活性;软件系统采用清晰的层次结构和明确的模块划分,便于局部修改和升级;系统还根据不同功能所规定的各种参数的组合和从属关系精心设计了存储器的数据存储结构,并将数据存储、删除、查找等程序模块做了合理的封装,供上层程序调用。



  4.1 系统软件模块的构成
  系统的软件设计包含MCU软件设计和DSP软件设计两部分。MCU软件主要是时钟日历、电源监测控制、科学计算、键盘扫描、LCD显示驱动、与DSP通信等程序,如图4所示。
  DSP的软件,主要包含五大功能模块:系统基本IO、FALSH管理、语音、G.723.1编码、G.723译码,如图5所示。分为6层,上面3层是C语言编写,用以增强程序的灵活性;下面3层用汇编语言编写,主要是算法、系统设置和外围器件控制。
  5 应用前景
  我们研制成功的声控电子记事本系统,是未来SPDA(Speech Personal Digital Assistant:语音个人数字助理)的雏型。它集成了语音识别、语音压缩编解码、语音信号处理器DSP和大容量FLASH存储器的数据管理等技术,该系统所运用的技术可应用于语音拨号电话机、语音拨号+语音录音电话机、电话机伴侣(语音拨号、报号、答录)、PDA、随声听、语音玩具、声纹锁、语音门户等。
  欢迎转载,信息来自维库电子市场网(www.dzsc.com)
            
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-11-20 14:28 , 耗时 0.266284 秒, 19 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表