第四章 循环码-2013-编码理论
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C
(i )
(x ) ≡ x
i
• C (x )
n x 模 +1
3
例(7,3)循环码
4
三. 生成多项式g(x)
z 定义:在(n,k)循环码中,生成多项式是 唯一的n-k次码多项式,且次数最低。
g (x ) = x
n−k
+ g n −k −1 x
n − k −1
+ g1 x + g 0
循环码的生成多项式是
10
4.3 系统循环码的编码
已知 m( x ) = mk −1 x k −1 + mk −2 x k −2 + " + m1 x + m0
C ( x) = Cn −1 x n −1 + Cn − 2 x n − 2 + " C1 x + C0
对于系统码ቤተ መጻሕፍቲ ባይዱ
C(x ) = Cn −1 x n −1 + " + Cn − k x n − k + Cr −1 x r −1 + " + C1 x + C0
3 4 3 2
8
4.2 循环码的G和H
G的性质: 是一个n列k行的矩阵,每一行是一个码 字。由循环性质可知,
C ( x ) = x n − k m ( x ) + r ( x ) r ( x ) ≡ x n −k m( x )
mod g ( x ) 运算求r (x )
设
m=[100…0] m(x ) = x k −1 , x n − k m(x ) = x n −1 , r (x ) ≡ x n −1 m=[010…0] m(x ) = x k − 2 , x n − k m(x ) = x n − 2 , r (x ) ≡ x n − 2 m=[000…1] m(x ) = x 0 , x n − k m(x ) = x n − k , r (x ) ≡ x n − k
x
n −k
m(x )
r (x )
待求的监督多项式
11
循环码的编码问题可归结为三步:
z 1.提高m(x)的次数,即 2. r ( x ) ≡ x
n −k
x
n −k
m(x )
m(x )
mod g ( x ) 运算求r (x )
3. C (x ) = x n −k m (x ) + r ( x ) 例题
x +1
n
的因式 .
5
z 定理1:每个次数小于或等于n-1 且为g(x)的倍 式的多项式,必是一个码多项式。 证明:由循环码的性质,若g(x)是码多项式 , 则它的循环移位也是循环码的码多项式,即
g( x ), xg ( x ), " , x
k −1
g (x )
都是码多项式 。
另外,循环码也是线性码,由码的封闭性,它们 的线性组合也是码多项式,即:
可见,码矢循环一次的码多项式是原码多项 n 式乘x,再除以 x + 1 的余式。写作:
C
(1)
(x ) ≡ x • C (x )
模 x +1
n
由此可推,循环i次后为:
C (i ) ( x) = Cn −1−i x n −1 + Cn − 2−i x n − 2 + " C0 x i + Cn −1 x i −1 + " + Cn −i
7
例4.1 求(7,3)循环码的生成多项式。
x + 1 = ( x + 1)( x + x + 1)( x + x + 1)
7 3 2 3
g1 ( x) = ( x + 1)( x + x + 1) = x + x + x + 1
3 2 4 2
g 2 ( x) = ( x + 1)( x + x + 1) = x + x + x + 1
1 " 0⎤ 0 " 0⎥ ⎥ # # #⎥ ⎥ 0 " 1⎦
r −1 r −2 ⎧ ( ) = + + " hr1 r x h x h x 所以, n−1 11 21 ⎪ r −1 r −2 ⎪rn − 2 ( x ) = h12 x + h22 x + " hr 2 ⎨ # ⎪ r −1 r −2 ⎪ ( ) = + + " hrk r x h x h x 1k 2k ⎩ n−k
第四章
4.1
循环码
基本概念
一. 定义:是具有循环特性的线性分组码。可以用 简单的反馈移位寄存器实现编码和伴随式计算, 并可使用多种简单而有效的译码方法。
(7,3)码 C= 0011101 循环一次 0111010 循环二次 1110100 循环三次 1101001 四次 1010011 五次 0100111 六次 1001110
0 0 " 1 0 " # # # 0 0 "
0 h11 0 h12
# # 1 h1k
h 21 " h r1 ⎤ h 22 " h r2 ⎥ ⎥ # # # ⎥ ⎥ h 2k " h rk ⎦
⎡ h11 h12 ⎢h h 22 21 ⎢ H= ⎢ # # ⎢ ⎣ h r1 h r2
" h1k " h 2k " # " h rk
(m
k −1 k −2 x + m x + " m1 x + m0 )g ( x ) k −1 k −2
应是码多项式。
6
z 定理2: C ( x ) = g ( x ) • q ( x )
在(n,k) 循环码中,每个码多项式一定是其生成 多项式的倍式。 证明:码多项式一定是生成多项式的倍式。若不是, 则C(x)除以g(x)后可写成:
S = [S r −1 S r − 2 " S1 S 0 ]
r −1
S (x ) = S r −1 x
+ S r −2 x
r −2
+ " + S1 x + S 0
⎡ Rn −1 ⎤ ⎢R ⎥ ⎢ n − 2 ⎥ ⎡ S r −1 ⎤ ⎢S ⎥ ⎢ ⎥ # r −2 ⎥ ⎢ S T = HR T = H ⎢ = ⎥ ⎢ Rn − k ⎥ ⎢ # ⎥ ⎥ ⎢ # ⎥ ⎢ ⎣ S0 ⎦ ⎢ ⎥ ⎢ ⎣ R0 ⎥ ⎦
17
S ( x ) = Rn −1 h11 x r −1 + h21 x r − 2 + " hr1 + Rn − 2 + # + # + Rr −1 x r −1 + Rr − 2 x r − 2 + " R0
( (h (
)
r −1 r −2 + + " hr 2 x h x 12 22
) )
≡ Rn −1 x n −1 mod g ( x )
(n,k)码 [C n −1C n − 2 "" C1C 0 ]
循环一次得 循环 i 次得
[C n − 2 C n −3 " C 0 C n −1 ] [C n −1−i C n − 2−i " C n −i ]
可见,任何一个码字循环移 位后仍是 2 k − 1 个非0码字中的 一个,称为(n,k)循环码。
门
控制
g1
g2
......
g n -k -1
门
接收字输入
伴随式输出
控制
19
z 2.由S(x)求E(x)
因为 R (x ) = C (x ) + E (x ) ,但是C(x)是g(x)的倍式,所以
S ( x) ≡ [C(x) + E(x)] ≡ E(x) mod g (x)
ˆ =R+E 3. C
20
3.
(7,4)循环码的编码电路
控制门
时序控制
2
输出
m( x )
1
K
g ( x) = x + x + 1
3
15
4.4
循环码的一般译码原理
与线性码相同,译码分为三步:已知R(x), g(x)
1. S T = HR T 求S 2.由S求E ˆ =R+E 3. C
16
一.伴随式的计算 1.求S,伴随多项式S(x).
将原码多项式乘x,再除以 x n + 1
C n − 2 x n −1 + C n −3 x n − 2 + " + C n −1 xC ( x ) C (1) ( x ) = C n −1 + = C n −1 + n n n x +1 x +1 x +1
2
C n − 2 x n −1 + C n −3 x n − 2 + " + C n −1 xC ( x ) C (1) ( x ) = C n −1 + = C n −1 + n n n x +1 x +1 x +1
⎡1 ⎢0 G=⎢ ⎢# ⎢ ⎣0
rn−1 (x)⎤ 0 0 " 0 ~ 1 0 " 0 ~ rn−2 (x)⎥ ⎥ # # " # # ⎥ ⎥ 0 0 " 1 ~ rn−k (x)⎦
i
9
~ ri ( x )是ri ( x )的系数
ri ( x )为 x mod g ( x )的余式
⎡1 ⎢0 G=⎢ ⎢# ⎢ ⎣0
1
二. 码多项式
z 为了运算方便,将码矢的各分量作为多项式的系数, 而把码矢表示成多项式,称为码多项式。一般表示 为:
C ( x) = Cn −1 x
(1)
n −1
+ Cn − 2 x
n−2
+ " C1 x + C0
循环1次后为:
C ( x) = Cn−2 x
n −1
+ C n −3 x
n−2
+ " C 0 x + C n −1
C (x ) = q(x ) • g (x ) + r (x )
C (x ) + q(x ) • g (x ) = r (x )
r(x)的次数为r-1,C(x)是码多项式,由定理, q(x)g(x) 也是码多项式,由封闭性, 仍是码多项式,但是r(x)的次数小于n-k,这与线性循 环码的组成相矛盾,因为不存在有次数低于n-k的码 多项式,即g(x)是次数最低的。所以r(x)=0。
≡ Rn − 2 x n − 2 mod g ( x ) ≡ Rn − k x n − k mod g ( x ) ≡ mod g ( x )
+ Rn − k h1k x r −1 + h2 k x r − 2 + " hrk
z 所以
S ( x ) ≡ R( x ) mod g (x )
18
循环码伴随式计算电路
二.循环码的通用译码法
反馈 ......
伴随式寄存器
......
错误图样检测器
输入
缓冲寄存器
图4.4.3 循环码通用译码器
输出
工作过程:
1. 2.
接收码字移入伴随式计算电路,同时将其移入缓存器; 伴随式写入错误图样检测器,并循环移位,同时移出。当检 测出1时,表示输出符号有错,并纠正,同时检测器输出反 馈到伴随式计算电路,修正伴随式; 接收码字缓冲器和模2和纠错电路。
12
n-k级编码器
g0=1 gr=1
13
循环码编码电路结构和工作原理
控制门
时序控制
g1
g2
......
g n −k −1
2
r0
r1
r2
rn − k −1
m( x )
输出
K 1
工作过程:
1. 2.
各级移存器清零,控制门打开; 信息码字依次从末端输入,同时送入信道,在每加入一个信 息码字时,移存器移位一次,当k位都移入后,移存器中的 n-k位即为监督码字; 控制门关,断开反馈,开关由1到2,监督码字依次移出,送 14 入信道,与k位信息码字组成一个码字,完成编码。
21
3.
三.循环汉明码 z 定义:以r次本原多项式为生成多项式的循环 码,称为循环汉明码。
码的参数如下:
⎧ ⎪ ⎪ ⎨ ⎪k ⎪ ⎩
n = 2 −1 n−k = m m = 2 −1− m d min = 3
m
22
例题4.7
,
mod g ( x )
mod g ( x )
mod g ( x )
以这k个码字作为行,得到G(x)和G:
⎡ x n −1 + rn −1 (x ) ⎤ ⎢ n−2 ⎥ ( ) + x r x n−2 ⎥ G(x ) = ⎢ ⎢ ⎥ # ⎢ n−k ⎥ ⎢ ⎣ x + rn − k ( x )⎥ ⎦
⎧ Sr−1 = h11Rn−1 + h12Rn−2 + h1k Rn−k + Rr−1 ⎪S = h R + h R + h R + R r−2 r−2 21 n−1 22 n−2 2k n−k ⎪ ⎪ # ⎨ ⎪ # ⎪ ⎪ ⎩ S0 = hr1Rn−1 + hr2Rn−2 + hrkRn−k + Ro