清华大学2012届毕业设计说明书
5 通信系统信道编码研究及其仿真分析
5.1 信道编码的概念
在数字通信中,根据不同的目的,编码可分为信源编码和信道解码。信源编码是为了提高数字信号的有效性以及为了使模拟信号的数字化二采取的编码。信道解码是为了降低误码率,提高数字通信的可靠性而采取的编码【20】。
信道编码是为了与信道的统计特性相匹配,并区分通路和提高通信的可靠性,而在信源编码的基础上,按一定规律加入一些新的监督码元,以实现纠错的编码。
信道编码是现代通信系统广泛采用的一种差错控制措施。它的基本思想是:在信道编码过程中,发送端通过某种方式对信息序列进行计算,得到相应的检错/纠错编码.然后把这个检错/纠错编码附加到信息序列中,经过载波调制之后发射出去。接收端对这个序列实旋信道编码的逆过程之后,就得到了所需要的信息序列,同时也知道了该序列是否存在着传输错误。如果信道编码只具有检错能力,它可以通过发送端的重传过程来纠正这个错误;如果信道编码还具有一定的纠错能力,它就可能纠正这个错误,但是前提是接收信号中误码的个数没有超出信道编码的纠错能力。 5.2 差错控制编码的分类
(1)差错控制编码(信道编码)按功能分为检错编码和纠错编码。其中,检错编码只能发现错误。纠错编码不仅能检查到错误,还能自动加以纠正。
(2)差错控制编码(信道编码)按码组内部关系分为线性编码和非线性编码。其中,线性编码是码祖内的信息码元和监督码元之间的关系能用线性代数方程组描述的。非线性编码是码组内的信息码元和监督码元之间的关系不能用线性代数方程组描述的。 (3)差错控制编码(信道编码)按对信息码元处理的方式分为分组成线性关系码和卷积码。其中分组码是将K个信息码元划分为一组,然后由这k个码元按照一定的规则产生r个监督码元,从而组成长度为n=k+r的码字。如果其中的监督码元与信息码元的关系。则称其为线性份码组,其中每组的监督码元仅与本组的码元信息有关而与其他组的码元
第 31 页 共 50 页
清华大学2012届毕业设计说明书
信息无关。卷积码:虽然编码以后码元序列也划分为码组,但每组的监督码元不但与本组的信息码元有关,而且与前面码组也有约束关系。由于卷积码充分利用了各码组间的相关性,其性能要优于分码祖。 5.2.1 分组码
分组码是把若干个输入信号变成一个更长的输出序列的编码方式,它通过提供编码的冗余度来实现对信号的检错和纠错。假设输入信号是一个长度为k的向量x,经过分组编码之后的输出信号是一个长度为n的向量y,则这个分组编码表示为(n,k),其中信息位的长度等于k,码长为n,监督位的长度r=n一k,编码效率等于k/n=1一r/n。对于分组码,输出序列y一般可以表示成输入向量x与生成矩阵G的乘积,其中G是一个k行n列的矩阵。
BCH码是一种特别重要的分组码。BCH码的重要性在于它解决了生成多项式与纠错能力之间的关系问题,可以方便地纠正多个随机错误。对于特定的码子长度n,BCH码只能对特定的长度为k的信息序列进行编码。Reed-Solomon码是一种具有很强纠错能力的多进制BCH码(简称RS码),它是以两个发明人的名字Reed和Solomon命名的。对于一个M进制RS码,它的输入和输出信号的范围都等于[0,M一1],其中M=2m。RS码的码长度n=M一1=2m一l,如果信息位的长度等于k,则监督位的长度r=n一k。另外,RS码具有很强的纠错能力,假设它能够纠正r个错,则RS码的监督位长度,和r之间应该满足关系r=n一k=2t。因此,RS码的长度与信息位长度之间的差值应该是一个偶数,同时,RS码的最小码元距离为: d0=r+1=2t+1 5.1
RS码的输入信号还可以用二进制符号来表示,每个M进制符号可以表示成m位二进制符号。
5.2.2 卷积码
卷积码与分组码不同。在分组码中,任何一段规定时间内编码器的输出完全决定于这段时间中的输入信号;而在卷积码中,任何一段规定时间的n个码元不仅取决于这段时间内的k个信息位,而且还取决于前N一1段时间内的信息位,这个N就成为卷积码的约
第 32 页 共 50 页
清华大学2012届毕业设计说明书
束长度。
卷积编码器的表示有两种方式:用多项式表示以及用Trelli s图表示。卷积编码器的多项式表示由三部分组成:约束长度,生成多项式以及反馈多项式。如果卷积的多项式表示由3部分组成:约束长度、生成多项式以及反馈多项式。如果卷积编码器只有一个输入时,它的约束长度是一个标量,并且等于卷积编码器中储存的信息位的个数(包括移位寄存器的个数以及当前的输入信号)。如果卷积编码器有多个输入,则约束长度是一个向量,其中的每一个元素对应于一个输入信号在卷积编码器中存储的信息位的个数。假设卷积编码器有七个输入信号和输出信号,则这个卷积编码器的生成多项式是一个七行列的矩阵G=(gij)k.n,其中的每一个元素gij表示第i个输入信号对第j个输出信号的影响。如果第i个输入信号对第j个输出信号有影响,则gij=1;否则gij=0。对于带反馈的卷积编码器,还需要指定相应的反馈多项式。如果卷积编码器只有一个输入信号,则反馈多项式是一个标量。当卷积编码器有多个输入信号时,反馈多项式是一个向量,它的长度等于卷积编码器输入信号的个数。 5.2.2 循环冗余码
循环冗余码CRC是一种使用相当频繁的检错码。与分组码不同的是.循环冗余码不具有纠错能力。当接收端检测到传输错误时,它并不去纠正这个传输错误,而是要求发送端重新发送这个信号序列。在循环冗余码的编码过程中,发送端对一个特定长度的信息序列计算得到一个循环冗余码,并且把这个循环冗余码附加到原来信息序列的末尾一起发送出去。接收端接收到带有循环冗余码的信号后,从中分离出信息序列和循环冗余码,然后根据接收到的信息位序列重新计算循环冗余码。如果这个重新计算得到的循环冗余码与分离出来的循环冗余码不同,则接收信号序列存在着传输错误。这时候接收端会要求发送端的重新发送这个信号序列,通过这个过程实现对信号的纠错。 5.3 仿真系统设计 5.3.1 RS编码纠错性能设计 (1)仿真模型设计思路
第 33 页 共 50 页
清华大学2012届毕业设计说明书
在早期的移动通信系统中,数据在传输过程中出现错位之后一般是通过前向纠错来纠正的,即在传输信号中引入一定的冗余度来实现信号的纠错功能。由于RS具有较强的纠错能力,因此在移动通信系统中得到了广泛的应用。本仿真模型将对第二代无绳电话系统(CT2)数据业务中采用的RS编码进行仿真,由此来分析BCH编码的纠错能力。
(2) 仿真系统模型结构组成及分析
图5.1 加入干扰的高斯白噪声信道
图5.2 RS编解码系统仿真框图
先由Random Integer Generator 产生随机的二进制信号,然后经过MPSK 调制器,产生2PSK 信号,再经过有突发干扰的AWGN Channel,然后经过MPSK 解调,将解调后的信号与原信号通过Erro Rate Calculation 进行比较,得出误码率。然后通过M 文件编程可得到误码率随信噪比变化图。
(3) 仿真模型运行结果及其分析
第 34 页 共 50 页
清华大学2012届毕业设计说明书
图5.3 RS信噪比-误码率关系曲线
在上述两图中x 轴表示信噪比,y 轴表示的是误码率( 对数坐标) 。
在仿真运行结果中,对信息进行RS 编码后,相同信噪比下误码率明显降低;并且RS 码在经过加有突发干扰的高斯白噪声信道后有如下特性:
( 1) 整个系统可达10-5的误码率。也就是说RS 码不仅可以很好地纠正随机错误,而且对突发错误也具有良好性能;
( 2) 误码率随着信噪比的增加而降低;
( 3 ) 在信道质量较差时( 信噪比约小于2 dB) ,不同RS码码长和不同校验位长度对接收数据误码率改善情况差别不大;
( 4) 当信噪比约大于2dB 时不同RS 码码长和不同校验位长度对接收数据误码率改善情况明显不同: 在信噪比相同、码长相同的情况下,RS码的误码率随着信息位的减少而减少,即随着校验位长度的增加而降低;
5.3.2 卷积编码软判决译码和硬判决译码性能分析 (1) 仿真模型设计思路
卷积译码器执行的是卷积编码器的逆过程,用于从卷积编码器的输出信号中恢复出原始的信息序列。在MATLAB中有两种类型的卷积译码器,即后验概率卷积译码器以及维特比译码器。
第 35 页 共 50 页