道为
随机信道。由于信息码元序列是一种随机序列,接收端是无法预知的,也无法识别其中有无
错码。为了解决这个问题,可以由发送端的信道编码器在信息码元序列中增加一些监督码元。
这些监督码元和信码之间有一定的关系,使接收端可以利用这种关系由信道译码器来发现或
纠正可能存在的错码。在信息码元序列中加入监督码元就称为差错控制编码,有时也称为纠
错编码。不同的编码方法有不同的检错或纠错能力。有的编码就只能检错不能纠错。
那么,为了纠正一位错码,在分组码中最少要增加多少监督位才行呢?编码效率能否提
高呢?从这种思想出发进行研究,便导致汉明码的诞生。汉明码是一种能够纠正一位错码且
编码效率较高的线性分组码。下面我们介绍汉明码的构造原理。
一般说来,若码长为
,信息位数为k,则监督位数r=
k。如果希望用r个监督位构
造出r个监督关系式来指示一位错码的
种可能位置,则要求
2r1≥
或2r≥kr1
(8-1)
下面我们通过一个例子来说明如何具体构造这些监督关系式。
设分组码
,k中k=4,为了纠正一位错码,由式(8-1)可知,要求监督位数r≥3。
若取r3,则
kr7。我们用α6α5…α0表示这7个码元,用S1、S2、S3表示三个监督关系式中的校正子,则S1S2S3的值与错码位置的对应关系可以规定如表181所列。
S1S2S3
错码位置
表81
S1S2S3
错码位置
f001
α0
101
α4
010
α1
110
α5
100
α2
111
α6
011
α3
000
无错
由表中规定可见,仅当一错码位置在α2、α4、α5或α6时,校正子S1为1;否则S1为
0。这就意味着α2、α4、α5和α6四个码元构成偶数监督关系
S1=α6α5α4α2
(8-2)
同理,α1、α3、α5和α6构成偶数监督关系
S2=α6α5α3α1
(8-3)
以及α0、α3、α4和α6构成偶数监督关系
S3=α6α4α3α0
(8-4)
在发送端编码时,信息位α6、α5、α4和α3的值决定于输入信号,因此它们是随机的。监
督位α2、α1和α0应根据信息位的取值按监督关系来确定,即监督位应使上三式中S1、S2和
S3的值为零(表示变成的码组中应无错码)
α6α5α4α2=0
α6α5α3α1=0
α6α4α3α0=0
18-5)
由上式经移项运算,解出监督位
α2=α6α5α4
α1=α6α5α3
α0=α6α4α3
给定信息位后,可直接按上式算出监督位,其结果如表82所列。
(8-6)
信息位α6α5α4α3
监督位α2α1α0
表82
信息位α6α5α4α3
监督位α2α1α0
f0000
000
1000
111
0001
011
1001
100
0010
101
1010
010
0011
110
1011
001
0100
110
1100
001
0101
101
1101
010
r