数字通信第10章差错控制编码课件_第1页
数字通信第10章差错控制编码课件_第2页
数字通信第10章差错控制编码课件_第3页
数字通信第10章差错控制编码课件_第4页
数字通信第10章差错控制编码课件_第5页
已阅读5页,还剩133页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第10章差错控制编码

10.1概述10.2常用的几种简单分组码10.3线性分组码10.4循环码10.5卷积码*10.6网格编码调制第10章差错控制编码10.1概述10.1概述

10.1.1信道编码在数字通信中,根据不同的目的,编码可分为信源编码和信道编码。信源编码是为了提高数字信号的有效性以及为了使模拟信号数字化而采取的编码。信道编码是为了降低误码率,提高数字通信的可靠性而采取的编码。数字信号在传输过程中,加性噪声、码间串扰等都会产生误码。为了提高系统的抗干扰性能,可以加大发射功率,降低接收设备本身的噪声,以及合理选择调制、解调方法等。此外,还可以采用信道编码技术。10.1概述10.1.1信道编码10.1.2差错控制方式

图10-1差错控制方式

10.1.2差错控制方式图10-1差错控制方式1.检错重发方式检错重发又称自动请求重传方式,记作ARQ(AutomaticRepeatRequest)。由发端送出能够发现错误的码,由收端判决传输中无错误产生,如果发现错误,则通过反向信道把这一判决结果反馈给发端,然后,发端把收端认为错误的信息再次重发,从而达到正确传输的目的。其特点是需要反馈信道,译码设备简单,对突发错误和信道干扰较严重时有效,但实时性差,主要在计算机数据通信中得到应用。1.检错重发方式2.前向纠错方式前向纠错方式记作FEC(ForwordErrorCorrection)。发端发送能够纠正错误的码,收端收到信码后自动地纠正传输中的错误。其特点是单向传输,实时性好,但译码设备较复杂。

2.前向纠错方式3.混合纠错方式混合纠错方式记作HEC(HybridErrorCorrection)是FEC和ARQ方式的结合。发端发送具有自动纠错同时又具有检错能力的码。收端收到码后,检查差错情况,如果错误在码的纠错能力范围以内,则自动纠错,如果超过了码的纠错能力,但能检测出来,则经过反馈信道请求发端重发。这种方式具有自动纠错和检错重发的优点,可达到较低的误码率,因此,近年来得到广泛应用。3.混合纠错方式

另外,按照噪声或干扰的变化规律,可把信道分为三类:随机信道、突发信道和混合信道。恒参高斯白噪声信道是典型的随机信道,其中差错的出现是随机的,而且错误之间是统计独立的。具有脉冲干扰的信道是典型的突发信道,错误是成串成群出现的,即在短时间内出现大量错误。短波信道和对流层散射信道是混合信道的典型例子,随机错误和成串错误都占有相当比例。对于不同类型的信道,应采用不同的差错控制方式。另外,按照噪声或干扰的变化规律,可把信道分为10.1.3纠错码的分类(1)根据纠错码各码组信息元和监督元的函数关系,可分为线性码和非线性码。如果函数关系是线性的,即满足一组线性方程式,则称为线性码,否则为非线性码。(2)根据上述关系涉及的范围,可分为分组码和卷积码。分组码的各码元仅与本组的信息元有关;卷积码中的码元不仅与本组的信息元有关,而且还与前面若干组的信息元有关。(3)根据码的用途,可分为检错码和纠错码。检错码以检错为目的,不一定能纠错;而纠错码以纠错为目的,一定能检错。10.1.3纠错码的分类10.1.4纠错编码的基本原理

1.分组码分组码一般可用(n,k)表示。其中,k是每组二进制信息码元的数目,n是编码码组的码元总位数,又称为码组长度,简称码长。n-k=r为每个码组中的监督码元数目。简单地说,分组码是对每段k位长的信息组以一定的规则增加r个监督元,组成长为n的码字。在二进制情况下,共有2k个不同的信息组,相应地可得到2k个不同的码字,称为许用码组。其余2n-2k个码字未被选用,称为禁用码组。

10.1.4纠错编码的基本原理1.分组码

在分组码中,非零码元的数目称为码字的汉明重量,简称码重。例如,码字10110,码重w=3。两个等长码组之间相应位取值不同的数目称为这两个码组的汉明(Hamming)距离,简称码距。例如11000与10011之间的距离d=3。码组集中任意两个码字之间距离的最小值称为码的最小距离,用d0表示。最小码距是码的一个重要参数,它是衡量码检错、纠错能力的依据。

在分组码中,非零码元的数目称为码字的汉明重量2.检错和纠错能力

若分组码码字中的监督元在信息元之后,而且是信息元的简单重复,则称该分组码为重复码。它是一种简单实用的检错码,并有一定的纠错能力。例如(2,1)重复码,两个许用码组是00与11,d0=2,收端译码,出现01、10禁用码组时,可以发现传输中的一位错误。如果是(3,1)重复码,两个许用码组是000与111,d0=3;当收端出现两个或三个1时,判为1,否则判为0。此时,可以纠正单个错误,或者该码可以检出两个错误。2.检错和纠错能力若分组码码字中的监督

