线性分组码

  • Post author:
  • Post category:其他

基本概念

    分组码是一组固定长度的码组,可表示为(n , k),通常它用于前向纠错。在分组码中,监督位被加到信息位之后,形成新的码。在编码时,k个信息位被编为n位码组长度,而n-k个监督位的作用就是实现检错与纠错。当分组码的信息码元与监督码元之间的关系为线性关系时,这种分组码就称为线性分组码
    对于长度为n的二进制线性分组码,它有种可能的码组,从种码组中,可以选择M=个码组(k<n)组成一种码。这样,一个k比特信息的线性分组码可以映射到一个长度为n码组上,该码组是从M=个码组构成的码集中选出来的,这样剩下的码组就可以对这个分组码进行检错或纠错。
    线性分组码是建立在代数群论基础之上的,各许用码的集合构成了代数学中的群,它们的主要性质如下:
    (1)任意两许用码之和(对于二进制码这个和的含义是模二和)仍为一许用码,也就是说,线性分组码具有封闭性;
    (2)码组间的最小码距等于非零码的最小码重。
    在8.2.1节中介绍的奇偶监督码,就是一种最简单的线性分组码,由于只有一位监督位通常可以表示为(n,n-1),式(8-5)表示采用偶校验时的监督关系。在接收端解码时,实际上就是在计算:

 
                              (8-6)

 

    其中,  … 表示接收到的信息位,表示接收到的监督位,若S=0,就认为无错;若S=1就认为有错。式(8-6)被称为监督关系式,S是校正子。由于校正子S的取值只有“0”和“1”两种状态,因此,它只能表示有错和无错这两种信息,而不能指出错码的位置。
    设想如果监督位增加一位,即变成两位,则能增加一个类似于式(8-6)的监督关系式,计算出两个校正子 而共有4种组合:00,01,10,11,可以表示4种不同的信息。除了用00表示无错以外,其余3种状态就可用于指示3种不同的误码图样。
    同理,由r个监督方程式计算得到的校正子有r位,可以用来指示-1种误码图样。对于一位误码来说,就可以指示-1个误码位置。对于码组长度为n、信息码元为k位、监督码元为rn – k位的分组码(常记作(nk)码),如果希望用r个监督位构造出r个监督关系式来指示一位错码的n种可能,则要求:

 
                               (8-7)

      下面通过一个例子来说明线性分组码是如何构造的。设分组码(n , k)中k = 4,为了能够纠正一位错误,由式(8-7)可以看到,要求r ≥ 3,若取r = 3,则n = k+r = 7。因此,可以用表示这7个码元,用表示利用三个监督方程,通过计算得到的校正子,并且假设三位校正字码组与误码位置的关系如表8-4(当然,也可以规定成另一种对应关系,这并不影响讨论的一般性):
      

    由表中规定可已看到,仅当一错码位置在时,校正子为1;否则为0。这就意味着四个码元构成偶数监督关系:
                  (8-8a)

    同理,构成偶数监督关系:

                 (8-8b)

 

表8-4校正字与误码位置

S1S2S3

误码位置

 

S1S2S3

误码位置

001

010

100

011

a0

a1

a2

a3

101

110

111

000

a4

a5

a6

无错

 

    以及构成有数监督关系:

                              (8-8c)

      在发送端编码时是信息码元,它们的值取决于输入信号,因此是随机的。是监督码元,它们的取值由监督关系来确定,即监督位应使式(8-8)的三个表达式中的的值为零(表示编成的码组中应无错码),这样式(8-8)的三个表达式可以表示成下面的方程组形式:

 
                                  (8-9)

      由上式经移项运算,接出监督位

 
                                    (8-10)

      根据上面两个线性关系,可以得到16个许用码组如表8-5所示:

 

表8-5许用码组

信息位

监督位

 

信息位

监督位

 

信息位

监督位

 

信息位

监督位

a6a5a4a3

a2a1a0

a6a5a4a3

a2a1a0

a6a5a4a3

a2a1a0

a6a5a4a3

a2a1a0

0000

0001

0010

0011

000

011

101

110

0100

0101

0100

0111

110

101

011

000

1000

1001

1010

1011

111

100

010

001

1100

1101

1100

1111

001

010

100

111

 

    接收端收到每个码组后,计算出,如不全为0,则可按表8-4确定误码的位置,然后予以纠正。例如,接收码组为0000011,可算出=011,由表8-4可知在位置上有一误码。
    不难看出,上述(7,4)码的最小码距,因此,它能纠正一个误码或检测两个误码。如超出纠错能力,则反而会因“乱纠”而增加新的误码。

 

    8.3.2 监督矩阵H和生成矩阵G

    式(8-9)所述(7,4)码的三个监督方程式可以重新改写为如下形式:

 
                   (8-11)

      对于式(8-11)可以用矩阵形式来表示:

 
            (8-12)

      上式可以记作:,其中

 
                    (8-13a)

 
                        (8-13b)

 
                                 (8-13c)

 

    通常H称为监督矩阵A称为信道编码得到的码字。在这个例子中H为r×n阶矩阵,P为r×k阶矩阵,Ir为r×r阶单位矩阵,具有这种特性的H矩阵称为典型监督矩阵,这是一种较为简单的信道编译码方式。典型形式的监督矩阵各行是线性无关的,非典型形式的监督矩阵可以经过行或列的运算化为典型形式。
    对于式(8-10)也可以用矩阵形式来表示:

 

      或者
 
             (8-14)

      比较式(8-13a)和式(8-14)可以看到,如果在Q矩阵的左边在加上一个k×k的单位矩阵,就形成了一个新矩阵G

 
                      (8-15)

      这里G称为生成矩阵,利用它可以产生整个码组

 
                        (8-16)

      由式(8-15)表示的生成矩阵形式称为典型生成矩阵,利用式(8-16)产生的分组码必为系统码,也就是信息码元保持不变,监督码元附加在其后。

 

    8.3.3 校验子S

    在发送端信息码元M利用式(8-16),实现信道编码,产生线性分组码A;在传输过程中有可能出现误码,设接收到的码组为B。则收发码组之差为:

 
             (8-17)

      这里,表示i位有错,,表示i位无错。基于这样的原则接收端利用接收到的码组B计算校正子
 
                  (8-18)

 

    因此,校正子仅与E有关,即错误图样与校正子之间有确定的关系。
    对于上述(7,4)码,校正子S与错误图样的对应关系可由式(8-18)求得,其计算结果见表8-6所示。在接收端的译码器中有专门的校正子计算电路,从而实现检错和纠错。

 

表8-6(7,4)码校正子与错误图样的对应关系

序号

错误码位

E

S

e6 e5 e4 e3 e2 e1 e0

S3 SS1

0
1
2
3
4
5
6
7

/
b0
b1
b2
b3
b4
b5
b6

0  0  0  0  0  0  0
0  0  0  0  0  0  1
0  0  0  0  0  1  0
0  0  0  0  1  0  0
0  0  0  1  0  0  0
0  0  1  0  0  0  0
0  1  0  0  0  0  0
1  0  0  0  0  0  0

0  0  0
0  0  1
0  1  0
1  0  0
0  1  1
1  0  1
1  1  0
1  1  1

 


版权声明:本文为zhongrg原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。