摘要:AC48105是以色列AudioCodes公司生产的一种专用语音处理芯片,可用于完成低比特率的语音压缩编码解压和传真等功能。该芯片内含5路相互独立的复用信道,可以传输语音、传真和数据信息,带有的16位DSP内核可提供多种语音编码格式。文中结合该芯片在低速语音编码设备中的应用,详细介绍了其工作模式及配置方法。
关键词:AC48105;DSP内核;工作模式;语音压缩编码
AC48105是AudioCodes公司生产的一种专用语音处理芯片,它具有低比特率的语音压缩编码、解压和传真等多种功能,内含5路相互独立的复用信道,可以传输语音、传真和数据信息。芯片内核为16位的DSP,其中固化有芯片本身所提供的各种编码操作格式。文中将主要介绍AC48105在低速语音编码设备中通过配置DSP内核来实现语音压缩和解压功能的具体方法。
1 主要性能
语音压缩编码是相对于64kbps的PCM(脉冲编码调制)常规语音编码而言的。近年来,低比特率语音编码的研究取得了较大的飞跃,目前甚至出现了速率在1kbps左右的语音编码算法。而专用语音处理芯片AC48105能提供多种低比特率的语音编码格式及服务,具体内容如下:
●基于G.729(附A)协议的8kbps CS-ACELP语音编码;
●基于G.723.1协议的6.3/5.3kbps MP-MLQ语音编码;
●基于G.726/G.727协议的16~40kbps ADPCM和E-ADPCM语音编码;
●基于G.711协议的64kbps μ律/A律PCM语音编码;
●6.4、7.2、8.0、8.8、9.6kbps的NetCoder语音编码;
●基于G.729(附B)协议的静音抑制,包括语音激活检测(VAD)和舒适噪音发生器(CNG);
图1
●基于G.723.1(附A)协议的VAD和CNG静音抑制。
AC48105的主要特性有:
●可进行自动语音/传真/数据切换;
●损毁封包自动修复;
●G.168/G.165的自适应回声抑制;
●带有E&M,AB,ABCD的接口;
●具有信道内信号的传输(CAS)功能;
●可对TIA 464B DTMF信号进行检测及再生;
●带内信号传输(IBS),包括MF R1,R2,SS-4,SS-5,AC15和呼叫过程;
●具有可编程音频信号传输功能;
●可控制输入、输出增益;
●片内带有PCM的高速接口,可支持T1,E1和Multiple E1格式;
●具有并行主机处理器接口;
●可实时全双工工作。
2 芯片工作模式和命令
AC48105的内核是16位的DSP,其中固化了多种编码操作。其DSP内核与外部主机的数据交换可通过8根复用的地址/数据总线来实现。AC48105有如下四种工作模式:
(1) 重置和内核下载模式(Reset/Kernel Down-load Mode);
(2) 编程下载模式?Program Download Mode?;
(3) 初始化模式?Initiation Mode?;
(4) 运行模式(包括闲置状态和激活状态)(Run Mode(Idle State and Active State))。
上述四种模式一起组成了芯片完整的操作流程。图1是其工作模式序列图。
●重置和内核下载模式
上电时,该模式启动,当重置信号被激活(RESET管脚箝制在低电平)时,其内核代码被下载到AC48105中。
●编程下载模式
编程下载模式的启动需同时满足两个条件,一是主机设置AC48105中的HPIC寄存器,使HINT信号变为高电平;二是内核下载成功。
编程下载结束时,芯片自动进入初始化模式。
●初始化模式及命令
处于该模式时,主机发出的命令对芯片每个通道的初始化模式均有效。其主要的初始化命令及命令格式分别如表1、表2所列。
表1 主要初始化命令
表2 初始化命令格式
Frame Title(帧结构) Bit Number(位结构) 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Syns Header(同步头) 0 ID(识别号) AAh Command Header(命令头) Length(长度) OPCode(操作码) Parameter 1(参数1) …… Parameter n(参数n) Checksum Footer(校验和页脚) 0 Sequence Number(序列号) Checksum(校验和)每个命令都有一个同步头AA h。命令头中,操作码用来表示命令的类型,长度域则用于表明命令的字节数(16进制)。
当主机发出Run命令后,芯片就进入运行模式。
● 运行模式(包括闲置状态和激活状态)
芯片一旦进入该模式,所有的通道都被置为闲置状态,此时主机便开始为每个通道设置运行参数。当某通道处在闲置状态时,它所占有的时隙一般不会丢失。
与初始化模式不同的是,运行模式中的命令都只是针对单个通道有效。
如果系统中有多个AC48105芯片,主机必须依次对各芯片进行配置。表3所列为闲置状态的命令格式。
表3 闲置状态命令格式
从闲置状态进入激活状态后,数据包将在每个帧间隙内通过激活通道,在AC48105和主机之间传输。对于语音传输来说,帧间隙长度由现行的语音编码方式和数据包有效载荷的块数决定。
3 芯片与主机接口(HPI)
HPI(Host Port Interface)是一个8位的并行接口,主机可以通过HPI访问语音芯片内部的存储器。由于语音芯片的内核是16-bit的处理器,因此,为了协调主机与AC48105之间的数据传送,HPI会自动将来自片内存储器的数据由字转换为两个字节的形式,同样它也会在向片内存储器写入数据之前,将两个字节的数据压缩成字的形式。HPI可以访问的片内存储器为2kB,地址为1000H~17FFH,同时主机也可以通过HPI访问这些地址,有关地址的分配如表4所列。