当前位置:首页 > 消费电子 > 消费电子
[导读]文中结合该芯片在低速语音编码设备中的应用,详细介绍了其工作模式及配置方法。

摘要: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 主要初始化命令

命  令  名  称 操作码值(Opcode Value) 信号(Signaling)
PCM命令 00h 不相关
Run命令 01h 不相关
Debug命令 03h 不相关
MSIG命令 04h 不相关
Extended Signal命令 06h 仅当ES=1
Call Progress命令 07h 仅当ES=1
用户自定义音频命令 08h 仅当ES=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 闲置状态命令格式

Frame Title(帧结构) Bit Number(位结构)
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Sync Header(同步头) 00h AAh
Command Header(命令头) Length(长度) OPCode(操作码)
Parameter 1(参数1)  
……  
Parameter[(Length-4)/2](参数(Length-4)/2])  

从闲置状态进入激活状态后,数据包将在每个帧间隙内通过激活通道,在AC48105和主机之间传输。对于语音传输来说,帧间隙长度由现行的语音编码方式和数据包有效载荷的块数决定。

3 芯片与主机接口(HPI)

HPI(Host Port Interface)是一个8位的并行接口,主机可以通过HPI访问语音芯片内部的存储器。由于语音芯片的内核是16-bit的处理器,因此,为了协调主机与AC48105之间的数据传送,HPI会自动将来自片内存储器的数据由字转换为两个字节的形式,同样它也会在向片内存储器写入数据之前,将两个字节的数据压缩成字的形式。HPI可以访问的片内存储器为2kB,地址为1000H~17FFH,同时主机也可以通过HPI访问这些地址,有关地址的分配如表4所列。

表4 HPI地址分配

地  址  范  围 寄存器/缓冲区 寄存器内容
1000 内核下载缓冲 -
104B 导入状态寄存器 满包=0,空包=1,校验和错误=2 
104C 程序下载块缓冲区 -
166D 存储包数量缓冲区 范围为0-15
166E 主机读包状态缓冲区 满包=0,空包=1
166F 主机写包状态缓冲区 满包=0,空包=1
1670-1737 主机写包缓冲区  
1738-17FF 主机写包缓冲区  

实际上,HPI只需对片内存储器的4个寄存器进行访问即可,这四个寄存器分别是:控制寄存器,地址寄存器和数据寄存器,其中数据寄存器分为地址自动累加和地址不影响两种。

4 在数字程控交换机中的应用

4.1 系统简介

低速语音编码和数据交换设备能够完成的功能主要是实现基于数字交换的30路本地用户通话;5~14路局间语音交换、语音压缩及复接、速率在64k、128k、256k可调、电话会议、全部话务员功能以及实现微机监控等。该设备全部采用模块化设计,按功能可以分为以下几个模块:交换及控制模块、用户电路模块、语音压缩及复接模块和稳压电源及接口部分。各个模块之间的关系如图2所示。

4.2 语音压缩模块的工作原理和工作流程

该模块使用了3片AC48105芯片,每片芯片可配置成5个独立通道,对应着5个时隙,这样,3片芯片一共可以处理15个时隙信号,分别对应15个中继用户信息。同时每片AC48105还外带一片SRAM,用于为其内部的DSP运算提供所需的空间,但主机对SRAM不做额外地控制。

本系统中,主机采用Atmel公司的AT89C52单片机,其中P0口作为数据/地址低8位复用;P2口作为地址的高8位使用,该设计只用到了A8、A9、A13、A14、A15;P1口的P1.0、P1.1、P1.2分别用作三片语音压缩芯片的复位信号,P1.3作为压缩芯片的读/写复用信号。同时,压缩芯片的分离读信号和写信号分别接单片机的读、写控制口(即P3口的P3.6和P3.7)。单片机可通过高位地址译码访问三片语音芯片,具体操作为:在FPGA中将A15、A14和A13接3~8 译码器,000时选通语音芯片A,001时选通语音芯片B,010时选通语音芯片C。

    采用的编码协议为G.729。该协议中以10ms为一个语音帧,每帧包含80个样本,这80个样本已经不是普通的语音信号,而是一些CELP模式的参数,包括线谱对、自适应码本延迟、基音延迟奇偶性、固定码本指标、固定码本符号、码本增益(第1级)、码本增益(第2级)等,对这些参数进行编码并传输之后,即可在译码器端,用于恢复激励与合成滤波器的参数。这样,在加电后,语音芯片开始加载其所需的两个软件程序代码:内核代码(kernel code)和程序代码(program code),这两个文件共占用122k Bytes的空间,可选一片Atmel的AT28C010-128k×8的E2PROM存储器来存储,对E2PROM的访问可通过A15、A14、A13的译码和单片机的读信号来得到。值得注意的是,单片机对E2PROM的寻址必须顺序执行,两个软件按顺序从E2PROM的首地址开始放置,当两个软件顺序下载到一片语音芯片之后,在FPGA的内部将产生一个硬件清零,从而使E2PROM的地址指针再次指向首地址处,以用于下一片语音芯片的下载。在对3片AC48105进行正确加载后,单片机开始配置其工作状态,而后执行压缩/解压操作。由于每片语音芯片的内部只能存放15包数据,即每路通道有3包数据,每包代表10ms的语音帧,因此单片机需要在足够有效的时间段里依次轮询三片语音芯片,否则就会出现漏包而造成较大的数据流失。所以,单片机与3片语音芯片的数据交换需要一个缓冲区。本系统中,这个缓冲区由FPGA内部的双口RAM来完成,双口RAM写入与读出数据的时钟可以不相同,这样可保证写入与读出数据时相互不受影响。

