通信原理 第8章 差错控制编码课件.ppt
2022/12/19,1,第8章 差错控制编码,8.1 引言 8.2 常用简单分组码 8.3 线性分组码 8.4 循环码 8.5 卷积码,2022/12/19,2,8.1 引言,8.1.1 信源编码与信道编码的基本概念 在数字通信系统中,为了提高数字信号传输的有效性而采取的编码称为信源编码;为了提高数字通信的可靠性而采取的编码称为信道编码。 1、信源编码,2022/12/19,3,2、信道编码(差错控制编码) 差错控制编码是在信息序列上附加上一些监督码元,利用这些冗余的码元,使原来不规律的或规律性不强的原始数字信号变为有规律的数字信号;差错控制译码则利用这些规律性来鉴别传输过程是否发生错误,或进而纠正错误。,2022/12/19,4,8.1.2 纠错编码的分类 (1)按照信道编码的不同功能,可以将它分为检错码和纠错码。 (2)按照信息码元和监督码元之间的检验关系,可以将它分为线性和非线性码。 (3)按照信息码元和监督码元之间的约束方式不同,可以将它分为分组码和卷积码。 (4)按照信息码元在编码后是否保持原来的形式,可以将它分为系统码和非系统码。,2022/12/19,5,(5)按照纠正错误的类型不同,可以将它分为纠正随机错误码和纠正突发错误码。 (6)按照信道编码所采用的数学方法不同,可以将它分为代数码、几何码和算术码。 随着数字通信系统的发展,可以将信道编码器和调制器统一起来综合设计,这就是所谓的网格编码调制。,2022/12/19,6,8.1.2 差错控制方式,2022/12/19,7,检错重发方式:检错重发(ARQ)的优点主要表现在: (1)只需要少量的冗余码,就可以得到极低的输出误码率; (2)有一定的自适应能力;,2022/12/19,8,某些不足主要表现在: (1)需要反向信道,故不能用于单向传输系统,并且实现重发控制比较复杂; (2)通信效率低,不适合严格实时传输系统。 混合纠错方式是前向纠错方式和检错重发方式的结合。,2022/12/19,9,8.1.2 纠错编码的基本原理 信道编码有关的基本概念: 码长:码字中码元的数目; 码重:码字中非0数字的数目; 码距:两个等长码字之间对应位不同的数目,有时也称作这两个码字的汉明距离。 最小码距:在码字集合中全体码字之间距离的最小数值。,2022/12/19,10,纠错码的抗干扰能力完全取决于许用码字之间的距离,码的最小距离越大,说明码字间的最小差别越大,抗干扰能力就越强。 分组码的最小汉明距离d0与检错和纠错能力之间满足下列关系: (1)当码字用于检测错误时,如果要检测e个错误,则 d0 e+1; (2)当码字用于纠正错误时,如果要纠正t个错误,则 d0 2t+1;,2022/12/19,11,(3)若码字用于纠t个错误,同时检e个错误时(et),则 d0 t+e+1。 编码效率Rc可以用下式表示:,2022/12/19,12,8.2 常用简单分组码,8.2.1 奇偶监督码 可以表示成为(n,n-1)。如果是奇监督码,在附加上一个监督元以后,码长为n的码字中“1”的个数为奇数个;如果是偶监督码,在附加上一个监督元以后,码长为n的码字中“1”的个数为偶数个。 an-1+an-2+a1+a0 = 0,2022/12/19,13,奇偶监督码的编码可以用软件实现,也可用硬件电路实现。 如果码组B无错,BA,则M0;如果码组B有单个(或奇数个)错误,则M1。,2022/12/19,14,8.2.2 行列监督码 行列监督码又称水平垂直一致监督码或二维奇偶监督码,有时还被称为矩阵码。,2022/12/19,15,二维奇偶监督码适于检测突发错码。二维奇偶监督码不仅可用来检错,还可用来纠正一些错码。 8.2.3 恒比码 恒比码又称等重码,该码的码字中1和0的位数保持恒定的比例。具体情况见表8-3。 目前我国电传通信中普遍采用3:2码,国际上通用的ARQ电报通信系统中,采用3:4码即7中取3码。,2022/12/19,16,8.3 线性分组码,8.3.1 基本概念 分组码是一组固定长度的码组,可表示为(n , k),通常它用于前向纠错。在编码时,k个信息位被编为n位码组长度,而n-k个监督位的作用就是实现检错与纠错。 这样,一个k比特信息的线性分组码可以映射到一个长度为n码组上。,2022/12/19,17,线性分组码的主要性质如下: (1)任意两许用码之和仍为一许用码,也就是说,线性分组码具有封闭性; (2)码组间的最小码距等于非零码的最小码重。 对偶校验时的监督关系。在接收端解码时,实际上就是在计算: S = bn-1+bn-2+b1+b0 若S0,则无错;若S1就认为有错。,2022/12/19,18,当r个监督方程式计算得到的校正子有r位,可以用来指示2r-1种误码图样。 如果希望用r个监督位构造出r个监督关系式来指示一位错码的n种可能,则要求: 例如r 3,若取r = 3,则n = k+r = 7。假设S3、S2、S1三位校正字码组与误码位置的关系如表8-4。根据表8-4,可以构成如下关系式:,2022/12/19,19,S1= a6+a5+a4+a2 , S2= a6+a5+a4+a2 , S3= a6+a4+a3+a0 进而得到下面的方程组形式: 接收端收到每个码组后,计算出S3、S2和S1,如不全为0,则可按表8-4确定误码的位置,然后予以纠正。不难看出,上述(7,4)码的最小码距dmin3。,2022/12/19,20,8.3.2 监督矩阵H和生成矩阵G 将(7,4)码的三个监督方程式可以重新改写为如下形式:上式可以记作:HAT=0T或AHT=0 ,其中,2022/12/19,21,也可以用矩阵形式来表示:或表示成为: 这时Q = PT,如果在Q矩阵的左边在加上一个kk的单位矩阵,就形成了一个新矩阵G:,2022/12/19,22,这里G称为生成矩阵,利用它可以产生整个码组:,2022/12/19,23,8.3.3 校验子S 设发送组码A,在传输过程中有可能出现误码,这时接收到的码组为B。则收发码组之差为:其中: 则接收端利用接收到的码组B计算校正子: S=BHT=(A+E)HT= AHT + EHT = EHT 因此,校正子仅与E有关,即错误图样与校正子之间有确定的关系。,2022/12/19,24,8.3.4 汉明码 汉明码是一种能够纠正单个错误的线性分组码。它有以下特点: (1)最小码距dmin3,可纠正一位错误; (2)码长n与监督元个数r之间满足关系式: 。 通常二进制汉明码可以表示为:,2022/12/19,25,(7,4)系统汉明码的编码器和译码器电路:,2022/12/19,26,2022/12/19,27,8.4 循环码,循环码是线性分组码的一个重要子集,是目前研究得最成熟的一类码,它有许多特殊的代数性质。 8.4.1 循环码的特点 循环特性是指:循环码中任一许用码组经过循环移位后,所得到的码组仍然是许用码组。,2022/12/19,28,为了利用代数理论研究循环码,可以将码组用代数多项是来表示,这个多项式被称为码多项式,对于许用循环码A=(an-1 an-2 a1 a0),可以将它的码多项式表示为: 若一个整数m可以表示为: 则在模n运算下,有mp(模n),同样对于多项式而言:,2022/12/19,29,则可以写为:F(x)R(x) (模N(x))。 在循环码中,若A(x)是一个长为n的许用码组,则在按模 运算下,亦是一个许用码组。例如, 其对应的码组为0101110,它正是表8-7中第3码字。,2022/12/19,30,8.4.2 循环码的生成多项式和生成矩阵 循环码中次数最低的码多项式称为生成多项式,用g(x)表示。可以证明生成多项式g(x)具有以下特性: (1) g(x)是一个常数项为1的 次多项式; (2) g(x)是 的一个因式; (3)该循环码中其它码多项式都是g(x)的倍式。,2022/12/19,31,为了保证构成的生成矩阵G的各行线性不相关,通常用g(x)来构造生成矩阵, 显然,上式不符合 形式,所以此生成矩阵不是典型形式。,因此,一旦生成多项式g(x)确定以后,该循环码的生成矩阵就可以确定。,2022/12/19,32,利用循环码的特点来确定监督矩阵H: 由于(n,k)循环码中g(x)是xn +1的因式,因此可令: 监督矩阵表示为:,2022/12/19,33,8.4.3 循环码的编、译码方法 1、编码过程 首先需要根据给定循环码的参数确定生成多项式g(x) ,然后,利用循环码的编码特点,即所有循环码多项式A(x)都可以被g(x)整除,来定义生成多项式A(x)。下面就将以上各步处理加以解释: (1)用xn-k乘m(x)。这一运算实际上是把信息码后附加上(n-k)个“0”。,2022/12/19,34,(2)求r(x)。由于循环码多项式A(x)都可以被g(x)整除,也就是:上式也等效于:这样我们就得到了r(x)。 (3)编码输出系统循环码多项式A(x)为:,2022/12/19,35,上述三步编码过程,在硬件实现时,可以利用除法电路来实现。 2、译码过程 循环码的译码可以分三步进行: (1)由接收到的码多项式B(x)计算校正子(伴随式)多项式S(x);,2022/12/19,36,(2)由校正子S(x)确定错误图样E(x); (3)将错误图样E(x)与B(x)相加,纠正错误。,2022/12/19,37,8.5 卷积码,卷积码中编码后的n个码元不仅与当前段的k个信息有关,而且也与前面(N-1)段的信息有关,编码过程中相互关联的码元为nN个。因此,这N段时间内的码元数目nN通常被称为这种码的约束长度。 由于与前面m段规定时间内的信息位有关,这里的mN-1通常用(n,k,m)表示卷积码 。,2022/12/19,38,例如:卷积码的n = 2,k = 1,m = 2,因此,它的约束长度nN = n(m+1) = 23 = 6。,2022/12/19,39,假如输入的信息为D = 11010,为了使信息D全部通过移位寄存器,还必须在信息位后面加3个零。表8-9列出了对信息D进行卷积编码时的状态。 描述卷积码的方法:图解表示和解析表示。 卷积码的译码方法可分为代数译码和概率译码两大类。,