码的最小距离d0直接关系着码的检错和纠错能力;任一(n,k)分组码,若要在码字内:(1)检测e个随机错误,则要求码的最小距离d0≥e+1;(2)纠正t个随机错误,则要求码的最小距离d0≥2t+1;(3)纠正t个同时检测e(≥t)个随机错误,则要求码的最小距离d0≥t+e+1。

码的最小距离d0直接关系着码的检错和纠错能力3.编码效率用差错控制编码提高通信系统的可靠性,是以降低有效性为代价换来的。我们定义编码效率R来衡量有效性:R=k/n其中,k是信息元的个数,n为码长。对纠错码的基本要求是:检错和纠错能力尽量强;编码效率尽量高;编码规律尽量简单。际中要根据具体指标要求,保证有一定纠、检错能力和编码效率,并且易于实现。3.编码效率10.2常用的几种简单分组码10.2.1奇偶监督码

奇偶监督码是在原信息码后面附加一个监督元,使得码组中“1”的个数是奇数或偶数。或者说,它是含一个监督元,码重为奇数或偶数的(n,n-1)系统分组码。奇偶监督码又分为奇监督码和偶监督码。10.2常用的几种简单分组码10.2.1奇偶监督码设码字A=[an-1,an-2,…,a1,a0],对偶监督码有

奇监督码情况相似,只是码组中“1”的数目为奇数,即满足条件而检错能力与偶监督码相同。奇偶监督码的编码效率R为(10-1)(10-2)设码字A=[an-1,an-2,…,a1,a0],对偶监督码10.2.2行列监督码奇偶监督码不能发现偶数个错误。为了改善这种情况,引入行列监督码。这种码不仅对水平(行)方向的码元,而且对垂直(列)方向的码元实施奇偶监督。这种码既可以逐行传输,也可以逐列传输。一般地,L×M个信息元附加L+M+1个监督元,组成(LM+L+M+1,LM)行列监督码的一个码字(L+1行,M+1列)。图10-2是(66,50)行列监督码的一个码字。这种码具有较强的检测能力,适于检测突发错误,还可用于纠错。10.2.2行列监督码图10-2(66,50)行列监督码

图10-2(66,50)行列监督码10.2.3恒比码

码字中1的数目与0的数目保持恒定比例的码称为恒比码。由于恒比码中,每个码组均含有相同数目的1和0,因此恒比码又称等重码,定1码。这种码在检测时,只要计算接收码元中1的数目是否正确,就知道有无错误。

目前我国电传通信中普遍采用3∶2码,又称“5中取3”的恒比码,即每个码组的长度为5,其中3个“1”。这时可能编成的不同码组数目等于从5中取3的组合数10,这10个许用码组恰好可表示10个阿拉伯数字,如表7-1所示。而每个汉字又是以四位十进制数来代表的。实践证明,采用这种码后,我国汉字电报的差错率大为降低。

10.2.3恒比码码字中1的数目与表10-13∶2恒比码表10-13∶2恒比码10.3线性分组码

在(n,k)分组码中,若每一个监督元都是码组中某些信息元按模二和而得到的,即监督元是按线性关系相加而得到的,则称线性分组码。或者说,可用线性方程组表述码规律性的分组码称为线性分组码。

现以(7,4)分组码为例来说明线性分组码的特点。设其码字为A=[a6

a5

a4

a3

a2

a1

a0],其中前4位是信息元,后3位是监督元,可用下列线性方程组来描述该分组码,产生监督元。

(10-3)10.3线性分组码在(n,k)分组码中,表10-2(7,4)码的码字表表10-2(7,4)码的码字表10.3.2监督矩阵H和生成矩阵G

式(10-3)所述(7,4)码的3个监督方程式可以改写为

(10-4)

这组线性方程可用矩阵形式表示为

(10-5)

