窄带宽有限距离语音通信系统设计
2008-07-28
作者:边会坤1,2,苗杰光1,2, 丁
摘 要: 介绍了应用AMBE-2000TM声码器" title="声码器">声码器和MT9172数字网络" title="数字网络">数字网络接口芯片设计的语音通信系统" title="通信系统">通信系统的具体实现方案。给出了该语音通信系统中AMBE-2000TM与A/D-D/A" title="D/A">D/A的接口电路。
关键词: AMBE-2000TM AD73311 数字网络接口
先进多带激励(AMBE)算法是一种基于多带激励(MBE) 语音模型的低比特率、高性能的语音压缩编码方法。它不仅码率低,在低码率情况下能够保持优良的语音合成的自然度效果,同时还具有良好的抗背景噪声能力。正因为AMBE语音压缩编码的这些优点,本文采用美国DVSI公司的AMBE-2000TM声码器芯片作为语音压缩的编解码芯片,设计语音通信系统。AMBE-2000TM声码器芯片是一款高性能、低功耗、可变速率的单片实时全双工语音压缩解压芯片。该芯片采用改进的多带激励(AMBE)算法。其压缩率可在2.0kbps~9.6kbps范围内由软件调节。本文介绍的语音通信系统具有设计简便、音质优、功耗低等优点。
1 语音通信系统
语音通信系统由CPU、AMBE-2000TM声码器芯片、可编程逻辑器件(FPGA)、Flash、A/D-D/A电路、数字网络接口芯片等构成。CPU采用的是AT89C55单片机,用于控制和读写AMBE-2000TM声码器;可编程逻辑器件采用EP1K30,用于完成系统所需时序;Flash采用一片EPC2,用于存储程序和初始化数据;A/D-D/A电路由AD公司的AD73311构成;数字网络接口芯片采用的是Zarlink公司的MT9172,工作在调制解调器模式。
可编程逻辑器件EP1K30除用于产生系统所需的各种时序外,还对数据包进行处理,完成数据的拆包、组包。EP1K30功耗非常低,速度非常快,使用方便。EP1K30需要空出五个引脚与EPC2进行数据交换。EPC2是EP1K30的配置芯片,属于Flash Memory(闪存)器件,具有可擦写功能。
MT9172数字网络接口芯片(简称DNIC)是一种能在普通双绞线上提供高速、全双工数字传输的多功能芯片。其最高传输速率可达160kbit/s。由于采用了先进的自适应回波抵消技术,使其只用单根双绞线对即可实现全双工通信。该芯片支持ISDN(综合业务数字网)的2B+D(两个64kbps的B通道和一个16kbps的D通道)数据格式。具备帧同步和时钟提取能力。
2 AMBE-2000TM与AD73311接口设计
AMBE-2000TM的编码器和解码器可同时完成语音的编码和解码任务;并且所有的编码和解码操作都在芯片内部完成,不需要外扩的存储器。
AMBE-2000TM芯片内部时钟工作在66MHz,但由于内部有PLL电路,只需外接16.384MHz晶体即可。芯片外部接口简单,基本无须额外的外围器件,可接收A律或μ律编码的PCM数据,编码速率为2.0kbps~9.6kbps可调。
语音接口采用外置的A/D-D/A芯片。下面介绍A/D-D/A接口电路的设计。A/D-D/A芯片的选择对于设计出具有优良语音质量的系统非常关键[1]。在选择A/D-D/A芯片时,需要考虑这些芯片的信噪比和滤波性能。一般应优先考虑那些16位线性A/D-D/A芯片,以获得较好的语音质量。
AD73311内含16位信噪比为75dB的A/D转换器和16位信噪比为70dB的D/A转换器,采样频率和输入输出增益均可程控,自带参考电压及串行输入输出接口等[2]。A/D转换编码通道包括可编程增益放大器、模拟∑-△调制器、反混迭数字滤波抽取器。D/A转换解码通道的构成和工作原理与A/D转换编码通道相似,包括反镜像数字滤波内插器、数字∑-△解调器、1bitD/A转换器、低通滤波器和带差分输出端的可编程增益放大器[3]。
AD公司的AD73311用起来非常灵活,内部共有五个控制寄存器组(CRA、CRB、CRC、CRD、CRE),通过送控制字" title="控制字">控制字控制它的工作模式、芯片级连个数、内部参考电压的电源控制、输入输出可编程放大器的增益等。如果AMBE-2000TM的CODEC_SEL[1-0](85脚、84脚)被设置为01b,声码器芯片送控制字到AD73311的控制寄存器。控制字的设置如表1[1]所示。AMBE-2000TM声码器芯片与AD73311的接口连接框图如图1所示[1]。
3 AMBE-2000与主机的接口设计
AMBE-2000TM与主机AT89C55的接口有两种模式:主动模式和被动模式。在主动模式下,数据选通信号(strb)由AMBE-2000TM声码器芯片内部产生;而在被动模式下,数据选通信号由外部提供。声码器与主机接口的数据格式分为两种:有帧格式和无帧格式。本系统采用主动模式和有帧格式。有帧格式是24×16bit字的格式。每20毫秒编码器输出24个16bit字,同时解码器接收24个16bit字。输入帧格式中前12个字组成头。格式字0固定为0x13EC,起同步作用;格式字1用于控制电源模式等;格式字2~6指定和表示芯片的压缩数据率;格式字7、8、9设为0x0000,不用;格式字10用于控制和表示DTMF信号的幅度;格式字11用于解码器音量控制;格式字12~23为真正的压缩数据信息。输出帧格式和输入帧格式基本相同,只有格式字7不同,在输入格式中不用,而在输出格式中用来表示位错率。
AMBE-2000TM输出的所有数据并不是都通过信道。只有语音信息才通过信道。在语音传输系统中,从编码器输出的数据包中抽去原始帧头,加上系统帧头,然后经过MT9172DNIC送到信道。接收时,把从信道过来的数据重新组合,去系统帧头加上原始帧头再送给解码器解码,最后送到扬声器。图2给出了系统工作原理框图。
声码器AMBE-2000TM以20ms为周期全双工并行工作。每隔20ms声码器都有一个低脉冲(EPR)通知外围器件,表示一帧数据已经准备好,外部可以读取帧数据信息。需要注意的是EPR信号不能用作中断。
AMBE-2000的帧数据输出输入都采用三线方式,即时钟(chan_clk)、 同步(chan_strb)以及数据(chan_data)串行。这三个信号的时序关系如图3所示。
4 用MT9172实现基带数据调制解调器
MT9172内部主要包括发送接口、接收接口、线路接口、回波抵消器、扰码/解扰码器、二相差分编码/解码器、收发时序与控制电路以及时钟锁相环路等[4]。
发送接口和接收接口又都包括一个数据/语音接口(简称DV口)和一个控制/数据接口(简称CD口),DV口用于传送语音编码信息或其它用户数据信息,CD口用于传送各种控制信息和低速数据。DNIC有多种工作模式,两个主要模式是调制解调器模式(MODEM)和数字网络模式(DN) 。在DN模式下,线路输出ISDN的2B+D数据,而在MODEM模式下,DV和CD口是透明的串行数据流口。另外,其工作方式还有主/从以及单/双口之分。主方芯片的时间基准信号和帧同步时钟由外部高稳定度的时钟源提供,而从方则直接从线路上提取。
在一个数据传输链上,必须一端工作在主方式,而另一端工作在从方式。双口工作时,DV口和CD口都有效;而单口工作时,所有的信息都通过DV口传递,CD口无效。在MODEM模式下,必须用双口工作,D信道和两个B信道都不再存在,线路口仍为80kbit/s或160kbit/s传输,但没有了同步位开销,只有透明数据传输。
利用MT9172芯片设计数据调制解调器,必须正确设定工作方式。图4是用该芯片设计的调制解调器的硬件框图,工作在双口方式。方式控制端MS0接+5V、MS1接地,当MS2接地时,MT9172工作在主方式;当MS2 接+5V时,MT9172工作在从方式。主方式工作时,10.24MHz时钟应由外部的数字锁相环路提供高稳定度的时钟,而从方式时,可在OSC1、OSC2端直接连10.24MHz晶体。工作时,需要对MT9172进行初始化操作。由单片机通过MT9172的CD口往控制寄存器写入“00000000”或“00010000”即可。当控制字为全零时,选择数据传输速率为80kbit/s(其中,64kbit/s用于传输数据终端设备DTE的数据),预扰码,解扰器被屏蔽;当控制字为”00010000”时,数据传输速率为160kbit/s(其中,128kbit/s用于传输DTE数据)。
该系统在串行有帧模式下,可以把AMBE-2000的串行输入输出脚相互短接,进行系统自检。自检时,在2.0kbps的速率和无纠错码情况下,仍有较好的语音质量。如果加上前向纠错编码,还可以对信道误码进行一定程度的纠错。
设计时,要注意晶振的选取和电路板上模拟信号和数字信号的连接。要选用小型矮封装的晶振。模拟地和数字地在一点通过磁珠相连,模拟电源和数字电源在一点通过磁珠相连,可有效减小背景噪声的引入。
参考文献
1 AMBE-2000TM Vocoder Chip User’s Manual Version 4.2. Digital Voice Systems Inc., June 2004
2 AD73311 Data Sheet. Analog Devices Inc., 1997
3 张歆奕,卢敦陆,张有为. AD73311通用模拟前端的原理及其在语音处理中的应用. 电子技术应用, 1999;25(8):53~55
4 MT9172 Data Sheet. ZARLINK Inc.,1999