JournalofSichuanUniversity(NaturalScienceEdition)Apr.1998Vol.35 No.2基于ADPCM编码的语音录放系统开发平台
(计算机科学系)
苟大举杨启刚 贺德珏 杨家沅
(计算机中心)
摘要 介绍了基于ADPCM编码的语音录放开发平台的硬件和软件设计及系统功能,讨论了专用语音重放系统的设计考虑,给出了应用系统设计实例.
关键词 语音信号处理,语音编码,接口技术中图法分类号 TH73
把语音生成技术用于工业监控系统、自动应答系统、多媒体查询系统、智能化仪表、办公自
动化系统或家用电气产品中,使它们具有语音输出功能,使之能在适当的时候用语音实时报告系统的工作状态、警告信息、提示信息或相关的解释说明等,无疑在提高人机通信能力、减少对错误处理的遗漏、提高系统性能、降低人们的工作强度等方面都有好处.
语音信号是一种具有短时平稳性的非平稳随机过程,其相邻样点间有着很强的相关性[1].利用语音信号的这些特点,采用自适应量化和自适应预测技术对语音信号进行编码,可以在较低的数据率情况下,获得较高质量的重构语音.语音信号的自适应差分脉冲编码调制,即AD2PCM(AdaptiveDifferentialPulseCodeModulation)就是基于这种思想对语音波形进行编码的技术.ADPCM编码原理如图1示.
图1 ADPCM编码原理框图
基于ADPCM编码原理,CC1TT先后推荐了可广泛用于数字语音通信的6.72132kbps,G.72324kbps,G.72616kbpsADPCM标准.用32kbpsADPCM标准对语音信号进行编码,重构语音的质量十分接近CCITTG.711标准A2.按照语音音质主观评Law或Λ2Law64kbps的语音质量定方法,其平均意见得分(MOS2MeanOpinionScore)高达4.1.同样,24kbps和16kbpsADPCM语音质量的MOS得分也约为4.0,达到网络等级语音质量.实际上CC1TT推荐的上述标准
本文于1997年7月8日收到
第2期 苟大举等:基于ADPCM编码的语音录放系统开发平台179
或算法是一个代码转换系统,它使用ADPCM算法实现64kbpsA2Law或Λ2LawPCM和相应的ADPCM码率间的转换.目前已有不少厂家生产出了合符CC1TT推荐算法的编解码集成电路芯片,可以利用它们构成高音质低数据率的语音录放系统.
我们介绍的基于ADPCM编码的语音开发系统或开发平台能提供从语音输入、编码、数据编辑、语音重放、文件保存及数据组织等多项服务功能.经开发系统组织好的语音数据,可直接写入EPROM中供应用系统使用.这样便克服了在应用系统开发过程中由于开发工具的缺乏所造成的各种困难.开发系统的研制,不仅给应用系统的开发提供有力的技术支持,而且也为语音处理提供一个良好的工作平台.
我们的目的是设计一个使用灵活方便、功能齐全、通用性好的语音开发系统,以满足不同的需要.研制出的开发系统由可插入微机ISA总线的接口插件板和系统程序组成.1 系统硬件设计
语音开发系统的硬件部分是一块ISA总线的插件板,它主要由ADPCM编解码器、PCM编解码器以及相关的时序电路、接口电路和模拟电路组成.在开发系统中我们选用MO2TOROLA公司研制生产的ADPCM编解码芯片MC145532(16引脚)和PCM编解码芯片MC145567(20引脚).
1.1 ADPCM编解码器MC145532
MC145532所采用的对音频信号的压缩编码及解码方法完全符合CCITT的G.721,G.723,G.726方案和美国ANSIT1.30121987,T1.30321988建议.在全双工单通道工作方式时,
它能将16kbps,24kbps,32kbps的ADPCM编码数据变换成64kbpsPCM数据(Λ2Law或A2Law),同时也能将64kbpsPCM(Λ2Law或A2Law)数据转换成16kbps,24kbps,32kbps的.其串行数据率可在64kbps到5.12.芯片MC145532的内部ADPCM编码数据Mbps间选取
结构框图如图2所示.
图2 MC145532结构框图
在从PCM到ADPCM编码方式方向上,接入EDI(EncoderDataInput)的串行PCM数据,根据EDC(EncoderDataClock)和EIE(EncoderInputEnable)时序,按指定的工作模式和数据率,经数字信号处理器(DSP)变换编码,传送到输出移位寄存器(S2REG),在EOE(En2.coderOutputEnable)的控制下,从EDO(EncoderDataOutput)串行输出
在从ADPCM到PCM解码方式方向上,送入DDI(DecoderDataInput)的串行ADPCM
180
四川大学学报(自然科学版)第35卷
数据,根据DDC(DecoderDataClock)和DIE(DecoderInputEnable)工作时序,按指定的工作模式和数据率,经数字信号处理器(DSP)反变换,解码成PCM,并传送到输出移位寄存器(S2
.REG),在DOE(DecoderOutputEnable)的控制下,从DDO(DecoderDataOutput)串行输出.正确地按使能同步模式给出时序信号,便MC145532有长使能和短使能帧同步工作模式
可以控制编解码的输入输出(I.在任何模式下,数据有效都是由EDC或DDCO)工作方式
的下降沿指定.在系统设计中,选取长使能帧同步工作模式.1.2 PCM编解码器MC145567
.在编码(发送)过程中,按数据发送主时MC145567是按A2Law算法的PCM编解码芯片钟MCLKX(TransmitMasterClock)、数据发送时钟BCLKX(TransmitDataClock)和发送使
能频同步信号FSX(TransmitFrameSync)确定的时序,将由VFX1+或VFX1-端输入的模拟音频信号压缩编码,以串行方式从DX(TransmitDigitalDataOutput)端串行输出PCM编
接收数据码数据;在解码(接收)过程中,按数据接收主时钟MCLKR(ReceiveMasterClock)、时钟BCLKR(ReceiveDataClock)和接收使能帧同步信号FSR(ReceiveFrameSync)确定的
时序,接收由DR(ReceiveDigitalDataInput)端输入的串行PCM编码数据,经解码还原成模拟的音频信号后,从VFRO端输出.
.在系统设计中,选用短使能帧同步工作MC145567也有短使能和长使能帧同步工作模式模式.该芯片内置有高性能的抗混迭滤波器,从而保证A.在DD变换时无混迭发生A变换
输出电路中内置有恢复滤波器,以保证输出音频信号的质量.1.3 时序及接口电路设计
开发系统硬件由系统时钟及时序产生、音频信号编解码、编码数据并串转换、模拟音频信号处理、与主机接口及控制电路等几部分组成.其原理如图3示.
图3 系统硬件原理框图
在相应的软件控制和硬件的协同工作下,可对系统的编码和解码工作状态及编解码数据率(32kbps,24kbps,16kbps)进行设置.
2 系统软件设计
为了设计出一个较为通用的语音开发平台,除对硬件的要求外,软件还必需满足开发的需
第2期 苟大举等:基于ADPCM编码的语音录放系统开发平台要.按照系统的总体要求,系统软件必需满足以下要求.
1.系统软件使用简单,操作方便,易于对工作状态进行设置.2.系统编辑功能齐全,便于对数据的编辑、试听和保存.
3.具有数据文件组织功能,以便为写入EPROM准备数据和应用系统的编程需要.
181
系统软件采用菜单驱动方式.显示画面由编辑参数动态显示区、音频数据曲线显示区和操作及信息提示区组成.编辑画面如图4示.
图4 系统编辑画面
针对对音频信号进行编辑的特点,系统的主要编辑功能是:编辑起始点和终止点标记设置,光标的移动包括一个样点或32个样点的前后移动、前后翻页和直接到指定页的快速移动等多种移动方式,块操作包括块定义、块搬移、块删除、块存盘和将文件块数据插入到当前光标位置等,对数据缓冲区或编辑块中的数据试听,对音频信号的录音和存盘.
在整个编辑过程中,系统动态地显示编辑数据的起止样点序号,当前光标位置序号和所在的页序号等参数.当前帧的音频数据以曲线的形式动态地显示在数据曲线显示区.信息提示区将显示当前操作提示信息或出错信息.
3 专用应用系统的开发
为了设计出合理的、满足应用需要的专用语音重放系统,在语音数据的选用和组织上,必须精心考虑.系统的硬件资源和应用环境,对语音有不同的要求.同样,语音数据量的多少对系统的硬件设计也有影响.综合上述因素,在系统设计中对语音数据应作以下考虑.
1.根据应用环境对音质的要求或语音数据项多少结合硬件资源的条件,确定语音编码率.2.在分析系统所需全部语音的基础上,确定选用的语音数据单位.比如有的以字,有的以
词组,或有的以语句作为独立的语音数据单位.将这些语音单位进行有机连结,便可生成满足系统需要的话音.当然,在具体选用语音单位时,最好还要根据汉语语音学知识,对汉语语句中的变调、轻声进行考虑,并选录相关的语音单位.
3.以语音单位为基础进行数据组织.数据格式是第一个字为该数据单位的长度,其后是本
单位语音数据字节.按照这种组织方式,可以根据EPROM的容量,将全部或部分数据存放在一个个语音数据文件中.利用开发软件中的数据组织程序,便可以实现对编辑好的语音数据单
182
四川大学学报(自然科学版)第35卷
位按上述格式进行组织.最后,除获得一个语音数据文件外,还会自动生成相应的语音数据单位入口地址表.利用该入口地址表,便可调用任意的语音数据.
在语音重放系统的硬件设计方面,设计时应考虑以下几个因素:1.一般应尽量少占用系统资源,语音部分较独立.基于这些考虑,语音重放部分最好是一个独立的模块,用自己的CPU,比如单片机进行管理.
2.语音重放电路与主系统之间的通信接口,视语音重放电路与主系统的距离远近,确定采
用并口或串口通信.
3.语音数据量的大小,决定了对存储语音的EPROM的选择.比如一块27512EPROM最多可存储以32kbps编码方式的语音16s(约不少于32个汉字字音),若选用16kbps编码方式,可存储32s长的汉字字音数据.按上述估计办法,便可粗略确定语音存储容量.原则上讲,用8位单片机,采用外部数据存储区扩展技术,就可以满足大多数系统对数据的要求.
图5是一个ISA总线的语音重放模块电原理框图.以此为例,容易设计出满足其它环境要求的语音重放模块.
该研究成果已用于中国空间技术研究院兰州物理研究所委托的合作项目中,用此系统已为多项开发服务.尽管在开发系统中,选用的是符合CCITT推荐算法的
图5 ISA总线语音模块结构框图
ADPCM编码芯片MC145532,但
是由此开发系统提供的标准ADPCM编码数据与其它公司生产的类似芯片完全兼容.它可直接用于由那些类似芯片所构成的应用系统中.
参 考 文 献
1 杨行峻,迟惠生.语音信号数据处理,北京:电子工业出版社,19952 MotorolaCommunicationDeviceDataBook.MotorolaINC,1993
AWORKSTATIONBASEDONADPCMFORSPEECHRECORDING
ANDREPRODUCINGSYSTEMDEVELOPMENT
(DepartmentofComputerScience)
GouDaju
YangQigang HeDejue YangJiayuan
(ComputationCenter)
Abstract Thedesignofhardwareandsoftware,systemfunctionsfortheworkstationbasedonADPCM,whichisusedfordeveloppingspeechrecordingandreproducingsystem,arepresented.Theprincipleandsomefactorsfordesigningspeechreproducingsystemareal2sodiscussedindetail,andablockdiagramforanapplicationisgivenasanexample.
Keywords speechsignalprocessing,speechcoding,interface
因篇幅问题不能全部显示,请点此查看更多更全内容