APP下载

基于MATLAB/Simulink 的DM 和ADM 编解码系统实验仿真*

2020-12-23康朝红

通信技术 2020年10期
关键词:译码步长斜率

王 欣,陶 杰,康朝红

(1.陆军工程大学石家庄校区 电子与光学工程系 河北 石家庄 050003;2.石家庄铁道大学四方学院 河北 石家庄 050003)

0 引言

Simulink 是MATLAB 中的一个可视化建模和仿真平台,它将代码模块化,只要将模块的输入、输出设定正确,就能够实现其功能,因此搭建系统模型是完成仿真的基础。在通信原理课程中,强调的通信意识非常重要,通信系统的建立根据实际要求来建立。通信系统最基本的模型有信源、信道和信宿,而信源产生的信号多为模拟信号,如语音或图像等信号,必须将模拟信号转换为数字信号,则必不可少的就是编码解码,这也是通信系统的精髓之一,因此分析通信系统时很重要的一部分就是编码、解码。根据基本理论,搭建通信模型,设定模块参数,通过仿真,对不同信号分析,找到其各自的适用场合。

1 增量调制(DM)系统

对模拟信号数字化,最常用的方法是脉冲编码调制(Pulse Code Modulation,简称 PCM),然而其编码位数多,占用带宽宽,对于频谱资源有限的系统,会受到一定的限制。因此出现了传出差值再进行编码,这就是DPCM 编码[1],其编码位数减少,占用频谱资源少,如果抽样频率很高,抽样的时间隔Ts 很小,那么相邻抽样点信号的幅度一般不会变化很大。前一抽样点的幅值加上(或减去)当前样值的差值,就能十分逼近当前抽样点信号的幅值。将这些差值编码发出去,同样可以传送该连续信号所含的消息[2],这个差值就称为“增量”(Delta Modulation,简称DM)。

1.1 增量调制编译码工作原理

增量调制编码时,将量化器量化电平数取为2,如图1 所示,输入模拟信号与预测信号相减[3],得到预测误差ek。预测误差被量化为rk,它只有两个电平+σ或-σ,σ为量化台阶。若预测误差为正值,则判决输出电压+σ,用1 代表;若预测误差为负值,则判决输出电压-σ,用0 代表。

图1 编码器

在译码器端,如图2 所示,接收端只要收到一个“1”码元就使其输出升高σ,每收到一个“0”码元就使其输出降低σ,这样就可以恢复出阶梯型电压[4],这个电压通过低通滤波器平滑后,就能得到十分接近编码器输入的模拟信号。

图2 译码器

1.2 增量调制仿真模型

根据增量调制编译码工作原理,建立仿真模型,如图3 所示。

输入信号m(t)的Fcn 功能模块如图4 所示,将函数写入,再通过抽样保持模块Zero-Order Hold 模块进行抽样[5],抽样时间设为0.001s。

图3 增量调制仿真模型

图4 Fcn 功能模块

对应将二电平量化,采用了Relay 模块,将其门限值设为0,输出值分别设为0.4 和-0.4,也就是量化台阶为0.4。Unit Delay 模块将前一个值作为新的预测值。而Relay1 模块用于编码[6],将其门限值设为0,输出值分别设为1 和0,也就是如果量化台阶大于0,输出1,否则输出0。

在解码端,Relay2 模块用于译码,将其门限值设为0.5,输出值分别设为0.4 和-0.4,也就是如果接收的码大于0.5,则在原来信号基础上增加输出量化台阶0.4,否则降低量化台阶。其仿真结果如图5 所示,黄色线为原信号,紫色线为译码后信号。图6 为DM 编码结果。

图5 原信号及译码信号

图6 DM 编码

由仿真结果可以看出,用DM 进行编码时,是用增量σ来量化的(增、减一个σ值),译码后的信号与原始信号始终存在误差[7],这就是一般量化误差,它是由于编码方式导致的,并且永远存在,并且误差最大值为量化台阶值σ。在信号变换较快时,由于量化台阶σ固定,σ跟不上信号的变换,这就造成了过载量化误差,这是由于信号变换过快导致的,这种误差较大,会大于σ。

1.3 如何避免过载现象

由于过载量化误差对通信影响很大,因此在实际应用中应尽量避免过载现象的出现。假设模拟信号为m(t),则

要想避免过载,解决方法有两个:一是采用变化量阶σ,使之随输入信号斜率的变化而变化,斜率大时,σ随之增大,从而减小过载噪声;斜率小时,σ随之减小,从而减小一般噪声。连续可变斜率增量调制(Continuous Variable Slope Delta Modulation简称CVSD)[8]就是根据此思想设计的。二是提高fs,但不能提高太多,否则传输速率增大,所需系统传输频带加宽。

亦可将式(1)改写成

可以看出,当抽样斜率一定时,允许的信号幅度随信号频率的增加而减小,这将导致语音高频段的量化信噪比下降。这也是简单增量调制不能实用的一个主要原因。为了克服这个问题,提出了多种改进的自适应增量调制系统。

