无论是在人们的日常交流,还是在航空、航天等高科技领域,语音通信都是不可或缺的。根据奈奎斯特理论,要想不失真地重构语音信号,采样频率不能低于40 khz,按8位采样精度计算,语音数据量也有320kbit/s,占用的数据带宽多,严重破坏通信系统(特别是无线通信系统)的通信性能。因此需要寻找合适的语音编码方法,将语音数据率压缩到理想状态,使其能够占用较少的带宽,实现理想的通信效果。 笔者设计的无线通信系统利用dvsi公司语音编解码芯片ambe2000实现了低带宽、双工的数据与语音同传,语音通信自然可懂。
ambe2000
mbe(多带激励)语音编码技术是一种具有高语音质量和强鲁棒性的低速率语音编解码技术。这种方法在频域中按基音各谐波频率,将一帧语音的频谱划分为多个频带,对每个频带作清、浊音判决。对浊音带,以基音为周期的脉冲序列作为激励信号;对清音带,则以白噪声作为激励信号。总的激励信号由各带激励信号相加构成。用该激励信号激励声道滤波器,最终合成出具有较高自然度的语音。mbe模型使合成语音谱与原语音谱在细致结构上能拟合得很好,因此在低比特率的情况下,其合成语音的音质依然能保持较高的自然度。其改进的ambe算法成为国际移动卫星组织和移动卫星通信的语音编码标准。
ambe2000采用ambe编解码技术,是一种高性能、低功耗的单片实时语音压缩解压芯片,其压缩率可在2kbit/s~9.6kbit/s范围内由硬件、软件调节,且具有fec(前向纠错)、vad(语音激活检测)功能和dtmf信号检测功能,当速率在4.0kbit/s以上时,可得到接近长途电话的话音质量;当速率为2.0kbit/s时,仍然具有较高的可懂度和自然度。因此可广泛应用于卫星通信、数字移动通信、保密通信、语音邮件等方面。
ambe2000的主要特性包括:具有高品质的语音质量,压缩数据率可在2kbit/s~9.6kbit/s范围内调节,步进50bit/s; 纠错率范围为50bit/s~7.2kbit/s;低功耗、低复杂度;具有语音激活检测vad功能、回波抵消功能和舒适噪声cni产生功能;可变速的fec功能; dtmf信号检测和产生功能等。
系统设计
系统实现语音与数据的无线遥测同传,系统框图如图1所示。其主要组成部分为:语音接口与处理模块、数据接口模块、数据复分接模块、中频处理模块、射频模块和天线。其中,语音接口与处理模块主要采用ambe2000实现,数据接口采用fifo实现,数据复分接和中频处理采用fpga实现,完成软件无线电功能。
ambe2000应用电路
图2所示是系统中ambe2000的应用电路。图中,ambe2000选择的引脚接法将其设置为语音位为1位的被动无帧格式、码速率为4kbit/s、外部输入时钟模式、ad/da为ad73311模式、滑动补偿功能有效,其epr引脚用来输出数据包就绪指示信号。
工作模式设置
ambe2000与外部接口为串行接口,串口时钟速率最高为2.048mhz,大约每20ms生成一个压缩数据包。可设置为主动和被动模式,在被动模式,所有接口控制信号由外部输入;在主动模式,chan_tx _strb由ambe2000输出,其他信号由外部输入。
ambe2000与外部的接口数据格式分为两种:有帧格式,无帧格式。
本系统将ambe2000的输入引脚77、75置为高电平,相应的工作方式为被动无帧格式。
码速率设置
ambe2000的初始码速率设置必须通过硬件引脚rate_sel[4-0](pin74-70)设置,器件复位工作后,可通过软件数据包设置。
在无帧格式情况下,只需要发送数据位,译码端约需要15包数据(300ms)进行输入数据流同步。每个字中只有1-4位传输语音,由引脚baud_sel1(pin 81) 、baud_sel0(pin 80)控制。
本系统设置rate_sel[4-0]为10001,对应码速率为4kbps;将引脚80、81置为低电平,每字只有1位语音数据。
时钟
ambe2000的工作时钟频率为16.384mhz,有两种提供方式:外部ttl/cmos时钟源、晶振,由引脚clock_mode(pin 51)指定,时钟输入端为x2/clkin(pin68)、x1(pin67)。(1)clock_mode=0,外部ttl/cmos时钟源作为时钟输入,连接方式见图3。
(2)clock_mode=1,16.384mhz晶振作为时钟输入,连接方式见图4。 要求c1、c2与晶振距离ambe2000尽可能近。
本系统采用方式(1),由fpga提供16mhz输入时钟。
ad/da
通过芯片引脚codec_sel1(pin 85)、codec_sel0(pin 84)进行a/d-d/a接口配置,本系统将引脚85、84设置为01,即ad73311配置。ambe2000与ad73311的连接见图5。
工作流程
复位后,等待epr(pin 20)出现下降沿,表明译码数据包准备好,读取数据包,以后约每隔20ms读一包数据。
本系统设置每字的语音位为1,复位并等待epr(pin 20)出现下降沿后,根据设定的码速率固定每次读取一个字,不需要每次检测chan_tx_strb。
结语
ambe2000语音压缩编解码器应用灵活,在电路上电正常工作以后,还可以通过软件对ambe2000进行重新设置。不仅应用灵活方便,还可以节省系统资源,获得良好的语音通信效果,在各类语音通信中具有广泛的应用价值。
参考文献:
[1]dvsi. ambe-2000 vocoder chip user’s manual[d]
[2]龚小燕等.一种基于ambe2000的低速率语音通信系统[j], 微计算机信息,2009(5)
[3]王炳锡.语音编码[m].西安:西安电子科技大学出版社,2003
[4]易克初等.语音信号处理[m].北京:国防工业出版社,2001
[5]田耘等.无线通信fpga设计[m].北京:电子工业出版社,2008
[6]杨小牛等.软件无线电原理与应用[m].北京:电子工业出版社,2002
OARC宣布创建AR云平台,将所有游戏和服务链接到一个共享平台
R型电源变压器的核心部件有哪些?
微信聊天记录到底能不能恢复
导热硅胶片的应用特性和动力电池散热需求十分契合
城市地下管廊数据采集监测方案
AMBE2000在语音通信中的设计
一文解析新能源汽车对驱动电机的性能要求
Kvm切换器于数据中心网络规划的重要性
工业4.0工具箱的三大安全IT技术
比特币中国BTCC迈向了一个新的台阶
嵌入式系统开发工程师的职业概述及职业发展方向
Allegro推出针对汽车市场的可编程线性霍尔效应传感器IC
TeamViewer——安全远程控制,远离网络欺诈
MSP430单片机设计的婴儿睡眠监护系统
工业物联网解决方案如何推动能源行业的可持续发展
基于无人机激光雷达的刺槐人工林森林健康指标的构建
如何克服MicroLED技术难点和瓶颈
新能源汽车的锂电池能使用多久
我们离全自动驾驶还有多远?
中国移动投资公司2023年目标清晰,将再造一个中国移动?