PCM编解码电路仿真实现

2021-06-17 06:53刘新红
电子制作 2021年1期
关键词:接收端二进制折线

刘新红

(北京信息职业技术学院,北京,100018)

0 引言

PCM(Pulse Code Modulation)脉冲编码调制,是一种用一组二进制数字代码来代替连续信号的抽样值,从而实现通信的方式。由于这种通信方式抗干扰能力强,在光纤通信、数字微波通信、卫星通信中得到了广泛应用[1-2]。

文献[3-4]只是对PCM系统进行了仿真,但并未对系统结构和各环节功能作用进行分析。

文献[5]基于Simulink设计了脉冲编码调制系统,使用PCM编解码模块分析了均匀量化、非均匀量化信噪比的变化,没有深入PCM编解码实现本身。

文献[6]基于LABVIEW 对PCM 编译码系统进行了仿真设计,使用13折线法实现A律压缩,但没有考虑传输中误码因素的影响。

文献[7]基于Simulink设计了PCM语音通信系统,只是使用了A律压缩的压缩模块,并未提及13折线法实现A律压缩。

本文在分析PCM编解码原理基础上构建基于Simulink的PCM编解码系统模型,分析A律压缩PCM编码的意义和方法,对各环节仿真波形进行分析,对比A律压缩的函数准确实现和13折线近似实现以及信道有干扰情况下有无信道编解码实现检错纠错对PCM解码信号的影响,有助于深入理解和运用PCM编解码技术。

1 PCM原理

脉冲编码调制在通信系统中完成将语音信号数字化的功能,其实现过程包括 3 个步骤:抽样、量化和编码。分别完成时间上离散、幅度上离散及量化信号的二进制表示。量化方法一般采用压扩非均匀量化,即对于信号取值小的区间,其量化间隔也小;反之,量化间隔就大。 根据 CCITT两种建议方式分别为 A 律和µ律方式。 PCM根据语音信号小信号比例大的特点采用A律或µ率压缩,我国采用A律压缩,变换关系为:

式中A为压扩参数,A值越大压扩效果越明显,A=1时无压缩。国际标准取值A=87.6。

该压扩曲线难以严格实现,采用A率13折线法近似压扩特性曲线。

由于压扩曲线函数奇对称,因此,分析第一象限的部分即可。

将x归一化到[0,1]区间,不断对分为8段,1,1/2,1/4,1/8,1/16,1/32,1/64,1/128,0。

将y归一化到[0,1]区间,等间隔分为8段,1,7/8,6/8,5/8,4/8,3/8,2/8,1/8,0。

将每一段16等分。

PCM按8位二进制编码,1位符号码,3位段落码,4位段内码。

减少数据量并保证处理后的信号质量没有明显下降是信源编码的任务。根据语音信号小信号比例大的特点,为减小数字化过程中量化误差,提高处理后语音信号质量,采用非均匀量化编码。A律压缩PCM编解码最小量化单位为1/2048,要达到这样的量化级采用均匀量化需要11bit编码值,而采用A率压缩只用了7bit,减少了4bit。编解码处理后信号质量却是相当。

2 PCM编解码模型构建

PCM编解码模型如图1所示。

用正弦波模拟信号,设置频率2000Hz,零阶保持模块完成采样保持,采样周期1/20000s,饱和模块将信号幅度限制在[-1,1]间,继电器模块取出信号的符号并将负数编成0,正数编成1输出,即信号小于0输出0,大于0输出1。绝对值模块把信号负值变为正值,使后续模块只处理信号的大小而不考虑符号。查找表模块实现13折线A律压缩,经压缩后信号取值范围[0,1],经过增益模块放大127倍,使取值范围变为[0,127],经过间隔为1的均匀量化器将幅值连续的信号离散成只能取[0,127]间整数值的数字信号。经过整数到二进制变换模块变换成7位二进制数,经合路模块将符号位和数值位合为8位PCM编码值。由此完成PCM编码。

PCM编码值经缓存模块串行化为比特流,经二进制对称信道传送到接收端,信道设置误码率5%,为了检错纠错降低由于传输带来的误码,加入了(7,4)二进制循环编解码模块。

接收端从信道接收二进制数据后经循环码解码模块检错纠错后送入缓存器,缓存器将数据变换为8位二进制数据,也就是接收的PCM编码数据,经分路器将8位分离,最高位符号位0,1经继电器模块变换为-1,1。低7位经合路器变为7位二进制数,经二进制到整数值变换模块变为[0,127]整数,经增益模块将信号值衰减到[0,1],经A律扩展模块恢复出压缩前信号。解压后的值加上符号就得到了解码后的PCM值。经低通滤波器滤除高频信号,得到发送的信号。由于信道中的干扰,使接收端恢复出的模拟信号和发端相比有一定的失真。

模型中压缩和解压缩应该用同种方式实现,本文为了对比选用了不同的方式,A律压缩解压缩模块实现的是按式(1)实现的准确的压缩解压缩变换,而查找表方式是按13折线法实现的近似压缩解压缩变换。仿真对比了2种方式的PCM编码值是有小差别的,但从变换前后采样点波形看不出明显不同,这也是可以采用13折线近似实现A律压缩与解压缩的原因。

模型中如果用(7,4)信道编码检错,信道编码模块前的缓存器输出应设为4位,以满足二进制循环编码器的输入要求,不用设为1位实现并行数据转串行输出即可。

3 PCM编解码模型仿真波形分析

仿真波形图如图2、3所示,图2为有信道编解码时的PCM编解码仿真波形图,图3为无信道编解码时的PCM编解码仿真波形图。

图2、3仿真波形图中波形1到6依次是发端待PCM编码发送的原始模拟正弦信号,接收端PCM解码恢复出的模拟正弦信号,接收端收到的PCM编码符号,发端PCM编码数值,收端PCM编码数值,接收端PCM解码波形。

图1 PCM编解码仿真电路图

图2 有信道编解码时的PCM编解码仿真波形图

图3 无信道编解码时的PCM编解码仿真波形图

从波形4、5可以看出,经A律压缩后采样点数值中小值被放大,大值被压缩。由于信道干扰接收端PCM采样波形样值发生改变,样值点波形发生畸变。

波形3的符号波形也由于信道干扰而畸变,因此,由波形5的数值加上波形3的符号恢复出的带符号的采样值波形自然也发生畸变。

对比图2、3的波形2、3、5、6可以看出,经过信道编码纠错波形畸变明显减轻。接收端恢复出的模拟信号失真减小。

4 结束语

根据PCM编解码原理构建了基于Simulink的PCM编解码系统模型,仿真结果表明系统能够实现PCM编解码。分析了A律压缩PCM编码的意义和方法,对各环节仿真波形进行了分析,对比了A律压缩的函数准确实现和13折线近似实现以及信道有干扰情况下有无信道编解码实现检错纠错对PCM解码信号的影响,有助于深入理解和运用PCM编解码技术。

实际13折线A律PCM编解码实现时采用逐次比较法将压缩和编码合二为一一步实现,而不是像模型中的先进行压缩变化再均匀量化编码。

猜你喜欢
接收端二进制折线
基于光载波携能的制导武器无线携能通信研究
基于扰动观察法的光通信接收端优化策略
有用的二进制
用Scratch把十进制转为二进制
五分钟教你读懂疫情分析报告
有趣的进度
手机无线充电收发设计
折线
折线图案
基于盲波束形成的MIMO雷达稳健参数估计