在线性分组码中,两个码字对应位上数字不同的位数称为码字距离,简称距离,又称汉明距离。
编码中各个码字间距离的最小值称为最小码距d,最小码距是衡量码组检错和纠错能力的依据,其关系如下:
(1)为了检测e个错码,则要求最小码距d>e+1;
(2)为了纠正t个错码,则要求最小码距d>2t+1;
(3)为了纠正t个错码,同时检测e个错码,则要求最小码距d>e+t+1,e>t。
线性分组码是建立在代数群论基础上的,各许用码字的集合构成了代数学中的群,它们的主要性质如下:
(1)任意两许用码字之和(对于二进制码这个和的含义是模二和)仍为一个需要码字,也就是说,线性分组码具有封闭性;
(2)码字间的最小码距等于非零码的最小码重。
生成矩阵G
由于码字空间C是n维数二元线性空间中的一个k维子空间,由线性代数理论可知,
是由“1”或“0”元素组成的矩阵,它的k个行就是线性独立矢量,,,。
矩阵G称为线性码C的生成矩阵。公式(1.1)建立了信息空间到码字空间的线性映射。
经过行变换和列变换的矩阵生成的线性空间与原来的矩阵生成的线性空间是等价的,也就是说生成矩阵经过初等变换之后,所生成的码与原来的码是等价的。由此可以将生成矩阵经过变换之后,形成系统生成矩阵(即产生的码中,信息码元在码字的高位部分,而校验码元在码字的低位部分)。即
校验矩阵H
这也表示由G的行矢量所扩张成的k维子空间与H矩阵行矢量所扩张成的r维子空间是正交的。
G与H中只要有一个确定,另一个就是可以确定的。只要校验矩阵给订=定,校验码元和信息码元之间的关系就完全确定了。
举例
下面是一个(7,3)线性分组码,有信息组(m2m1m0),信息组在码字的前部,即:
生成矩阵为
信息组和对应的码字由表3.1给出。
则其校验矩阵为
伴随式和错误检测
设(n,k)线性分组码,生成矩阵为G,校验矩阵H,发送端送出的码字为:
C=(cn-1 cn-2 …c1c0)
接收端收到的码字为:
R=(rn-1 rn-2…r1 r0)
由于信道噪声的干扰为:
R=E+C
E为传输过程中由于干扰而叠加在C上的错误图样。
E=(en-1 en-2…e1 e0)
其中
接收端可以用H矩阵来进行检验,检验运算的结果为伴随式S。
可见,由于CHT=0,因此伴随式(或称校验因子)S只和E有关。
本节所举的(7,3)码,最小码距为4,可纠正一位错同时检二位错。
(1)纠一位错
设E=(0100000),即C5的位置出错,则有:
S正好为H中对应C5位置的一列,可见是C5出错,即可纠正。
(2)检两位错
设E=(0110000),即C5C4出错,则有:
S不等于0,表示有错,但它又不等于H中的任一列,所以能检二位错,但不能纠正。
(3)三位错
设E=(0111000),即C5C4C3同时出错,则有:
S不等于0,表示有错,但S却是H中对应于C0的一列,于是判断C0出错,造成错纠。因此该(7,3)线性码只能纠一位错,检两位。在有三位出错时,就会产生错纠。但如果只用于检错,则可检三位错。
所以,当S0时,即可判断R不是码字,即有错。当S=0时,按收方就认为R是对方发送的码字C。但是需要指出的是如果E恰好等于码字集中7个非零码字中的一个,即:
R=C+E
E为另一码字,二个码字之和,必然为一码字,从而有:
RHT=0
这种类型的错误图样称为不可检错误图样。由于有2k-1个非零码字,所以有2k-1个不可检错误图样。