用AMBE-1000实现的语音分组技术
我们在EPR(Encoder Packet Ready)信号置高后,当检测到OBE(Output Buffer Empty)置低时,立即捕捉数据线上的数据,便可得到帧同步码13ECH,进而得到全部的语音数据,参考程序如下:
LOOP:JNB EPR,$
READ:MOV R0,#34
MOV R1,#30H
LL:MOVXA,@DPTR(DPTR:AMBE的地址)
MOV @R1,,A
INC R1
JB OBE,$
DJNZ R0,LL
SJMP LOOP
AMBE-1000作为解码器的写时序与读时序类似,可根据DPE(Decoder Packet Ready)和IBF(Input Buffer Full)信号编写相应程序。
从AMBE-1000输出的语音数据有固定的帧格式,每一帧有34字节数据,除去帧头,有24字节语音数据。在20ms周期内,若24字节数据全部被填满,则其传输速率为9.6Kb/s。若设传输速率为2.4Kb/s,则24字节语音数据格式中只有6字节语音数据,其余被0填充。我们用这6字节数据作为一帖,再加上帧头(包括同步码、地址码、类型码、校验码等),便可实现分组语音。
3 应用实例
AMBE-1000读写一帧数据所需的时间远小于20ms。也就是说在20ms时间内,除了读1帧或写1帧数据外,处理器还有大量的时间做其它的事。这使人们有可能在半双工的低速信道内实现全双工的语音通话。图3为以AMBE-1000为核心实现的铁路站场信号作业电话示意图。
图3中,用户线接口及PSTN接口均以AMBE为核心。每一个终端可通过总线的PSTN接口接入PSTN电话网;各个电话终端可通过总线互通,但每一时刻只能有一个终端接入PSTN。终端的硬件构成如图4所示。
由电话接口完成用户话机模拟信号的二、四线转换;由编解码器完成对模拟语音信号的数字化,并进行A率(U率)PCM编码;由AMBE-1000对PCM语音信号压缩并分组,实现分组语音;由单片机对分组语音进行打包,最后送入485总线进行传输。由于是多个终端,在软件中需引入令牌机制,以防止冲突。软件工作流程如图5所示。
结语
就功能来说,AMBE-1000是一款优秀的语音压缩处理器;就其能达到的最低压缩速率来看,已达到了世界先进水平,而且能够保证高质量的通话质量。这使得它在世界范围内得到了广泛应用;但其压缩算法为非标准算法,致使由AMBE-1000构成的语音处理系统只能用在某些专用网上。即使如此,它仍不失为在语音处理领域一款优秀的处理器。
《用AMBE-1000实现的语音分组技术(第2页)》