循环码

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。


可见,一致校验矩阵的第一行是码的校验多项式 的系数 的反序排列,而第二、三、四行分别是第一行的移位,由 此得到用校验多项式的系数来构成的一致校验矩阵:
H (7,3)
0 0 0 1
0 0 1 1
0 1 1 0
1 1 0 1
1 0 1 0
0 1 0 0
1 0 0 0
6.3.3 系统循环码
1 0 G 0 0 0 1 0 0 1 0 1 0 1 1 0 1 0 1 1 0 0 0 1 1 0 (1) 0 (2) 0 (3) 1 (4)
对矩阵G的行进行运算,将第⑴、⑶、⑷行相加后 作为第1行,第⑵、⑷行相加后作为第2行,得:
1 0 G0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 1 1 0 0 1 1 1 1 (1) (3) (4) 1 (2) (4) 0 1
个码字的每一次循环移位仍然是C中的一个码字, 则称C为循环码。也即,如果C=(cncn-1…c2c1)是循 环码C的一个码字,那么C=(cn-1cn-2…c1cn) 等也都是 C的码字时,则所有这些具有循环特性的码字的全 体便构成了循环码C。
表6.3.1 循环码的例子
信息码元 000 001 010 011 100 101 110 111
0 0 0 h0 0 0 h0 h1 0 h0 h1 h2 h0 h1 h2 h3 h1 h2 h3 0 h2 h3 0 0
0 0 h3 g4 0 g3 0 0 g2 0 g1 g 0
n k
9
8
x 4 x3 x 2



在接收端,CRC校验实际上就是做除法运算:如果传输过 程无差错,则 r ( x) g ( x被整除,余式为“0”;如果余式不为 能 ) “0”,则说明一定有差错。 1 例6.3.8 假设 m( x) x x x ,即信息码字为 1 (1011001), g ( x) x x ,求CRC校验码。由题得:
码字 0000000 0011101 0100111 0111010 1001110 1010011 1101001 1110100



循环码的主要特点是: ① 理论成熟:可利用成 熟的代数结构深入探讨 其性质; ② 实现简单:可利用循 环移位特性在工程上进 行编、译码; ③ 循环码的描述方式 有很多,但在工程上最 有用的是采用多项式的 描述方法。
hk 1 hk
hk 0 0
式中h*(x)为h(x)的反多项式,即
h*(x)=h0xk+h1xk-1+…+hk-1x+hk

例6.3.3 以二进制码(7,3) 码为例,说明(n,k)循环码可
由生成多项式或校验多项式完全确定。
由多项式的因式分解知:
x 1 ( x x 1)( x x x 1) 其四次多项式为生成多项式:
6.3.2 循环码的生成矩阵

在循环码的码多项式中,每一个能整除xn+1的(n-k)次首一 多项式都是该码的生成多项式,记为g(x) 。将g(x)经过k-1 次循环移位,共得到k个码多项式: g(x) 、 xg(x) 、…、 xk-1g(x) 。这k 码多项式显然是相互独立的,于是得到循环 码的生成矩阵G(x):
h* ( x ) * xh ( x ) H ( x) n k 2 * h ( x) x x n k 1h* ( x )
0 0 h0 h1 0 h h1 hk 1 0 H 0 h0 h1 hk 1 hk
6.3 循环码

循环码是一种特殊的线性分组码,属于线性分组
码的一个重要子类,也是目前研究最为透彻的一 类码,大多数有实用价值的纠错码都是循环码。 循环码与一般的线性分组码相比具有以下优点: 循环码的编码及译码易于用简单的具有反馈连接 的移位寄存器来实现。
定义6.3.1 设有(n,k)线性分组码C,如果它的任意一
x k 1 g ( x) k 2 x g ( x) G ( x) xg ( x) g ( x)
(6.3.4)

循环码可由它的一个n-k次首一多项式g(x) 来确定,
因此称它为码的生成多项式,即:
g ( x) gnk x

例6.3.2 求二进制 (7,3) 循环码的生成多项式。 解:分解多项式x7+1,取其四次首一多项式作为
生成多项式:x7+1=(x+1)(x3+x+1)(x3+x2+1)
可将一次和任一个三次多项式的乘积作为生成多
项式:
g(x)=(x+1)(x3+x2+1)=x4+x2+x+1 或 g(x)= =(x+1)(x3+x+1)=x4++x3+x2+1

系统循环码的生成矩阵 G Ik P 系统的一致校验矩阵是 H PT I n k 例6.3.4 以g(x)=(x3+x+1)为生成多项式生成一个 k (7,4)循环码,要求生成的循环码是系统码。

解:由例6.3.1得对应给定g(x)的循环码的一般生成矩 阵为:
该式说明,码字循环一次的码多项式C(1)(x)是原码 多项式 乘x后再除以xn+1所得的余式,即:
C (1) ( x) xC( x) mod( xn 1)
由此可以推知,C(x)的i 次循环移位C(i)(x) 是原码 多项式C(x) 乘xi 后再除以xn+1所得的余式,即:
C ( x) x C( x) mod( x 1)
6 4 3
4
3
x4m( x) x10 x8 x7:



