姓名
(``大学 ```学院,陕西省 西安 710054)
摘 要:本文介绍了PCM、 ADPCM的基本原理,并重点介绍ADPCM以及ADPCM在通信中的实际应用,对其编解码原理及算法实现的流程框图进行了一定的讨论。最后以ADPCM在通信中的应用为例简单介绍了在实际通信中的应用实例。
关键词:PCM ; ADPCM
Abstract: This paper introduces the basic principle of PCM, ADPCM, ADPCM and ADPCM is introduced in communication in the practical application, the coding principle and algorithm flow diagram is discussed. Finally to ADPCM application in communication as an example introduced in the practical communication application.
Keyword: PCM;ADPCM
中图分类号: N 34 文献标志码:A
1、引言
ADPCM是波形编码中非常有效的一种数字编码方式。在ADPCM系统中量化器和预测器均采用自适应方式,即量化器和预测器的参数能随输入信号的统计特性自适应于或接近于最佳的参数状态。与PCM系统相比,ADPCM的量化器和预测器都是根据前面出现的PCM抽样值并对下一个抽样值进行预测,将当前的抽样值和预测值进行求差,然后对差值进行编码。对差值编码需要的位数要比直接对原始语音信号编码所需的位数少,从而达到对信号压缩的目的,在这里编码所包含的信息从原来的原始语音信号变为语音信号之间的变化。
本文对PCM、ADPCM的编码、译码原理进行讨论,并对它们性能进行比较,最后简单介绍了ADPCM在飞行员语音采集及遥测系统的框架设计的应用实例。
2、基本原理
1. 脉冲编码调制PCM
脉冲编码调制PCM(Pulse Code Modulation)简称脉码调制,是使用非常广泛的调制方法。在PCM的调制过程中,将输入的模拟信号进行取样,量化和编码三步。然后通过用脉冲编码量化后的值来代表模拟信号的幅度,即用二进制的大小来代表模拟信号的幅度(例如用“0”和“1”表示此离散数值)。在接收端再将这些编码的二进制数还原为原来的模拟信号。
2.差分脉冲编码调制DPCM
差分PCM(Differential PCM)记录的不是信号的绝对大小而是相对大小。因为信号的相对大小的变化通常要比信号本身要小,编码是所用的码位也就少。如果取样频率足够高,大多数连续的样值之间会有很大的相关性。差分系统就是利用这种信息的冗余,不记录信号的大小,而是记录相邻值之间的差值的大小。
图2.1 DPCM编码器示意图
差分编码采用预测编码技术,从输入中减去预测值,然后对预测误差进行量化,最终的编码就是预测值与实际值之间的差值。解码器用以前的数据对当前样值进行预测,然后用误差编码重构原始样值。这种方法使用的比特数较少,但它的性能决定于预测编码方法以及它对信号变化的适应能力。
3. ADPCM 编解码算法原理
ADPCM (Adaptive Differential Pulse Code Modulation,即自适应差分脉冲编码调制)是一种算法较简单的波形编码,其根据语音信号具有短时平稳性的非平稳随机过程及相邻样点间有着很强相关性的特点,采用自适应量化和自适应预测技术对语音信号进行编码。它的一个重要特点就是可以在较低的数据率的情况下,获得较高质量的重构语音。其记录的量化值不是每个采样点的幅值,而是该点幅值与前一个采样点幅值之差。从而实现了 kb/s A 律或 u 律PCM(脉冲编码调制)速率和32 kb/s速率之间的相互转换,将语音的传输速率提高了一倍。ADPCM 系统的输入输出信号为标准的A 律或μ律 kb/s PCM 信号,由于 kb/s PCM是经过对数压缩后的数字信号,它不能直接进行一般算术运算,所以,在进入ADPCM编码前,还必须把A律或μ律PCM码变换成自然二进制码,即线性PCM码。这一变换可以通过两者之间的内在关系来实现。在接收端,则需要进行一次反变换,把ADPCM 码解码得到用线性PCM码表示的重建信号,变换成A律或μ律对数 PCM 信号输出。其思想为:①利用自适应的思想改变量化阶的大小,即使用小的量化阶(step-size)去编码小的差值,使用大的量化阶去编码大的差值;②使用过去的样本值估算下一个输入样本的预测值,使实际样本值和预测值之间的差值总是最小。它的编码简化框图如图 1 所示:
图2.2 ADPCM编码示意图
其编码过程为:计算出输入信号Sl(k)与自适应预测器输出的估计信号Se(k)的差值—差分信号D(k)。②根据自适应量化阶调整器的量化标度因子Y(k),通过差分量化器对差分信号 D(k)进行量化,输出 ADPCM 编码 I(k)。③根据I(k),通过量化阶调整器计算出新的量化标度因子Y(k)。④一方面要把I(k)输出至 AWGN 信道进行传输,另一方面把 I(k)输入逆量化器,量化后得到差值信号Dq(k),再同预测信号Se(k)相加,得到本地重建信号Sr(k),输入自适应预测器,得到二阶极点、六阶零点的预测系数,它利用Dq(k)、Sr(k)以及前几个时刻的值对下一个要输入的信号S1+l(k)进行预测,计算出Se+l(k)。⑤根据新的预测系数,新的量化标度因子Y(k),进行下一轮的语音编码。解码是编码的逆过程,是实现解压缩功能,利用输入的信号来确定逆量化器中的量化阶距大小,并且用它来预测下一个输出信号的预测值,从而得到量化差分信号,量化差分信号与预测值相加得到重构信号,然后转换成PCM码。解码简化框图如图 2 所示:
图2.3 ADPCM解码示意图
量化器自适应的量化阶距是基于当前量化阶距和量化器前级输入的输出,随着两个顺序表查找完成的同时完成自适应的过程,这两个顺序表是量化阶距表和索引表。量化阶距表是将具体的量化阶距的大小、索引值以常数形式确定下来;索引表则是根据误差的代码值来确定阶距索引值的调节因子,用以量化阶距调整从而调整预测值。
3、ADPCM在通信系统中的应用
ADPCM在语音编码的技术要求如下:
语音信号经ADPCM编码后,客观测量SNR完全符合PCM编码系统的指标要求(CCITT G.721 G.711),主观听觉测试性能,应非常接近于PCM质量。
经过4次音频转接后,主观语音测试质量良好。在信道误码率低于10-3的情况下能稳定工作。4800bit/s的Modem信号经过4次编解码后,其误码率应小于10-5--10-6。输人输出接口采用标准的A律或u律bit/sPCM信号。目前32kbit/sADPCM主要应用于扩充现有PCM信道传输容量,即把两个30路PCM信号合并成一个2048kbit/s的60路ADPCM信号,这是CCITT G.761建议的国际标准。由于标准kbit/sPCM是经过对数压缩后的数字信号,它不能直接进行一般算术运算。所以,在进人ADPCM编码前,必须把A律PCM码变换成自然二进码,又称为PCM线性码。这可以通过两者之间内在的对应关系来实现。在接收端,则需要进行一次反变换,即将收到的60路的2048kbit/s的信号,分解成两个含30条话路的信号,且这两个PCM信号中各话路所占时隙位置与编码转换前完全相同,从而实现了在不提高传输速率的情况下将数字信道的容量扩大一倍。即用ADPCM码解码得到的线性PCM码来表示重建的信号,然后变换成A成律或u律后对数信号输出。
对于本文提出的ADPCM在通信中的应用,本文提出的飞行员语音采集及遥测系统主要采用ADPCM 的编码方式,之所以采用该编码方式即在保证通话质量的同时尽可能压缩声音流的大小,保证有限的传输信道传递更多的信息。系统框图如图 3 所示:
图3.1 飞行员语音采集系统框图
4、总结
ADPCM算法能够很好地压缩语音信号,从而大大缩减数据存储空间,并且提高数据的传输速度。与其它编码方式相比,ADPCM能提供跟高的压缩比,提高了频率利用率,因此在频带紧缺的现代通信中具有广泛的应用前景。通过 ADPCM 编码方式对飞行员语音进行编码,可以很好地对语音信号进行压缩,减少数据存储空间并大大提高了数据的传输速率,节约了资源占用量。ADPCM 作为一种经典语音编码方式算法较为简单,节约资源的同时也保证了语音的高质量。
参考文献
[1] 李白萍.现代通信理论.西安电子科技大学出版社.2006
[2] 廖广锐,刘萍.基于ADPCM的语音压缩算法研究.计算机与数字工程.第35卷2007第7期
[3] 曹志刚,钱亚生编著.现代通信原理[M] .清华大学出版社,1992
[4] 杨自.ADPCM语音解码合成输出系统的设计.光通信研究.2009年第1期
[5] 钱亚生,冯重熙.自适应差分脉冲调制(ADPCM)<续>[J] .电信科学.1987年05期
[6] Bernard Sklar. Digital Communications Fundamentals and Applications. Second Edition.Beijing: Publishing House of Electronics Industry, 2002下载本文