第七章:第七章:线性分组码7.1 分组码的概念分组码的概念7.2 线性分组码线性分组码7.4 循环码循环码7.5 卷积码卷积码2022/10/217.4 一些特殊的一些特殊的线性分组码线性分组码本节介绍几种重要的线性分组码一、二元一、二元Hamming码码nN=2m-1,L=2m-1-m,即二元(2m-1,2m-1-m)线性分组码n其一致校验矩阵是如下的m(2m-1)阶矩阵H:H的(2m-1)列恰好是(2m-1)个非全0的m维向量2022/10/227.4 一些特殊的一些特殊的线性分组码线性分组码定义定义6.2.1 如果任一个接收向量y,都有唯一的码字u满足d(y,u)t,则称该码为t阶完备码命题命题 当一个(N,L)线性分组码是t阶完备码时,所有不同伴随式所对应的陪集首恰好是所有重量不超过t的N维向量注意:不同伴随式的个数为2N-L,重量不超过t的N维向量的个数为定理定理6.2.1 二元Hamming码(它是二元(2m-1,2m-1-m)线性分组码)是1阶完备码2m=1+2m-1)2022/10/237.4 一些特殊的一些特殊的线性分组码线性分组码二、二、Hadamard码码从Hadmard矩阵的行中选择码字可以构造出Hadamad码。
Hadmard矩阵Mn是一个nn阶矩阵,其中n=2m该矩阵满足n有一行为全0行,其余的行有2m-1个0,2m-1个1n任意两行有2m-1个位置不同,2m-1个位置相同2022/10/247.4 一些特殊的一些特殊的线性分组码线性分组码2022/10/257.4 一些特殊的一些特殊的线性分组码线性分组码以Hadmard矩阵Mn的所有行作为所有的码字,得到的码就是Hadamad码Hadamad码的参数如下:共有n个码字,因此共有n个信息,因此信息长为logn=m码长为n编码效率为R=m/n=m/2mdmin=2m-1=n/2生成矩阵为Mn的任意m个非全0行构成的mn阶矩阵2022/10/267.4 一些特殊的一些特殊的线性分组码线性分组码三、三、Golay码码Golay码是线性(23,12)码,最小距离为7将其增加一个全校验位扩展为二元线性(24,12)码,最小距离为8表6.4.1给出了Golay码和扩展Golay码的重量分布2022/10/27循环码要求掌握的内容n根据多项式会写循环码的生成矩阵和校验矩阵n会写循环码生成和校验矩阵的系统形式n会画循环码的编码电路n由生成多项式的根定义循环码7.4 一些特殊的一些特殊的线性分组码线性分组码2022/10/28n定义n循环码的生成多项式和校验多项式n循环码的生成矩阵和校验矩阵n循环码的系统码形式7.4 一些特殊的一些特殊的线性分组码线性分组码2022/10/29 定义定义1:设CH是一个n.k线性分组码,C1是其中的一个码字,若C1的左(右)循环移位得到的n维向量也是CH中的一个码字,则称CH是循环码。
定义定义2:设:设是n维空间的一个k维子空间,若对任一恒有则称Vn,k为循环子空间或循环码2022/10/210问题一如何寻找k维循环子空间?如何设计n,k循环码?利用多项式和有限域的概念2022/10/211n注:1、GF(p)上的n维向量与GF(p)上的多项式之间有一一对应的关系n注:1、GF(p)上的n维向量与GF(p)上的多项式之间有一一对应的关系 2、模n 多项式F(x)的剩余类构成一个多项式剩余类环Fpx/F(x),若在环中再定义一个数乘运算,即 则模F(x)的剩余类构成一个n维线性空间,定义为剩余类结合代数2022/10/212问题一转化为如何从模多项式xn-1的剩余类结合代数中寻找循环子空间?2022/10/213定理 以多项式xn-1为模的剩余类线性结合代数中,其一个子空间Vn,k为循环子空间(或循环码)的充要条件是:Vn,k是一个理想循环码是模xn-1的剩余类线性结合代数中的一个理想2022/10/214问题二如何从多项式剩余类环中寻找理想?2022/10/215 由于 1、多项式剩余类环中任何一个理想都是主理想主理想中的所有元素可由某一个元素的倍式构成 2、在主理想的所有元素中,至少可找到一个次数最低的首一多项式g(x),即生成多项式2022/10/216问题三如何寻找生成多项式g(x)?2022/10/217循环码模多项式xn-1剩余类线性结合代数中的理想生成多项式2022/10/218生成多项式和校验多项式2022/10/219两个定理 定理定理1(p147):GF(q)(q为素数或素数的幂)上的n,k循环码中,存在唯一的n-k次首一多项式g(x),每一个码多项式C(x)必是g(x)的倍式,每一个小于等于(n-1)次的g(x)的倍式一定是码多项式2022/10/220两个定理 定理定理2(p148):GF(q)(q为素数或素数的幂)上n,k循环码的生成多项式g(x)一定是xn-1的n-k次因式:xn-1=g(x)h(x)。
反之,若g(x)为n-k次多项式,且xn-1能被g(x)整除,则g(x)一定能生成一个n,k循环码2022/10/221两个结论 结论1:找一个n,k循环码,即是找一个n-k次首一多项式g(x),且g(x)必是xn-1的因式结论2:若C(x)是一个码多项式,则反之,若,则C(x)必是一个码多项式2022/10/222nExamples GF(2)上,x7-1=(x+1)(x3+x+1)(x3+x2+1)试求一个7,4循环码g(x)、xg(x)、x2 g(x)、x3g(x)、2022/10/223循环码的生成矩阵和校验矩阵2022/10/224g(x)决定生成矩阵,h(x)决定校验矩阵2022/10/2252022/10/2262022/10/227循环码的系统码 模g(x)的除法问题2022/10/2282022/10/229由于生成矩阵G中的k行要求线性无关,因此在求余式时,可选择k个线性无关的信息组 (1,0,0,0)xk-1,(0,1,0,0,0)xk-2,(0,0,0,0,1)12022/10/230表示ri(x)的系数2022/10/2312022/10/232循环码的编码原理(1)基本步骤(n,k)1、分解多项式xn-1=g(x)h(x)2、选择其中的n-k次多项式g(x)为生成多项式3、由g(x)可得到k个多项式g(x),xg(x),xk-1g(x)4、取上述k个多项式的系数即可构成相应的生成矩阵5、取h(x)的互反多项式h*(x),取h*(x),xh*(x),xn-k-1h*(x)的系数即可构成相应的校验矩阵2022/10/233可选择k个线性无关的信息组 (1,0,0,0)xk-1,(0,1,0,0,0)xk-2,(0,0,0,0,1)1循环码的编码原理(2)2022/10/234表示ri(x)的系数2022/10/235循环码的编码n多项式乘法和除法电路n循环码的编码电路(乘法和除法)2022/10/236多项式乘法和除法电路2022/10/2372022/10/238b0b1b2br-2b1br-1b1br输出C(x)输入A(x)a0,a1,ak 乘B(x)运算电路(利用校验多项式h(x)编码时会用到)2022/10/239b0b1b2br-2b1br-1b1br输出C(x)输入A(x)a0,a1,ak乘B(x)运算电路akb0akb1akbr-2akbr-12022/10/240-b1b1br-1输出商q(x)输入A(x)-b2-br-1-b0除B(x)运算电路a0,a1,ak除式B(x)构成电路,被除式A(x)的系数依次送入电路2022/10/241h0h1h2hr-2b1hr-1b1hr输入A(x)a0,a1,ak-g1gr-1输出商q(x)-g2-g0-gr-1-gr-1乘H(x),除g(x)运算电路2022/10/242循环码编码电路2022/10/2432022/10/244n-k 级编码器基本原理:利用生成多项式g(x)若要求编成非系统码形式,则利用乘法电路若要求编成系统码形式,则利用除法电路2022/10/245n-k级乘法电路(非系统码形式)取g(x),xg(x),xk-1g(x)的系数可构成生成矩阵G2022/10/246n-k级乘法电路(非系统码形式)若信息序列 m=(mk-1,mk-2,m0),则mG对应的n维向量为:该n为向量正是多项式m(x)g(x)的系数2022/10/247g0g1g2gn-k-2b1gn-k-1b1gn-k输出C(x)输入m(x)m0,m1,mk乘g(x)运算电路mk-1 gn-k-1mk-1 gn-k输入m(x)是信息序列,g(x)为生成多项式mk-1 g0mk-1 g12022/10/248nExamples GF(2)上,x7-1=(x+1)(x3+x+1)(x3+x2+1)试画一个7,4循环码的n-k级乘法编码电路。
2022/10/249n-k级除法电路(系统码形式)(1,0,0,0)xk-1,(0,1,0,0,0)xk-2,(0,0,0,0,1)12022/10/250表示ri(x)的系数2022/10/251n-k级除法电路(系统码形式)对任意信息多项式m(x),xn-km(x)除g(x)可得余式r(x),m(x)的系数为信息序列mr(x)的系数为m对应的校验比特2022/10/252n-k级除法电路(系统码形式)若信息序列 m=(mk-1,mk-2,m0)对应的多项式m(x)=mk-1xk-1+mk-2xk-2+m02022/10/253n-k级除法电路(系统码形式)综上,循环码的系统码电路是信息多项式m(x)乘xn-k,除g(x)的实现电路2022/10/254输入m(x)m0,m1,mk-1-g1gn-k-1-g2-g0-gn-k-1-gn-k-2乘xn-k除g(x)运算电路门12022/10/255k 级编码器基本原理:利用校验多项式h(x)为系统码编码电路2022/10/256k 级编码器若信息序列 m=(mk-1,mk-2,m0)对应的多项式m(x)=mk-1xk-1+mk-2xk-2+m0码多项式C(x)=m(x)g(x),且C(x)为系统码h(x)C(x)=h(x)m(x)g(x)=m(x)(xn-1)=m(x)xn-m(x)=mk-1xn+k-1+mk-2xn+k-2+m0 xn -(mk-1xk-1+mk-2xk-2+m0)2022/10/257k 级编码器h(x)C(x)的乘积中,xn-1,xn-2,xk次的系数为零xn-1的系数h0 cn-1+h1 cn-1-1+hk cn-1-k=0 xn-2的系数h0 cn-2+h1 cn-2-1+hk cn-2-k=0 xn-3的系数h0 cn-3+h1 cn-3-1+hk cn-3-k=0 xk的系数h0 ck+h1 ck-1+hk c0=02022/10/258k 级编码器由于hk=1cn-1-k=-(h0 cn-1+h1 cn-1-1+hk-1 cn-1-(k-1)cn-2-k=-(h0 cn-2+h1 cn-2-1+hk-1 cn-k-1)cn-3-k=-(h0 cn-3+h1 cn-3-1+hk-1 cn-k-2)cn-k-(n-k)=-(h0 ck+h1 ck-1+hk-1 c1)2022/10/259-h0-h1-h2-hk-2b1-hk-1输入信息门cn-1cn-2cn-k-1cn-k循环码k级编码电路2022/10/260。