10.3.2监督矩阵H和生成矩阵G式(10-3)所述(并简记为

(10-6)

其中,AT是A的转置,0T是0=[000]的转置,HT是H的转置。(10-7)

H称为监督矩阵,一旦H给定,信息位和监督位之间的关系也就确定了。H为r×n阶矩阵,H矩阵每行之间是彼此线性无关的。式(10-7)所示的H矩阵可分成两部分并简记为(10-6)其中,AT是A的转置,0T是0=[0

其中,P为r×k阶矩阵,Ir为r×r阶单位矩阵。可以写成H=[PIr]形式的矩阵称为典型监督矩阵。HAT=0T,说明H矩阵与码字的转置乘积必为零,可以用来作为判断接收码字A是否出错的依据。(10-8)其中,P为r×k阶矩阵,Ir为r×r阶单若把监督方程补充为下列方程

(10-9)

若把监督方程补充为下列方程(10-9)可改写为矩阵形式

(10-10)(10-11)

变换为

可改写为矩阵形式(10-10)(10-11)即变换为其中称为生成矩阵,由G和信息组就可以产生全部码字。G为k×n阶矩阵,各行也是线性无关的。生成矩阵也可以分为两部分,即

(10-12)(10-13)其中称为生成矩阵,由G和信息组就可以产生全部码字。G为k×其中

(10-14)Q为k×r阶矩阵,Ik为k阶单位阵。可以写成式(10-13)形式的G矩阵,称为典型生成矩阵。非典型形式的矩阵经过运算也一定可以化为典型矩阵形式。其中(10-14)Q为k×r阶矩阵,Ik为k阶单位阵。可以10.3.3伴随式(校正子)S

设发送码组A=[an-1,an-2,…,a1,a0],在传输过程中可能发生误码。接收码组B=[bn-1,bn-2,…,b1,b0],则收发码组之差定义为错误图样E,也称为误差矢量,即

其中E=[en-1,en-2,…,e1,e0],且当bi=ai

当bi≠ai

(10-15)(10-16)

10.3.3伴随式(校正子)S设发送码组A式(7-15)也可写作

令S=BHT,称为伴随式或校正子。

(10-17)

(10-18)

由此可见,伴随式S与错误图样E之间有确定的线性变换关系。接收端译码器的任务就是从伴随式确定错误图样,然后从接收到的码字中减去错误图样。式(7-15)也可写作令S=BHT,称为伴随式或校正子表10-3(7,4)码S与E的对应关系表10-3(7,4)码S与E的对应关系10.4循环码

循环码是一类重要的线性分组码,它除了具有线性码的一般性质外,还具有循环性,即循环码组中任一码字循环移位所得的码字仍为该码组中的一个码字。在代数理论中,为了便于计算,常用码多项式表示码字。(n,k)循环码的码字,其码多项式(以降幂顺序排列)为(10-19)10.4循环码循环码是一类重要的线性分表10-4(7,3)循环码表10-4(7,3)循环码10.4.1生成多项式及生成矩阵

如果一种码的所有码多项式都是多项式g(x)的倍式,则称g(x)为该码的生成多项式。在(n,k)循环码中任意码多项式A(x)都是最低次码多项式的倍式。如表7-4的(7,3)循环码中,

其它码多项式都是g(x)的倍式,即

10.4.1生成多项式及生成矩阵如果一种码因此,循环码中次数最低的多项式(全0码字除外)就是生成多项式g(x)。可以证明,g(x)是常数项为1的r=n-k次多项式,是xn+1的一个因式。循环码的生成矩阵常用多项式的形式来表示

(10-20)其中

(10-21)

因此,循环码中次数最低的多项式(全0码字除外)就是生成多例如(7,3)循环码,n=7,k=3,r=4,其生成多项式及生成矩阵分别为即

例如(7,3)循环码,n=7,k=3,r=4,其生成多

10.4.2监督多项式及监督矩阵为了便于对循环码编译码,通常还定义监督多项式,令

其中g(x)是常数项为1的r次多项式,是生成多项式;h(x)是常数项为1的k次多项式,称为监督多项式。同理,可得监督矩阵H

(10-22)(10-23)10.4.2监督多项式及监督是h(x)的逆多项式。例如(7,3)循环码,其中

(10-24)则

是h(x)的逆多项式。例如(7,3)循环码,其中(10-2即

即10.4.3编码方法和电路

在编码时,首先要根据给定的(n,k)值选定生成多项式g(x),即应在xn+1的因式中选一r=n-k次多项式作为g(x)。设编码前的信息多项式m(x)为(10-25)

10.4.3编码方法和电路在编码时,首先m(x)的最高幂次为k-1。循环码中的所有码多项式都可被g(x)整除,根据这条原则,就可以对给定的信息进行编码。用xr乘m(x),得到xr·m(x)的次数小于n。用g(x)去除xr·m(x),得到余式R(x),R(x)的次数必小于g(x)的次数,即小于(n-k)。将此余式加于信息位之后作为监督位,即将R(x)与xrm(x)相加,得到的多项式必为一码多项式,因为它必能被g(x)整除,且商的次数不大于(k-1)。循环码的码多项式可表示为(10-26)

其中,xr·m(x)代表信息位,R(x)是xr·m(x)与g(x)相除得到的余式,代表监督位。m(x)的最高幂次为k-1。循环码中的所有码多项式都可被g(图10-3(7,3)循环码编码电路

编码电路的主体由生成多项式构成的除法电路,再加上适当的控制电路组成。g(x)=x4+x3+x2+1时,(7,3)循环码的编码电路如图10-3所示。图10-3(7,3)循环码编码电路编码电

g(x)的次数等于移位寄存器的级数;g(x)的x0,x1,x2,…、xr的非零系数对应移位寄存器的反馈抽头。首先,移位寄存器清零,3位信息元输入时,门1断开,门2接通,直接输出信息元。第3次移位脉冲到来时将除法电路运算所得的余数存入移位寄存器。第4~7次移位时,门2断开,门1接通,输出监督元。具体编码过程如表10-5所示,此时输入信息元为110。

g(x)的次数等于移位寄存器的级数;g(x)表10-5(7,3)循环码的编码过程表10-5(7,3)循环码的编码过程10.4.4译码方法和电路

接收端译码的目的是检错和纠错。由于任一码多项式A(x)都应能被生成多项式g(x)整除,所以在接收端可以将接收码组B(x)用生成多项式去除。当传输中未发生错误时,接收码组和发送码组相同,即A(x)=B(x),故接收码组B(x)必定能被g(x)整除。若码组在传输中发生错误,则B(x)≠A(x),B(x)除以g(x)时除不尽而有余项,所以,可以用余项是否为0来判别码组中有无误码。在接收端采用译码方法来纠错自然比检错更复杂。同样,为了能够纠错,要求每个可纠正的错误图样必须与一个特定余式有一一对应关系。

10.4.4译码方法和电路接收端译码的目的是检错图10-4(7,3)循环码译码电路

图10-4(7,3)循环码译码电路10.5卷积码

10.5.1基本概念

卷积码又称连环码,是1955年提出来的一种纠错码,它和分组码有明显的区别。(n,k)线性分组码中,本组r=n-k个监督元仅与本组k个信息元有关,与其他各组无关,也就是说,分组码编码器本身并无记忆性。卷积码则不同,每个(n,k)码段(也称子码,通常较短)内的n个码元不仅与该码段内的信息元有关,而且与前面m段的信息元有关。通常称m为编码存储。卷积码常用符号(n,k,m)表示。

10.5卷积码10.5.1基本概念卷积码

图10-5是卷积码(2,1,2)的编码器。它由移位寄存器、模二加法器及开关电路组成。图10-5卷积码(2,1,2)编码器

图10-5是卷积码(2,1,2)的编码器。它由

起始状态,各级移位寄存器清零,即S1S2S3为000。S1等于当前输入数据,而移位寄存器状态S2S3存储以前的数据,输出码字C由下式确定起始状态,各级移位寄存器清零,即S1S2S3

当输入数据D=[11010]时,输出码字可以计算出来,具体计算过程如表10-6所示。另外,为了保证全部数据通过寄存器,还必须在数据位后加3个0。从上述的计算可知,每1位数据,影响(m+1)个输出子码,称(m+1)为编码约束度。每个子码有n个码元,在卷积码中有约束关系的最大码元长度则为(m+1)·n,称为编码约束长度。(2,1,2)卷积码的编码约束度为3,约束长度为6。

当输入数据D=[11010]时,输出码表10-6(2,1,2)编码器的工作过程表10-6(2,1,2)编码器的工作过程10.5.2卷积码的描述

1.树图

树图描述的是在任何数据序列输入时,码字所有可能的输出。对应于图10-5所示的(2,1,2)卷积码的编码电路,可以画出其树图如图10-6所示。10.5.2卷积码的描述1.树图树图描述的是图10-6(2,1,2)码的树图图10-6(2,1,2)码的树图

以S1S2S3=000作为起点,用a,b,c和d表示出S3S2的4种可能状态:00,01,10和11。若第一位数据S1=0,输出C1C2=00,从起点通过上支路到达状态a,即S3S2=00;若S1=1,输出C1C2=11,从起点通过下支路到达状态b,即S3S2=01;依次类推,可得整个树图。输入不同的信息序列,编码器就走不同的路径,输出不同的码序列。例如,当输入数据为[11010]时,其路径如图10-6中虚线所示,并得到输出码序列为[11010100…],与表10-6的结果一致。

以S1S2S3=000作为起点,用a,b,c和d表示2.状态图

除了用树图表示编码器的工作过程外,还可以用状态图来描述。图10-7就是该(2,1,2)卷积编码器的状态图。

在图中有4个节点a,b,c,d,同样分别表示S3S2的4种可能状态。每个节点有两条线离开该节点,实线表示输入数据为0,虚线表示输入数据为1,线旁的数字即为输出码字。2.状态图除了用树图表示编码器的工作过程外,还图10-7(2,1,2)码的状态图图10-7(2,1,2)码的状态图

3.格图格图也称网络图或篱笆图,它由状态图在时间上展开而得到,如图10-8所示。图中画出了所有可能的数据输入时,状态转移的全部可能轨迹,实线表示数据为0,虚线表示数据为1,线旁数字为输出码字,节点表示状态。3.格图图10-8(2,1,2)码的格图图10-8(2,1,2)码的格图10.5.3卷积码的译码

1.维特比译码维特比译码是一种最大似然译码算法。最大似然译码算法的基本思路是:把接收码字与所有可能的码字比较,选择一种码距最小的码字作为解码输出。由于接收序列通常很长,所以维特比译码时最大似然译码做了简化,即它把接收码字分段累接处理,每接收一段码字,计算、比较一次,保留码距最小的路径,直至译完整个序列。

10.5.3卷积码的译码1.维特比译码

现以上述(2,1,2)码为例说明维特比译码过程。设发送端的信息数据D=[11010000],由编码器输出的码字C=[1101010010110000],接收端接收的码序列B=[0101011010010010],有4位码元差错。下面参照图10-8的格状图说明译码过程。如图10-9所示,先选前3个码作为标准,对到达第3级的4个节点的8条路径进行比较,逐步算出每条路径与接收码字之间的累计码距。累计码距分别用括号内的数字标出,对照后保留一条到达该节点的码距较小的路径作为幸存路径。再将当前节点移到第4级,计算、比较、保留幸存路径,直至最后得到到达终点的一条幸存路径,即为解码路径,如图10-9中实线所示。根据该路径,得到解码结果。现以上述(2,1,2)码为例说明维特比译码过程。设图10-9维特比译码格图图10-9维特比译码格图

2.序列译码当m很大时,可以采用序列译码法。其过程如下:译码先从码树的起始节点开始,把接收到的第一个子码的n个码元与自始节点出发的两条分支按照最小汉明距离进行比较,沿着差异最小的分支走向第二个节点。在第二个节点上,译码器仍以同样原理到达下一个节点,以此类推,最后得到一条路径。若接收码组有错,则自某节点开始,译码器就一直在不正确的路径中行进,译码也一直错误。因此,译码器有一个门限值,当接收码元与译码器所走的路径上的码元之间的差异总数超过门限值时,译码器判定有错,并且返回试走另一分支。经数次返回找出一条正确的路径,最后译码输出。

2.序列译码*10.6网格编码调制(TCM)

网络编码调制(TrellisCodedModulation,缩写为TCM)技术。它是利用编码效率为n/(n+1)的卷积码,并将每一码段映射为2n+1个调制信号集中的一个信号。在收端信号解调后经反映射变换为卷积码,再送入维特比译码器译码。它有两个基本特点:(1)在信号空间中的信号点数目比无编码的调制情况下对应的信号点数目要多,这些增加的信号点使编码有了冗余,而不牺牲带宽。(2)采用卷积码的编码规则,使信号点之间引入相互依赖关系。仅有某些信号点图样或序列是允许用的信号序列,并可模型化成为网格状结构,因此又称为“格状”编码。

*10.6网格编码调制(TCM)网络编码调图10–108PSK信号空间的集合划分

图10–108PSK信号空间的集合划分

图10-10画出了一种8PSK信号空间的集合划分,所有8个信号点分布在一个圆周上,都具有单位能量。连续3次划分后,分别产生2,4,8个子集,最小欧氏距离逐次增大,即如图10-10所示。

图10-10画出了一种8PSK信号空间

根据上述思想,可以得到TCM的编码调制器的系统方框图,如图10-11所示。设输入码字有n比特,在采用多电平/多相位调制时,有同相分量和正交分量,因此在无编码的调制时,在二维信号空间中应有2n个信号点与它对应。在应用编码调制时,为增加冗余度,有2n+1个信号点。在图10-10中,可划分为4个子集,对应于码字的1比特加到编码效率为1/2的卷积码编码器输入端,输出2比特,选择相应的子集。码字的剩余的未编码数据比特确定信号与子集中信号点之间的映射关系。根据上述思想,可以得到TCM的编码调制器的系统图10–11TCM编码调制器方框图图10–11TCM编码调制器方框图

在接收端采用维特比算法执行最大似然检测。编码网格状图中的每一条支路对应于一个子集,而不是一个信号点。检测的第一步是确定每个子集中的信号点,在欧氏距离意义下,这个子集是最靠近接收信号的子集。图10-12(a)描述了最简单的传输2比特码字的8PSKTCM编码方案。它采用了效率为1/2的卷积码编码器,对应的格图如图10-12(b)所示。该结构有4个状态,每个状态对应于图10-10中距离为d2的4个子集。

在接收端采用维特比算法执行最大似然检测。编码网格状图10-124状态编码方案

图10-124状态编码方案第10章差错控制编码

10.1概述10.2常用的几种简单分组码10.3线性分组码10.4循环码10.5卷积码*10.6网格编码调制第10章差错控制编码10.1概述10.1概述

10.1.1信道编码在数字通信中,根据不同的目的,编码可分为信源编码和信道编码。信源编码是为了提高数字信号的有效性以及为了使模拟信号数字化而采取的编码。信道编码是为了降低误码率,提高数字通信的可靠性而采取的编码。数字信号在传输过程中,加性噪声、码间串扰等都会产生误码。为了提高系统的抗干扰性能,可以加大发射功率,降低接收设备本身的噪声,以及合理选择调制、解调方法等。此外,还可以采用信道编码技术。10.1概述10.1.1信道编码10.1.2差错控制方式

图10-1差错控制方式

10.1.2差错控制方式图10-1差错控制方式1.检错重发方式检错重发又称自动请求重传方式,记作ARQ(AutomaticRepeatRequest)。由发端送出能够发现错误的码,由收端判决传输中无错误产生,如果发现错误,则通过反向信道把这一判决结果反馈给发端,然后,发端把收端认为错误的信息再次重发,从而达到正确传输的目的。其特点是需要反馈信道,译码设备简单,对突发错误和信道干扰较严重时有效,但实时性差,主要在计算机数据通信中得到应用。1.检错重发方式2.前向纠错方式前向纠错方式记作FEC(ForwordErrorCorrection)。发端发送能够纠正错误的码,收端收到信码后自动地纠正传输中的错误。其特点是单向传输,实时性好,但译码设备较复杂。

2.前向纠错方式3.混合纠错方式混合纠错方式记作HEC(HybridErrorCorrection)是FEC和ARQ方式的结合。发端发送具有自动纠错同时又具有检错能力的码。收端收到码后,检查差错情况,如果错误在码的纠错能力范围以内,则自动纠错,如果超过了码的纠错能力,但能检测出来,则经过反馈信道请求发端重发。这种方式具有自动纠错和检错重发的优点,可达到较低的误码率,因此,近年来得到广泛应用。3.混合纠错方式

另外,按照噪声或干扰的变化规律,可把信道分为三类:随机信道、突发信道和混合信道。恒参高斯白噪声信道是典型的随机信道,其中差错的出现是随机的,而且错误之间是统计独立的。具有脉冲干扰的信道是典型的突发信道,错误是成串成群出现的,即在短时间内出现大量错误。短波信道和对流层散射信道是混合信道的典型例子,随机错误和成串错误都占有相当比例。对于不同类型的信道,应采用不同的差错控制方式。另外,按照噪声或干扰的变化规律,可把信道分为10.1.3纠错码的分类(1)根据纠错码各码组信息元和监督元的函数关系,可分为线性码和非线性码。如果函数关系是线性的,即满足一组线性方程式,则称为线性码,否则为非线性码。(2)根据上述关系涉及的范围,可分为分组码和卷积码。分组码的各码元仅与本组的信息元有关;卷积码中的码元不仅与本组的信息元有关,而且还与前面若干组的信息元有关。(3)根据码的用途,可分为检错码和纠错码。检错码以检错为目的,不一定能纠错;而纠错码以纠错为目的,一定能检错。10.1.3纠错码的分类10.1.4纠错编码的基本原理

1.分组码分组码一般可用(n,k)表示。其中,k是每组二进制信息码元的数目,n是编码码组的码元总位数,又称为码组长度,简称码长。n-k=r为每个码组中的监督码元数目。简单地说,分组码是对每段k位长的信息组以一定的规则增加r个监督元,组成长为n的码字。在二进制情况下,共有2k个不同的信息组,相应地可得到2k个不同的码字,称为许用码组。其余2n-2k个码字未被选用,称为禁用码组。

10.1.4纠错编码的基本原理1.分组码

在分组码中,非零码元的数目称为码字的汉明重量,简称码重。例如,码字10110,码重w=3。两个等长码组之间相应位取值不同的数目称为这两个码组的汉明(Hamming)距离,简称码距。例如11000与10011之间的距离d=3。码组集中任意两个码字之间距离的最小值称为码的最小距离,用d0表示。最小码距是码的一个重要参数,它是衡量码检错、纠错能力的依据。

在分组码中,非零码元的数目称为码字的汉明重量2.检错和纠错能力

若分组码码字中的监督元在信息元之后,而且是信息元的简单重复,则称该分组码为重复码。它是一种简单实用的检错码,并有一定的纠错能力。例如(2,1)重复码,两个许用码组是00与11,d0=2,收端译码,出现01、10禁用码组时,可以发现传输中的一位错误。如果是(3,1)重复码,两个许用码组是000与111,d0=3;当收端出现两个或三个1时,判为1,否则判为0。此时,可以纠正单个错误,或者该码可以检出两个错误。2.检错和纠错能力若分组码码字中的监督

码的最小距离d0直接关系着码的检错和纠错能力;任一(n,k)分组码,若要在码字内:(1)检测e个随机错误,则要求码的最小距离d0≥e+1;(2)纠正t个随机错误,则要求码的最小距离d0≥2t+1;(3)纠正t个同时检测e(≥t)个随机错误,则要求码的最小距离d0≥t+e+1。

码的最小距离d0直接关系着码的检错和纠错能力3.编码效率用差错控制编码提高通信系统的可靠性,是以降低有效性为代价换来的。我们定义编码效率R来衡量有效性:R=k/n其中,k是信息元的个数,n为码长。对纠错码的基本要求是:检错和纠错能力尽量强;编码效率尽量高;编码规律尽量简单。际中要根据具体指标要求,保证有一定纠、检错能力和编码效率,并且易于实现。3.编码效率10.2常用的几种简单分组码10.2.1奇偶监督码

奇偶监督码是在原信息码后面附加一个监督元,使得码组中“1”的个数是奇数或偶数。或者说,它是含一个监督元,码重为奇数或偶数的(n,n-1)系统分组码。奇偶监督码又分为奇监督码和偶监督码。10.2常用的几种简单分组码10.2.1奇偶监督码设码字A=[an-1,an-2,…,a1,a0],对偶监督码有

奇监督码情况相似,只是码组中“1”的数目为奇数,即满足条件而检错能力与偶监督码相同。奇偶监督码的编码效率R为(10-1)(10-2)设码字A=[an-1,an-2,…,a1,a0],对偶监督码10.2.2行列监督码奇偶监督码不能发现偶数个错误。为了改善这种情况,引入行列监督码。这种码不仅对水平(行)方向的码元,而且对垂直(列)方向的码元实施奇偶监督。这种码既可以逐行传输,也可以逐列传输。一般地,L×M个信息元附加L+M+1个监督元,组成(LM+L+M+1,LM)行列监督码的一个码字(L+1行,M+1列)。图10-2是(66,50)行列监督码的一个码字。这种码具有较强的检测能力,适于检测突发错误,还可用于纠错。10.2.2行列监督码图10-2(66,50)行列监督码

图10-2(66,50)行列监督码10.2.3恒比码

码字中1的数目与0的数目保持恒定比例的码称为恒比码。由于恒比码中,每个码组均含有相同数目的1和0,因此恒比码又称等重码,定1码。这种码在检测时,只要计算接收码元中1的数目是否正确,就知道有无错误。

目前我国电传通信中普遍采用3∶2码,又称“5中取3”的恒比码,即每个码组的长度为5,其中3个“1”。这时可能编成的不同码组数目等于从5中取3的组合数10,这10个许用码组恰好可表示10个阿拉伯数字,如表7-1所示。而每个汉字又是以四位十进制数来代表的。实践证明,采用这种码后,我国汉字电报的差错率大为降低。

10.2.3恒比码码字中1的数目与表10-13∶2恒比码表10-13∶2恒比码10.3线性分组码

在(n,k)分组码中,若每一个监督元都是码组中某些信息元按模二和而得到的,即监督元是按线性关系相加而得到的,则称线性分组码。或者说,可用线性方程组表述码规律性的分组码称为线性分组码。

现以(7,4)分组码为例来说明线性分组码的特点。设其码字为A=[a6

a5

a4

a3

a2

a1

a0],其中前4位是信息元,后3位是监督元,可用下列线性方程组来描述该分组码,产生监督元。

(10-3)10.3线性分组码在(n,k)分组码中,表10-2(7,4)码的码字表表10-2(7,4)码的码字表10.3.2监督矩阵H和生成矩阵G

式(10-3)所述(7,4)码的3个监督方程式可以改写为

(10-4)

这组线性方程可用矩阵形式表示为

(10-5)

10.3.2监督矩阵H和生成矩阵G式(10-3)所述(并简记为

(10-6)

其中,AT是A的转置,0T是0=[000]的转置,HT是H的转置。(10-7)

H称为监督矩阵,一旦H给定,信息位和监督位之间的关系也就确定了。H为r×n阶矩阵,H矩阵每行之间是彼此线性无关的。式(10-7)所示的H矩阵可分成两部分并简记为(10-6)其中,AT是A的转置,0T是0=[0

其中,P为r×k阶矩阵,Ir为r×r阶单位矩阵。可以写成H=[PIr]形式的矩阵称为典型监督矩阵。HAT=0T,说明H矩阵与码字的转置乘积必为零,可以用来作为判断接收码字A是否出错的依据。(10-8)其中,P为r×k阶矩阵,Ir为r×r阶单若把监督方程补充为下列方程

(10-9)

若把监督方程补充为下列方程(10-9)可改写为矩阵形式

(10-10)(10-11)

变换为

可改写为矩阵形式(10-10)(10-11)即变换为其中称为生成矩阵,由G和信息组就可以产生全部码字。G为k×n阶矩阵,各行也是线性无关的。生成矩阵也可以分为两部分,即

(10-12)(10-13)其中称为生成矩阵,由G和信息组就可以产生全部码字。G为k×其中

(10-14)Q为k×r阶矩阵,Ik为k阶单位阵。可以写成式(10-13)形式的G矩阵,称为典型生成矩阵。非典型形式的矩阵经过运算也一定可以化为典型矩阵形式。其中(10-14)Q为k×r阶矩阵,Ik为k阶单位阵。可以10.3.3伴随式(校正子)S

设发送码组A=[an-1,an-2,…,a1,a0],在传输过程中可能发生误码。接收码组B=[bn-1,bn-2,…,b1,b0],则收发码组之差定义为错误图样E,也称为误差矢量,即

其中E=[en-1,en-2,…,e1,e0],且当bi=ai

当bi≠ai

(10-15)(10-16)

10.3.3伴随式(校正子)S设发送码组A式(7-15)也可写作

令S=BHT,称为伴随式或校正子。

(10-17)

(10-18)

由此可见,伴随式S与错误图样E之间有确定的线性变换关系。接收端译码器的任务就是从伴随式确定错误图样,然后从接收到的码字中减去错误图样。式(7-15)也可写作令S=BHT,称为伴随式或校正子表10-3(7,4)码S与E的对应关系表10-3(7,4)码S与E的对应关系10.4循环码

循环码是一类重要的线性分组码,它除了具有线性码的一般性质外,还具有循环性,即循环码组中任一码字循环移位所得的码字仍为该码组中的一个码字。在代数理论中,为了便于计算,常用码多项式表示码字。(n,k)循环码的码字,其码多项式(以降幂顺序排列)为(10-19)10.4循环码循环码是一类重要的线性分表10-4(7,3)循环码表10-4(7,3)循环码10.4.1生成多项式及生成矩阵

如果一种码的所有码多项式都是多项式g(x)的倍式,则称g(x)为该码的生成多项式。在(n,k)循环码中任意码多项式A(x)都是最低次码多项式的倍式。如表7-4的(7,3)循环码中,

其它码多项式都是g(x)的倍式,即

10.4.1生成多项式及生成矩阵如果一种码因此,循环码中次数最低的多项式(全0码字除外)就是生成多项式g(x)。可以证明,g(x)是常数项为1的r=n-k次多项式,是xn+1的一个因式。循环码的生成矩阵常用多项式的形式来表示

(10-20)其中

(10-21)

因此,循环码中次数最低的多项式(全0码字除外)就是生成多例如(7,3)循环码,n=7,k=3,r=4,其生成多项式及生成矩阵分别为即

例如(7,3)循环码,n=7,k=3,r=4,其生成多

10.4.2监督多项式及监督矩阵为了便于对循环码编译码,通常还定义监督多项式,令

其中g(x)是常数项为1的r次多项式,是生成多项式;h(x)是常数项为1的k次多项式,称为监督多项式。同理,可得监督矩阵H

(10-22)(10-23)10.4.2监督多项式及监督是h(x)的逆多项式。例如(7,3)循环码,其中

(10-24)则

是h(x)的逆多项式。例如(7,3)循环码,其中(10-2即

即10.4.3编码方法和电路

在编码时,首先要根据给定的(n,k)值选定生成多项式g(x),即应在xn+1的因式中选一r=n-k次多项式作为g(x)。设编码前的信息多项式m(x)为(10-25)

10.4.3编码方法和电路在编码时,首先m(x)的最高幂次为k-1。循环码中的所有码多项式都可被g(x)整除,根据这条原则,就可以对给定的信息进行编码。用xr乘m(x),得到xr·m(x)的次数小于n。用g(x)去除xr·m(x),得到余式R(x),R(x)的次数必小于g(x)的次数,即小于(n-k)。将此余式加于信息位之后作为监督位,即将R(x)与xrm(x)相加,得到的多项式必为一码多项式,因为它必能被g(x)整除,且商的次数不大于(k-1)。循环码的码多项式可表示为(10-26)

其中,xr·m(x)代表信息位,R(x)是xr·m(x)与g(x)相除得到的余式,代表监督位。m(x)的最高幂次为k-1。循环码中的所有码多项式都可被g(图10-3(7,3)循环码编码电路

编码电路的主体由生成多项式构成的除法电路,再加上适当的控制电路组成。g(x)=x4+x3+x2+1时,(7,3)循环码的编码电路如图10-3所示。图10-3(7,3)循环码编码电路编码电

g(x)的次数等于移位寄存器的级数;g(x)的x0,x1,x2,…、xr的非零系数对应移位寄存器的反馈抽头。首先,移位寄存器清零,3位信息元输入时,门1断开,门2接通,直接输出信息元。第3次移位脉冲到来时将除法电路运算所得的余数存入移位寄存器。第4~7次移位时,门2断开,门1接通,输出监督元。具体编码过程如表10-5所示,此时输入信息元为110。

g(x)的次数等于移位寄存器的级数;g(x)表10-5(7,3)循环码的编码过程表10-5(7,3)循环码的编码过程10.4.4译码方法和电路

接收端译码的目的是检错和纠错。由于任一码多项式A(x)都应能被生成多项式g(x)整除,所以在接收端可以将接收码组B(x)用生成多项式去除。当传输中未发生错误时,接收码组和发送码组相同,即A(x)=B(x),故接收码组B(x)必定能被g(x)整除。若码组在传输中发生错误,则B(x)≠A(x),B(x)除以g(x)时除不尽而有余项,所以,可以用余项是否为0来判别码组中有无误码。在接收端采用译码方法来纠错自然比检错更复杂。同样,为了能够纠错,要求每个可纠正的错误图样必须与一个特定余式有一一对应关系。

10.4.4译码方法和电路接收端译码的目的是检错图10-4(7,3)循环码译码电路

图10-4(7,3)循环码译码电路10.5卷积码

10.5.1基本概念

卷积码又称连环码,是1955年提出来的一种纠错码,它和分组码有明显的区别。(n,k)线性分组码中,本组r=n-k个监督元仅与本组k个信息元有关,与其他各组无关,也就是说,分组码编码器本身并无记忆性。卷积码则不同,每个(n,k)码段(也称子码,通常较短)内的n个码元不仅与该码段内的信息元有关,而且与前面m段的信息元有关。通常称m为编码存储。卷积码常用符号(n,k,m)表示。

10.5卷积码10.5.1基本概念卷积码

图10-5是卷积码(2,1,2)的编码器。它由移位寄存器、模二加法器及开关电路组成。图10-5卷积码(2,1,2)编码器

图10-5是卷积码(2,1,2)的编码器。它由

起始状态,各级移位寄存器清零,即S1S2S3为000。S1等于当前输入数据,而移位寄存器状态S2S3存储以前的数据,输出码字C由下式确定起始状态,各级移位寄存器清零,即S1S2S3

当输入数据D=[11010]时,输出码字可以计算出来,具体计算过程如表10-6所示。另外,为了保证全部数据通过寄存器,还必须在数据位后加3个0。从上述的计算可知,每1位数据,影响(m+1)个输出子码,称(m+1)为编码约束度。每个子码有n个码元,在卷积码中有约束关系的最大码元长度则为(m+1)·n,称为编码约束长度。(2,1,2)卷积码的编码约束度为3,约束长度为6。

当输入数据D=[11010]时,输出码表10-6(2,1,2)编码器的工作过程表10-6(2,1,2)编码器的工作过程10.5.2卷积码的描述

1.树图

树图描述的是在任何数据序列输入时,码字所有可能的输出。对应于图10-5所示的(2,1,2)卷积码的编码电路,可以画出其树图如图10-6所示。10.5.2卷积码的描述1.树图树图描述的是图10-6(2,1,2)码的树图图10-6(2,1,2)码的树图

以S1S2S3=000作为起点,用a,b,c和d表示出S3S2的4种可能状态:00,01,10和11。若第一位数据S1=0,输出C1C2=00,从起点通过上支路到达状态a,即S3S2=00;若S1=1,输出C1C2=11,从起点通过下支路到达状态b,即S3S2=01;依次类推,可得整个树图。输入不同的信息序列,编码器就走不同的路径,输出不同的码序列。例如,当输入数据为[11010]时,其路径如图10-6中虚线所示,并得到输出码序列为[11010100…],与表10-6的结果一致。

以S1S2S3=000作为起点,用a,b,c和d表示2.状态图

除了用树图表示编码器的工作过程外,还可以用状态图来描述。图10-7就是该(2,1,2)卷积编码器的状态图。

在图中有4个节点a,b,c,d,同样分别表示S3S2的4种可能状态。每个节点有两条线离开该节点,实线表示输入数据为0,虚线表示输入数据为1,线旁的数字即为输出码字。2.状态图除了用树图表示编码器的工作过程外,还图10-7(2,1,2)码的状态图图10-7(2,1,2)码的状态图

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论