2 自适应增量调制(ADM)系统

为了减小量化误差,改进了增量调制系统,自适应地改变σ的大小,这就是自适应增量调制系统(Adaptive Delta Modulation,简称ADM)。自适应增量调制(ADM)的特点是量化器的量阶能自动跟随信号幅度变化而改变,从而扩大了动态范围。为了验证其量化误差与增量调制系统量化误差之间的关系,将其进行仿真。

2.1 自适应增量调制系统仿真模型

根据自适应增量调制系统的产生原理,在增量调制系统基础上增加了自适应步长的调整[9]。自适应增量调制系统的产生框图,如图7 所示,与增量调制系统原理是相同的,参数设置也是相同的。自适应步长的调整,也就是图7 的Subsystem,其子函数为图8,首先通过Relay 模块,设置量化误差为±1,再通过单位延时模块Uint Delay 模块,再相乘,目的是得到前后两个量化误差是否为同符号,来调整步长。通过Fcn 模块设定调整步长,Fcn 中的数学表达式设为1.3^u(1),也就是前后两次采用值同符号,则步长乘以1.3,来增大步长,如果前后两个采样值符号相反,也就是信号从上升变为下降或从下降变为上升时,步长除以1.3。在解码端,Subsystem1 与编码端的Subsystem 子模块是相同的,原理相同,各个参数的设置也是相同的。

图7 ADM 调制系统

图8 Subsystem 子函数

2.2 仿真结果分析

通过构建ADM 系统模型,得出仿真结果如图9 和图10 所示,图9 中黄色线为输入原始信号,紫色线为ADM 译码得到的信号。通过实验仿真结果可以看出,量化台阶σ可以自适应的增大或减小,译码信号能较好地跟上原始信号的变化,因此过载量化噪声[10]减小了,但是在信号变换(上升变为下降或下降变为上升)时,由于量化台阶σ可能变大,致使一般量化噪声变大,而σ小时,一般量化噪声也小。图10 中,ADM 编码和DM 编码原理是类似的,编码位数为1 位,只与编的前一位码进行比较,得到0 或1 码。

图9 原信号及ADM 译码信号

图10 ADM 编码

输入任意的信号都适合ADM 吗?下面我们来进行分析。

(1)信号斜率较大

信号斜率大,量化台阶σ固定不变,如果,则编码跟不上信号的变化,致使过载量化噪声过大。

增量译码跟不上信号的变化,如图11 所示,导致过载量化噪声很大[11]。ADM 译码如图12 所示,能够避免过载量化噪声,能够更加准确地恢复出原始信号。

(2)信号幅度变化缓慢

信号幅度变化缓慢时,DM 编码保持量化台阶不变,导致一般量化噪声较大,并且如果信号在时,信号编码一直是0101,如图13 所示……而ADM 编码时,量化台阶自适应地调整,使一般量化噪声减小[12]如图14 所示。

(3)信号频率较大,并且量化台阶跟的上信号的变化

图11 斜率大时,DM 译码与原信号比较

图12 斜率大时,ADM 译码与原信号比较

图13 斜率小时,DM 译码与原信号比较

信号频率过大,而量化台阶能跟踪上信号的变化时,DM 编码过载量化噪声和一般量化噪声都比较小,如图15 所示。而ADM 由于量化台阶不断变化,有时不能迅速将量化台阶减小,致使一般量化噪声较大,如图16 所示。

图15 能跟踪上信号DM 译码与原信号比较

图16 能跟踪上信号ADM 译码与原信号比较

因此,不同的通信系统应用不同的编码方式,如果信号变换斜率总是很大,则宜选择ADM 编码,减小过载量化噪声,如果信号总是由上升变为下降或下降变为上升,而信号斜率不大的情况适宜选择DM 编码。

3 结语

在选用通信系统时,要考虑的方面很多,如通信系统两个重要的性能指标:有效性和可靠性,通过仿真进行比较,选定系统。首先构建出正确的通信系统模型,通过Simulink选定模块,搭建系统框图。其次通过改变输入信号的条件,得到不同信号的仿真结果。在常见编码中,DM 和ADM 系统占用带宽窄,有效性高。给定不同输入信号,其译码恢复原信号会有不同的误差。最后根据实际输入信号的要求,通过仿真比较,决定选用哪种系统。

猜你喜欢

译码步长斜率
极化码自适应信道译码算法
自然梯度盲源分离加速收敛的衡量依据
基于Armijo搜索步长的BFGS与DFP拟牛顿法的比较研究
基于扩大候选码元范围的非二元LDPC加权迭代硬可靠度译码算法
一种改进的变步长LMS自适应滤波算法
分段CRC 辅助极化码SCL 比特翻转译码算法
基于校正搜索宽度的极化码译码算法研究
物理图像斜率的变化探讨
求斜率型分式的取值范围
基于动态步长的无人机三维实时航迹规划