经相除后得到的最后余数1010就是冗余校验码 r ( x) 。所以, 发送码字为:(10110011010)。 需要注意的是,这里所涉及的运算与前面一样都是模2运 算。 如果例子中的发送码字(10110011010)经传输后受噪声的干 扰,在接收端变成为(10110011100)。求余式的除法如下:
由于线性码的生成矩阵G与一致校验矩阵H满足关系
GHT=0,而循环码也是线性码,如果设g(x)为(n,k)循
环码的生成多项式,它必为xn+1的因式,则有:
xn+1= g(x)h(x)
(6.3.6)
称h(x)为(n,k)循环码的校验多项式,且: h(x)=hkxk+…+h1x+h0 (6.3.7)
(n,k)循环码的一致校验矩阵H为
字,它的码多项式为:
C (1) ( x) cn1xn1 c1x cn
比较式(6.3.1)和式(6.3.2),得:
(6.3.2)
cn 1 x n 1 c1 x cn xC ( x) C (1) ( x) cn cn n n n x 1 x 1 x 1

循环冗余校验码是系统的缩短循环码,码的结构如图 6.3.10所示。
图6.3.10 循环冗余校验码(CRC)结构
x) ) 图中,码字用码多项式 C ( x)表示, r ( x是 x m( x) 除以 g (后的余 k ) r ( x) 式, g ( x) n次多项式,它们之间满足: C(x) x m(x。虽然 为 C ( x) 循环冗余校验码指的是整个码字 ,但人们习惯上仅把校 验部分称为CRC码。
nk
n k
如果传输过程无差错,则接收码字 r ( x)应等于发送码字 C ( x) ) x) 这时 r ( x)能被 g ( x整除;如果 r ( x) C (,则说明在传输过程中 出现了误码。
例6.3.7 某CRC的生成多项式为 串信息“110001”的前6位,并加上CRC校验,发送码字 应如何安排,接收码字 又如何校验? r ( x) C ( x) 1 解:本题信息码字多项式m( x) x x ,k 6 ,从生成多项式 g ( x) 的 阶数得校验位数等于4,因此 n 10 。 将 x m( x除以 g ( x) 得余式 r (: x) )
6.3.1 循环码的多项式描述

设有循环码字C=(cncn-1…c2c1) ,则可以用一个次数不超 过n-1的多项式惟一确定,其相应的多项式可表示为:
C( x) cn xn1 c2 x c1
(6.3.1)
由循环码的特性可知,若C =(cncn-1…c2c1)是循环码C 的一个码字,则C(1) =(cn-1…c1cn) 也是该循环码的一个码

5 4 nk
g ( x) x 4 x 1 。如果想发送一
r ( x) x n k m( x) mod g ( x) x 4 ( x5 x 4 1) mod g ( x) x3 x 2
于是,发送码字多项式 C(x) x m(x) r(x) x ,x 应的发送码字为(1100011100)。

上式中列矩阵的元素就是生成多项式g(x)的系数,它本身 是一个码字,那么第一个矩阵即为(7,3)循环码的一致校验 矩阵,即: 0 0 0 h0 h1 h2 h3
H (7,3) 0 0 h0 0 h0 h1 h0 h1 h2 h1 h2 h3 h2 h3 0 h3 0 0 0 0 0
对应:
1 1 1 0 1 0 0 H 0 0 1 1 1 0 1 0 1 1 0 1 0 0 1
这样,就得到系统循环码的生成矩阵和一致校验矩 阵。
6.3.7 常用的循环 码
(1)
循环冗余校验码 在数据通信中,信息都是先划分成小块再组装成帧后(或 叫分组、包等,仅名称不同而已)在线路上统计复用传送 或存入共同物理介质的,帧尾一般都留有8、12、16或32 位用作差错校验。如把一帧视为一个码字,则其校验位 k k n 长度 n不变而信息位 和码长 是可变的,其结构符合 ( n, k ) (n i, k i ) 缩短循环码的特点。只要以一个选定的 循环码为基 i 础,改变 的值,就能得到任何信息长度的帧结构,而 纠错能力保持不变。这种应用下的缩短循环码称为循环 冗余校验码(Cyclic Redundancy Check,CRC)。
7 3 4 2
g ( x) x4 x2 x 1
其三次多项式为校验多项式:
h( x) x x 1
3
由等式x7+1=g(x)h(x),两端的同次系数应相等,得:
x3的系数 g3h0 g2h1 g1h2 g0h3 0
x4的系数 g4h0 g3h1 g2h2 g1h3 0 x5的系数 g4 h1 g3h2 g2 h3 0 x6的系数 g4h2 g3h3 0 将上述方程组写成矩阵形式:
(i ) i n
(6.3.3)
表6.3.2 (7,3)循环码的循环移位 循环 次数 0 1 2 3 4 5 6 码字 0000000 0011101 x4+x3+x2+1 码多项式
0111010 x(x4+x3+x2+1)mod(x7+1) =x5+x4+x3+x 1110100 x2(x4+x3+x2+1)mod(x7+1)=x6+x5+x4+x2 1101001 x3(x4+x3+x2+1)mod(x7+1)=x6+x5+x3+1 1010011 x4(x4+x3+x2+1)mod(x7+1)=x6+x4+x+1 0100111 x5(x4+x3+x2+1)mod(x7+1)=x5+x2+x+1 1001110 x6(x4+x3+x2+1)mod(x7+1)=x6+x3+x2+x
n k
g1x g0
(6.3.5)
码的生成多项式具有如下性质: ① 在(n,k)循环码中, n-k 次码多项式是最低次的码多项式。 ② 在(n,k)循环码中, g(x) 是惟一n-k次多项式。 ③ 在(n,k)循环码中,每个码多项式C(x) 都是g(x)的倍式。 ④ 任意(n,k)循环码的生成多项式g(x) 一定xn+1 。
相关文档
最新文档