工业控制 | 能源技术 | 汽车电子 | 通信网络 | 安防监控 | 智能电网 | 移动手持 | 无线技术 | 家用电器 | 数字广播 | 消费电子 | 应用软件 | 其他方案

电路设计->音频电路图->音响IC电路图->新型语音压缩编解码器AMBE2000

新型语音压缩编解码器AMBE2000

作者:卤煮火烧时间:2009-09-12

  摘要:AMBE2000是美国DVSI公司推出的一种具有专利技术的语音压缩/解压芯片。利用该芯片能进行全双工的压缩和解压,从而以极高的压缩率提供高品质的语音质量。文中介绍了它的主要特点、引脚功能、控制接口及应用电路。

  关键词:语音压缩;格式字;FEC;VAD;AMBE2000

  1 引言

  AMBE2000是一种高性能、低功耗的单片实时语音压缩解压芯片,其压缩率可在2kbps~9.6kbps范围内由软件调节,且具有FEC(前向纠错)、VAD(语音激活检测)功能和DTMF信号检测功能,因此可广泛应用于卫星通信、数字移动通信、保密通信、语音邮件等方面。

  2 引脚说明及特性参数

  AMBE2000的主要特性及参数如下:

  ●具有高品质的语音质量;

  ●压缩数据率可在2kbps~9.6kbps范围内用软件调节;

  ●纠错率范围为50bps~7.2kbps;

  ●具有VAD(语音激活检测)/CNI(插入舒适噪声)功能;

  ●具有DTMF信号检测和产生功能;

  ●电源电压:+3.3V;

  ●工作温度范围:-40~+100℃;

  ●采用100脚TQFP封装。

  表1 主机接口选择

  端口类型选择脚

  CH_SEL1CH_SEL0

  主动有格式00

  主动无格式01

  被动有格式10

  被动无格式11

  表2 语音数据位选择(无格式)

  字中的语音数据位个数选择脚

  BA_SEL1BA_SEL0

  100

  201

  310

  411

  AMBE2000的引脚说明如下:

  CHANN_SEL0~1(75,77)脚:主机接口类型选择端具体操作见表1所列;

  BAUD_SEL0~1(80~81)脚:无格式语音数据位选择端具体操作见表2所列

  RATE_SEL0~4(70~74)脚:语音压缩率与前向纠错率选择端具体操作见表3所列;

  CODEC_SEL0~1(84~85)脚:A/D和D/A接口选择端口具体操作见表4所列;

  表3 AMBE2000压缩数据率选择表

  管脚74管脚73管脚72管脚71管脚70语音速率(bps)FEC速率(bps)总数据率(bps)

  11111200002000

  10000360003600

  10001400004000

  1011024001600

  10010480004800

  110004000800

  1011136001200

  1100124002400

  10011640006400

  1101040002400

  11011440028007200

  10100800008000

  1110040004000

  10101960009600

  1110136006000

  1111024007200

  *注:压缩数据率也可通过控制字改变。

  表4 A/D-D/A硬件配置

  A/D-D/A类型CODEC_SEL1CODEC_SEL0

  普通16位线性(采样率8kHz)00

  AD公司AD73311(采样率32kHz)01

  普通μ律(采样率8kHz)10

  普通A律(采样率8kHz)11

  VAD_EN(86)脚:使能语音激活检测功能端(高电平有效);

  ECHOCAN_EN(78)脚:使能回声消除功能端(高电平有效);

  SLEEP_EN(83)脚:休眠模式控制端口(高电平有效);

  SLIP_EN(82)脚:滑动模式控制端口(高电平有效);

  X2/CLKIN(68)脚:16.384MHz时钟输入脚;

  X1(67)脚:内部振荡器输出;

  RESETN(69)脚:复位脚(低有效);

  EPR(20)脚:编码包就绪标志;

  SOFT_EN(79)脚:使能软件误码判断端口(高电平有效);

  CHAN_RX_DATA(32)脚:用于接收主机数据到AMBE2000;

  CHAN_TX_DATA(42)脚:用于将AMBE2000数据发送到主机;

  CHAN_RX_LK(28)脚:主机接收时钟;

  CHAN_TX_CLK(34)脚:主机发送时钟;

  CHAN_TX_STRB(38)脚:主机发送/接收帧同步脉冲;

  CHAN_RX_STRB(30)脚:主机接收帧同步脉冲端口;

  CODEC_RX_STRB(29)脚:A/D帧同步脉冲接收端;

  CODEC_TX_STRB(37)脚:D/A帧同步脉冲发送端口;

  CODEC_RX_DATA(31)脚:A/D发送PCM数据给AMBE2000;

  CODEC_TX_DATA(41)脚:AMBE2000发送PCM数据到D/A;

  CODEC_RX_CLK(27)脚:A/D时钟;

  CODEC_TX_CLK(33)脚:D/A时钟;

  CLOCK_MODE(51)脚:时钟模式选择端口,该端口接高电平时选择晶体振荡模式;当接低电平时选择外部时钟);

  VDD(8,11,12,23,36,39,44,45,46,47,48,49,54,57,64,76,87,90脚):正电源;

  GND(1,9,10,25,26,35,40,50,52,53,56,63,65,88,89脚):接地端;

  其余管脚:N.C,悬空不用。

  3 主机接口及数据格式

  AMBE2000与主机的接口数据格式分为两种:一种是有格式;另一种是无格式。

  3.1 有格式

  在有格式情况下,AMBE2000大约每20ms生成一个压缩数据包,这个数据包共由24个字组成;数据包生成后,其EPR管脚会输出一个短的负脉冲指示,依此来决定对数据包的处理。数据包的具体构成如下:

  格式字0:固定为x13ECH,为数据包的头;

  格式字1:高8位用于芯片功率控制,0x00表示正常工作模式;0x55表示低功耗模式。低8位的位功能(高有效)如表5所列;

  表5 格式字1格式

  类型7:MSB6543210:LSB

  输入补丢失帧NCNCNCNCNC插入舒适噪声NC

  输出NCNC解码帧重复解码静默指示NCNC编码静默检测编码DTMF检测

  表6 格式字2-6格式

  字2字3字4字5字6语音速率(bps)FEC速率(bps)总数据率(bps)

  0x00280x00000x00000x00000x6428200002000

  0x50480x00000x00000x00000x3948360003600

  0x52500x00000x00000x00000x4150400004000

  0x10300x00010x00000x34la0x675024001600

  0x53600x00000x00000x00000x6c60480004800

  0x52500x20100x00000x00000x74604000800

  0x50480x00010x00000x24120x686036001200

  0x10300x00050x180c0x30180x736024002400

  0x6b800x00000x00000x00000x6c80640006400

  0x52500x00010x00000x542a0x528040002400

  0x52580x00090xle0c0x41270x7390440028007200

  0x7fa00x00000x00000x00000x52a0800008000

  0x52500x00050x20100x68340x72a0400004000

  0x7fc00x00000x00000x00000x69c0960009600

  0x50480x000e0x40100x6a2e0x65c036006000

  0x10300x000e0x68la0x511b0x76c024007200

  格式字2~6:用于指定和表示芯片的压缩数据率,具体如表6所列;

  格式字7:该位在输入数据包中不用,因此,在设计时,应将其设置为0x0000;而在输出数据包中表示误码率;

  格式字8、9:不用,通常设置为0x0000;

  格式字10:高8位用于控制和表示DTMF信号的幅度,范围从3~-60dBm0(例如:0x03=3,0x00=0,0xC4=-60);低8位用于控制和检测DTMF信号,所发出和检测的信号为标准的北美呼叫音。DTMF代码见表7所列。

  表7 DTMF代码

  DTMF代码DTMF数字DTMF代码DTMF数字

  0x8010x842

  0x8830x814

  0x8550x896

  0x8270x868

  0x8A90x870

  0x83*0x8B#

  0x8CA0x8DB

  0x8EC0x8FD

  0xFFDTMF无效

  表8 格式字11格式

  类型7:MSB6543210:LSB

  输入NCNC语音激活(1)NC休眠(1)回声消除(1)编码/解码选择

  输出NCNCNCNC休眠(1)回声消除(1)编码/解码选择

  格式字11:高8位用于解码器音量控制,其中0x80表示原音量,0xFF为原音量的两倍,小于0x80为减小音量;低8位的功能如表8所列。其中编码/解码选择如下:00为编码+解码;01为编码;10为解码;11为不用;

  格式字12~23:压缩数据信息。根据数据率的不同,其数据位数也不相同。数据位数和压缩数据率的关系如下:

  位数=压缩数据率(bps)/50(bps)

  例如,在最低压缩率为2kbps时,数据位数为:

  2000/50=40位。

  3.2 无格式

  在无格式情况下,只需要发送数据位,但每秒会减少50bit的数据(与有格式情况相比),因而会降低语音质量。其每个字中包含的数据位数参见表2。每帧的字数和压缩数据率的关系如下:

  字数=[压缩数据率(bps)/50(bps)]/位数

  式中,所选的位数必须能被选择的压缩数据率整除。AMBE2000串口时钟速率最高为2.048MHz。

  

 

  图1 用AMBE2000和AD73311构成的语音采样、压缩、解压缩的实用电路 点击放大

  4 应用电路

  图1所示是用AMBE2000和AD73311构成的语音采样、压缩、解压缩实用电路,其中AD73311是A-DI公司的一种声码器芯片,它的采样速率可以达到32kHz、16位采样数据,且具有较好的声音质量,因而可配合AMBE2000使用,在实际应用中取得了良好的效果。图中,AMBE2000选择的管脚接法将压缩率定义为2kbps同时电路设置在外部输入时钟模式,且回声消除、语音激活、滑动补偿功能有效,其EPR脚用来输出数据包就绪指示信号。在电路上电正常工作以后,还可以通过软件对AMBE2000进行重新设置,因此,AMBE2000语音压缩编解码器应用起来十分灵活。

  5 结束语

  语音通信在数字通信中占有十分重要的地位,通过本文所介绍的AMBE2000和AD73311所构成的数据压缩方法,不但可以节约存储资源,而且能够减小对通信带宽的需求。因此,在某些特殊的应用领域,AMBE2000语音压缩编解码芯片有着十分广阔的应用前景。



评论

技术专区