当在闲置态运行激活命令时,语音芯片就进入激活态,此时语音芯片开始和单片机进行数据交换。在G.729协议下,每包数据代表10ms的语音数据(称为一个语音帧),一共80Bytes,当单片机向语音芯片写入待压缩数据时,需要在每个语音帧的帧头加16Bytes的命令头,中间是语音数据,末尾还要加上0~4Bytes的后缀。反之,当单片机从语音芯片中取出已解压的数据时,每个语音帧的帧头也有由语音芯片的DSP内核产生的16Bytes状态头,紧接状态头的是语音数据,末尾是0~4Bytes的后缀。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

TWSC 2985系列SD6.0存储芯片 国内首颗支持4K LDPC纠错技术 增强纠错、耐久可靠、性能升级

关键字: 德明利 半导体 存储 芯片 国产存储企业

2024年4月11日,中国——意法半导体的ST25R100近距离通信(NFC)读取器芯片独步业界,集先进的技术功能、稳定可靠的通信连接和低廉的成本价格于一身,在大规模制造的消费电子和工控设备内,可以提高非接触式互动功能的...

关键字: 嵌入式 数据读取器 芯片

其最新一代开创性系统集成芯片及配套软件将为4600万辆汽车提供更多安全和便利功能 上海2024年4月17日 /美通社/ -- Mobileye今日宣布,其已向客户交付其最新的EyeQ™6 Lite (EyeQ...

关键字: 芯片 MOBILEYE ADAS 自动驾驶

随着2024年的到来,北斗系统建设已走过栉风沐雨、接续奋斗的30年,几代北斗人也走过了北斗系统建设从无到有,从有源定位到无源定位,从服务中国到服务亚太,再到全球组网的“三步走”发展历程。

关键字: 华大北斗 芯片

微控制单元(Microcontroller Unit;MCU) ,又称单片微型计算机(Single Chip Microcomputer )或者单片机,是一种针对特定应用的控制处理而设计的微处理器芯片,其工作频率(在1M...

关键字: MCU 芯片 半导体

今日凌晨,中国台湾东部的花莲县连续发生地震,最高强度为6.3级,震源深度10公里,据中国地震台网分析,本次地震均为4月3日台湾花莲县海域发生的7.3级地震的余震。中国台湾地区在全球半导体供应链中扮演者重要角色,其10nm...

关键字: 固态硬盘 芯片 存储

在科技飞速发展的今天,电子设备已经成为了我们日常生活中不可或缺的一部分。而在这些电子设备的内部,一个不可或缺的组成部分便是开关电源芯片。作为电源管理集成电路的核心,开关电源芯片在电子设备中发挥着至关重要的作用。本文将深入...

关键字: 开关电源 芯片

开关电源芯片作为电子设备中的重要组成部分,是实现电源转换和管理的核心器件。随着科技的不断进步,开关电源芯片的种类也在不断增加,各具特色,满足了不同设备和应用场景的需求。本文将深入探讨开关电源芯片的种类及其科技应用,带领读...

关键字: 开关电源 芯片

4月17日消息,Intel官方宣布,工程师内部研发了一种新的AI增强工具,可以让系统级芯片设计师原本需要耗费6个星期才能完成的热敏传感器设计,缩短到区区几分钟。

关键字: Intel 芯片 1.8nm

业内消息,昨天美国芯片设计公司 AMD 推出了锐龙PRO 8040/8000系列AI处理器芯片,为支持人工智能的PC提供动力,试图在与英伟达和英特尔等竞争对手的AI PC 竞争中获得领先地位。

关键字: AMD 锐龙 AI处理器 芯片
关闭
关闭