第三章_线性分组码
线性分组码
系统码的校验矩阵和生成矩阵可以转换。
13
线性分组码的性质
线性分组码中任意两个码字的模2加仍为一个码字,这个性 质称为码的封闭性。 零矢量必须是任一线性分组码中的一个码字,称为零码字。 生成矩阵中各行都是一个码字,且生成矩阵的各行是线性 无关的(任意两行相加不为零)。任意码字C是生成矩阵中 各行的某一线性组合。 校验矩阵的各行应该是线性无关的,否则将得不到r个线性 无关的监督关系式,从而得不到r个独立的监督位。
23
汉明码
汉明码实际上是(2m-1, 2m-m-1)线性分组码,其校验行有m行,共有 n=2m-1列,任一列都不为零且两两互不相等,因此能纠正任何单 个错误。 汉明码的校验矩阵一般有两种构造方式: 一是校验矩阵的标准形式,即H=[PI] 式中P为m×(n-m)维矩阵,I为m×m维单位阵。按这种校验矩阵编 出的码是系统码。 二是校验矩阵的列是按二进制数的自然顺序从左到右排列的非零 列,例如,当n=7,k=4时,H中的第一列为[0 0 1],第二列为[0 1 0],…,第七列为[1 1 1],按这种校验矩阵编出的码是非系统码。 发生单个错误时,伴随式是H中与错误位置对应的列,所以汉明码 伴随式二进制数的值就是错误位置的序号。
14
例题-由生成矩阵生成码字
由生成矩阵 所有码字为
m 000
1 0 0 1 1 1 0 G 0 1 0 0 1 1 1 0 0 1 1 1 0 1
生成的(7,3)码的
C 0000000
0 0 0 1 1 1 1
0 1 1 0 0 1 1
1 0 1 0 1 0 1
在校验方程的矩阵形式中,令
1 1 则校验方程可以写成 H 1 0
HCT=0 或CHT=0
线性分组编码
背景
在通信中,由于信息码元序列是一种随机序列,接收端无法预知码元的取值,也无法识别其中有无错码。所 以在发送端需要在信息码元序列中增加一些差错控制码元,它们称为监督码元(校验元)。这些监督码元和信息 码元之间有确定的关系。
在信息码元序列中加监督码元就称为差错控制编码,差错控制编码属于信道编码。
信息码元和监督码元之间有一种关系,关系不同,形成的码类型也不同。可分为两大类:分组码和卷积码。 其中,分组码是把信息码元序列以每k个码元分组,编码器将每个信息组按照一定规律产生r个多余的码元(称为 校验元),形成一个长为n=k+r的码字。
感谢观看
校验矩阵H
这也表示由G的行矢量所扩张成的k维子空间与H矩阵行矢量所扩张成的r维子空间是正交的。
G与H中只要有一个确定,另一个就是可以确定的。只要校验矩阵给订=定,校验码元和信息码元之间的关系 就完全确定了。
举例
下面是一个(7,3)线性分组码,有信息组(m2m1m0),信息组在码字的前部,即: 生成矩阵为 信息组和对应的码字由表3.1给出。 则其校验矩阵为
基本概念
当分组码的信息码元与监督码元之间的关系为线性关系时(用线性方程组),这种分组码就称为线性分组码。 包括汉明码和循环码。
对于长度为n的二进制线性分组码,它有种可能的码字,从中可以选择M=个码字(k<n)组成一种编码,其中 码字称为许用码字,其余码字称为禁用码字。这样,一个k比特信息可以映射到一个长度为n的码组中,该码字是 从M个码字构成的码字集合中选出来的,剩下的码字即可以对这个分组码进行检错或纠错。
在线性分组码中,两个码字对应位上数字不同的位数称为码字距离,简称距离,又称汉明距离。 编码中各个码字间距离的最小值称为最小码距d,最小码距是衡量码组检错和纠错能力的依据,其关系如下: (1)为了检测e个错码,则要求最小码距d>e+1; (2)为了纠正t个错码,则要求最小码距d>2t+1; (3)为了纠正t个错码,同时检测e个错码,则要求最小码距d>e+t+1,e>t。
线性分组码与循环码
线性分组码与循环码1.线性分组码的概念线性分组码是指信息位和监督位满足一组线性代数方程式的分组码。
其中分组码(n,k)满足条件式中,r=n-k为监督位数。
2.线性分组码的原理(1)监督矩阵①监督矩阵的表示形式式中,H为r×n阶监督矩阵;A为分组码构成的1×n阶矩阵。
②监督矩阵的典型式式中,P为r×k阶矩阵;I r为r×r阶单位方阵。
(2)生成矩阵式中,G为k×n阶生成矩阵;Q为k×r阶矩阵,是P的转置,即由生成矩阵可以产生整个码组式中,A0为由分组码的信息位构成的1×k阶矩阵。
3.线性分组码的检验(1)检验计算式中,S称为校正子;B为接收码组。
(2)检验规则①若为0,代表该位无错码;②若为1,代表该位有错码。
4.线性分组码的性质(1)封闭性线性分组码的任意两个码组之和仍为这种码中的一个码组。
(2)最小码距最小码距就是码组的最小重量(全“0”码组除外)。
六、循环码1.循环码的原理(1)循环码的定义循环码是指除了具有线性码的一般性质外,还具有循环性的码,即任一码组循环一位以后,仍为该码中的一个码组的编码方式。
(2)循环码的特点a.编码和解码设备简单;b.检(纠)错的能力较强。
(3)循环码的运算①循环码的代数表示将码组中各码元当作是一个多项式的系数,即把一个长度为n的码组表示成式中,x仅是码元位置的标记,该多项式称为码多项式。
②码多项式的按模运算一个长为n的循环码必为按模(x n+1)运算的一个余式,即式中,的作用是将代表的许用码组向左循环移位次得到许用码组。
③循环码的生成矩阵循环码的生成矩阵G可以写成式中,g(x)为循环码的生成多项式。
④循环码的生成多项式(n,k)循环码的生成多项式g(x)必须是一个常数项不为“0”的(n-k)次多项式且是的一个因子。
如(7,3)循环码的生成多项式g(x)为2.循环码的编解码方法(1)循环码的编码方法①用x n-k乘信息码元多项式m(x);②用g(x)除x n-k m(x),得到商Q(x)和余式r(x),即③令编出的码组为(2)循环码的解码方法①检错a.检错方法在接收端将用原生成多项式g(x)除接收码组B(x)。
线性分组码
❖ 信息码组 (101),即C6=1, C5=0, C4=1 ❖ 由线性方程组得: C3=0, C2=0, C1=1, C0=1
❖ 即信息码组 (101) 编出的码字为 (1010011)。
其它7个码字如表。
(7,3)分组码编码表
信息组 对应码字
000 0000000 001 0011101 010 0100111 011 0111010 100 1001110 101 1010011 110 1101001 111 1110100
矢量空间
❖ 每个矢量空间或子空间中必然包含零矢量 ❖ 两个矢量正交:V1V2= 0 ❖ 两个矢量空间正交:某矢量空间中的任意
元素与另一矢量空间中的任意元素正交 ❖ 正交的两个子空间V1、V2互为对偶空间
(Dual Space),其中一个空间是另一个空 间的零空间(null space,也称零化空 间)。
一致监督方程和一致监督矩阵
一致监督方程:
❖ 编码就是给已知信息码组按预定规则添加监督码元,以构成码字。 ❖ 在 k 个信息码元之后附加 r(r=n-k) 个监督码元,使每个监督元是
其中某些信息元的模2和。 ❖ 例k=3, r=4构成 (7,3) 线性分组码。设码字为
(C6,C5,C4,C3,C2,C1,C0) C6,C5,C4为信息元,C3,C2,C1,C0为监督元,每个码元取“0”或
为什么要引入线性码
发现或构造好码是信道编码研究的主要问题。 编码方案太多,以至全局搜索是不可能的。 现实的做法是对编码方案加以一定的约束,在一个子
集中寻找局部最优。 这种约束即要能包含尽可能好的码,又要便于分析,
便于译码。 目前对线性系统的研究远远比非线性系统要充分。
引入线性码的好处
线性分组码(免费)
线性分组码8.3.1 基本概念是一组固定长度的码组,可表示为(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位、监督码元为r=n - k位的分组码(常记作(n,k)码),如果希望用r个监督位构造出r个监督关系式来指示一位错码的n种可能,则要求:(8-7) 下面通过一个例子来说明的。
信息论基础——线性分组码
17
线性分组码的基本概念
信息位 00 01 10 11 x2 x0 x1 00000 x3 x0 x x x 01101 0 1 4 码字 10111 11010
信息位k=2 码字数M=4
可见,码字的三个校验元都由其前两位线 性组合得到,即可由的线性方程组求得;
18
线性分组码的基本概念
f1 : GF (2) 2 GF (2)5
信息位 00 01 10 11 码字 00000 01101 10111 11010
1 ( 0 1 ) 1 ( 1 0 ) 1 1
f( 1 1 ) 1 1 0 1 0
1 ( 0 1 1 0 1 )1 ( 1 0 1 1 1 ) 1 1 0 1 0
30
线性分组码的基本概念
汉明距离: 指(n,k)分组码中两个码字xn 、 yn对应位取 值不同的个数;记为d(xn , yn).
5 5 ( 1 0 1 0 1 ) , y ( 0 1 1 1 1 ) 例: x
d(x ,y ) 3
5 5
31
线性分组码的基本概念
线性分组码的最小距离: 称(n,k)分组码中任两个码字汉明距离的最小 值,为该分组码的最小距离d.
f ( 1 ( 0 1 ) 1 ( 1 0 ) ) 1 ( 0 1 1 0 1 ) 1 ( 1 0 1 1 1 ) 线性编码
19
线性分组码的基本概念
例题1: 下面是某个(n,k)线性二元码的全部码字
x16=000000 x26=100011 x36=010101 x46=001111 x56=110110 x66=101100 x76=011010 x86=111001 求n、k的值;
第3章 线性分组码
第3章线性分组码第3章线性分组码第3章线性分组码第3章线性分组码章3.1 线性分组码的基本概念 3.2 码的一致校验矩阵与生成矩阵 3.3 伴随式与标准阵列及其它译码 3.4 线性码的覆盖半径 3.5 由一个已知码构造新码的简单方法 3.6 用多个已知码构造新码的方法 3.7 线性码的重量分布与译码错误概率3.8 线性码的纠错能力1第3章线性分组码第3章线性分组码3.1 线性分组码的基本概念线性空间是一个非空集合, 是一个数域, 在集合V 设V是一个非空集合 P 是一个数域在集合中定义了一种代数运算,叫做加法即对在V 加法: 义了一种代数运算,叫做加法即对在中都存在唯记为:一的一个元素λ, 一的一个元素,称λ为α与β的和,记为:的λ = α + β ;在P与V的元素之间还定义了一种运算,的元素之间还定义了一种运算,与的元素之间还定义了一种运算叫做数量乘法数量乘法:叫做数量乘法:即α ∈ V , k ∈ P , 中都存在唯一的一个元素δ与它们对应在V中都存在唯一的一个元素与它们对应,称δ为中都存在唯一的一个元素与它们对应,为 k与α 的数量乘积,记为δ = kα . 如果加法和数量乘法数量乘积,还满足下述规则,则称V 为数域P上的线性空间:上的线性空间还满足下述规则,则称为数域上的线性空间:第3章线性分组码第3章线性分组码3.1 线性分组码的基本概念加法满足下列四条规则:加法满足下列四条规则:α , β , γ ∈ V ① α + β = β +α ② (α+ β ) + γ = α + ( β + γ ) 中有一个元素0, ③ 在V中有一个元素,对α ∈ V , 有α + 0 = α 中有一个元素都有V中的一个元素中的一个元素β ④ 对α ∈V , 都有中的一个元素β,使得具有这个性质的元素0称为称为V的零元素) (具有这个性质的元素称为的零元素)α + β = 0 ;(β称为α 的负元素) 负元素)第3章线性分组码第3章线性分组码3.1 线性分组码的基本概念数量乘法满足下列两条规则 : ⑤ 1α = α ⑥ k ( lα ) = ( kl )α 数量乘法与加法满足下列两条规则:数量乘法与加法满足下列两条规则:⑦ ( k + l )α = kα + lα ⑧ k (α + β ) = kα + k β第3章线性分组码第3章线性分组码3.1 线性分组码的基本概念线性空间的性质零元素是唯一的负元素是唯一的,负元素是唯一的,α ∈ V 关于0元素有关于元素有0α = 0, k 0 = 0, ( 1)α =α , - α唯一k (α β ) = kα k β如果如果kα =0,那么 =0或α =0. ,那么k= 或第3章线性分组码第3章线性分组码3.1 线性分组码的基本概念线性分组码定义[n, k]线性分组码是GF(q)上的n维线性空间中的一个k 维子空间。
线 性 分 组 码
即: ( A1+A2 ) ·HT =0
所以 ( A1+A2 )也是一个许用码组.
由封闭性可知两个码组(A1、A2 )的码距必是另一码组 ( A1+A2 )的码重。
1 .2 汉明码
汉明码是一种能够纠正单个错误的线性分组码。它有 以下特点:
(1)最小码距dmin=3,可纠正一位错误; (2)码长n与监督元个数r之间满足关系式:
1 1 1 0 1 0 0
0
1 1 0 1 0 1 0 a6 a5 a4 a3 a2 a1 a0 T 0
1 0 1 1 0 0 1
0
上式可以记作:HAT=0T或AHT=0 。
其中: 0 0 0 0
A a6 a5 a4 a3 a2 a1 a0
1 1 1 0 1 0 0
H 1 1 0 1 0 1 0 P Ir
E B A
其中பைடு நூலகம்=[en-1,en-2,…,e1,e0],且:
ei
0
1
;当bi=ai ;当bi≠ai
式(10.6)也可写作
B AE
令S=BHT,称为伴随式或校正子。
S BHT (A E)HT EHT
因此,校正子仅与E有关,即错误图样与校正子之 间有确定的关系。如表10.4所示, 用于检错并能纠正一位 错码。
n 2r 1
通常二进制汉明码可以表示为:
n,k 2r 1 , 2r 1 r
(7,4)系统汉明码的编码器电路:
a6
a6
a5
a5
a4
a4
a3
a3
a2
a1
a0
(7,4)系统汉明码的译码器电路:
b6
a6
b5
a5
第3章 线性分组码
a2 a6 a5 a4 a1 a 6 a 5 a 3 a0 a6 a4 a3
已知信息位后,就可直接计算出监督位。由此得出16个许用码组 表4-5(7,4)汉明码的许用码组 信息码 a6a5a4a3 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 监督码 a2a1a0 0 0 1 1 1 1 0 0 0 1 0 1 1 0 1 0 0 1 1 0 0 1 1 0 1 1 1 1 1 1 1 1 信息码 a6a5a4a3 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 监督码 a2a1a0 0 1 0 0 0 0 1 1 1 0 1 0 0 1 0 1 1 0 0 1 1 0 0 1
§3.2 码的一致校验矩阵与生成矩阵
一、 码的校验矩阵与生成矩阵
– [n ,k ,d]分组码的编码问题就是在n 维 线性空间Vn 中,如何找出满足一定要求的, 有2k 个矢量组成的k 维线性子空间Vn ,k 。 – 或者说, 在满足给定条件(码的最小距离d或 码率R)下, 如何从已知的k 个信息元求得r=n -k 个校验元。
• 二进制(5,3)码
– K位信息空间23
• • • • • • • • 000 001 010 011 100 101 110 111
n位编码空间25
00000 00100 01000 01100 10000 10100 11000 11100 00001 00101 01001 01101 10001 10101 11001 11101 00010 00110 01010 01110 10010 10110 11010 11110 00011 00111 01011 01111 10011 10111 11011 11111
线性分组码
x1 + x 2 + x 4 = 0 x1 + x 3 + x 5 = 0 x + x + x = 0 3 6 2
1 1 0 1 0 0 令 H= 1 0 1 0 1 0 0 1 1 0 0 1
6
则 校 验 方 程 (2) 可 写 为
H (x ) 0 或 x H
码字
x1 x 2 x 3 x 4 x 5 x6
0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 1 1 1 1 0 0 0 1 0 1 1 0 1 0 0 1 1 0 0 1 1 0
x1 x 2 x3 x4 x 5 x6
3
译码规则
给 定 信 道 X , Q ( y x ), Y , 设 有 函 数 F : Y X , 对 每 一 个 输 出 符 号 y Y都 有 唯 一 确 定 的 输 入 符 号 x X与 之 对 应 , 则 称 这 样 的 函 数 为 译 码 规则,记为
F ( y ) x, y Y , x X 显然对于同一信道,译码规则不是唯一的。
u1 u2 u3 u1 u 2 u1 u 3 u2 u3
(1) 中 构 造 的 码 字 中 x1 x 2 x 3 称 为 信 息 元 , x 4 x 5 x 6 称 为 校 验 元 。
15
校验元由方程组
x4 = x1 + x 2 x5 = x1 + x 3 x = x + x 2 3 6
k n
G F (2 ) G F ( 2 )
k
n
它 的 一 个 线 性 变 换 , 可 用 G F(2) 上 的 k n阶 矩 阵 表 示
线性分组码..
2r 1 n 或 2r k r 1
设分组码 (n, k) 中k = 4,为了纠正1位错码,监 督位需要多少位?
2r k r 1
监督位数 r 3 若取 r = 3,则n = k + r = 7
码组:(a6 a5 a4 a3 a2 a1 线性分组码的一般原理
线性分组码的构造
H矩阵
a 6 a 5 a 4 a 2 0 上面(7, 4)汉明码的例子有 a6 a5 a3 a1 0 a a a a 0 4 3 0 6
1 a 6 1 a5 1 a 4 0 a3 1 a 2 0 a1 0 a 0 0 改写为 1 a 6 1 a5 0 a 4 1 a3 0 a 2 1 a1 0 a 0 0 1 a 6 0 a5 1 a 4 1 a3 0 a 2 0 a1 1 a 0 0
S1 S2 S3 001
010 100 011
假设校正子与错码位置的对应关系如表规定(也可以另外规定) 。 错码位置 a0
a1 a2 a3
S1 S2 S3 101
110 111 000
错码位置 a4
a5 a6 无错码
仅当一位错码在a2 、a4、a5或a6时,校正子S1为1, 偶数监督关系 S1 a6 a5 a4 a2
S2 a6 a5 a3 a1 a1、a3、a5和a6构成偶数监督关系: a0、a3、a4和a6构成偶数监督关系: S3 a6 a4 a3 a0
监督位a2、a1和a0应根据信息位的取值按监督关系来确定,即 监督位应使S1、S2和S3的值为0:
a 6 a 5 a 4 a 2 0 a6 a5 a3 a1 0 a a a a 0 4 3 0 6
第三章线性分组码
G [ g k 1 g ( k 1)( n 1) g1 g 0 ]T g1( n 1) g 0( n 1) g ( k 1)1 g11 g 01 g ( k 1)0 g10 g 00
其中 gi [ gi (n1) gi1gi 0 ] ,i=k-1, ,0,是G中第i行的行矢量。 与任何一个(n,k)线性码的码空间C相对应,一定存在一个对偶空 间D。事实上,码空间基底数k只是n维n重空间的全部n个基底的一部 分,若能找出另外n-k个基底,也就找到了对偶空间D。既然用K个基底能 产生一个(n-k)线性码,那么也能用n-k个基底产生一个有 2nk 个码矢 的(n,n-k)线性码,称之为(n-k)线性码的对偶码。将D空间的n-k个 基底排列起来,可构成一个(n-k) n矩阵,称为码空间C的校验矩阵 H,它正是(n,n-k)对偶码的生成矩阵,它的每一行是对偶码的一个码 字。C和D的对偶是相互的,G和C的生成矩阵,又是D的校验矩阵;而H 是D的生成矩阵,又是C的校验矩阵。
第四章
线性分组码
第四章
4.1 4.2 4.3 4.4 4.5 4.6 4.7 线性分组码基本概念 生成矩阵和校验矩阵 伴随式与译码 码的纠、检错能力与MDC码 完备码与汉明码 扩展码、缩短码与删信码 分组码的性能限
4.1 线性分组码基本概念
(n,k)线性分组码是把信息流的每k个码元(symbol)分成一组, 通过线性变换,映射成由n个码元组成的码字(codeword)。从空间的 角度,每个码字可以看成是n维线性空间中的一个矢量,n个码元正是n 个矢量元素。码元取自字符集X={ x0 , x1, , xq1}, 当q=2时是二进制 码,q>2时是q进制(q元)码。多进制q一般取素数或素数的幂次,实 用中多见的是q=3或q= 2b (b是正整数)。当q= 2b 时,每码元可携带b bit 信息,长度为n的q元分组码码字可以映射成长度N=bn的二元分组码码 字。 纠错编码的任务是在n维n重矢量空间的 2n 种组合中选择个 2k 构成 一个子空间,或称许用码码集C,然后设法将k比特信息组一一对应的映 射到许用码码集C。不同的编码算法对应不同的码集C以及不同的映射 算法,把这样的码称为(n,k)线性分组码。不编码时,一个二进制码元可 携带1b信息(传输率为1b/符号);编码后,n个二进制码元携带kb信 息(传输率为(k/n)b/符号)。定义k/n= Rc为二元分组码的码率,或 者说是效率。
线性分组码
(C6,C5,C4,C3,C2,C1,C0)
C6,C5,C4为信息元,C3,C2,C1,C0为监督元,
监督元可按下面方程组计算
每个码元取“0”或“1”
电子信息工程学院 3
信息论
3 线性分组码
3.1 一致校验矩阵和生成矩阵 1.线性分组码的一致校验矩阵 一致校验方程: 按规则通过已知的信息元得到校验元的一组方程称为校验方 程。由于所有码字都按同一规则确定,又称为一致校验方程。 由于校验方程是线性的,即校验元和信息元之间是线性运算 关系,所以由线性校验方程所确定的分组码是线性分组码。
H 阵的每一行都代表一个监督方程,即 H 阵的 r 行代表了 r 个监督方 程,也表示由H 所确定的码字有 r 个监督元。 电子信息工程学院 10
信息论
3 线性分组码
3.1 一致校验矩阵和生成矩阵 1.线性分组码的一致校验矩阵
H 的标准形式还说明了相应的监督元是由哪些信息元
决定的。 例如 (7,3) 码的H 阵的第一行为 (1011000),说明此 码的第一个监督元等于第一个和第三个信息元的模2和, 依此类推。
3.1 一致校验矩阵和生成矩阵 1.线性分组码的一致校验矩阵 系数矩阵 H 的后四列组成一个 (4×4) 阶单位子阵,用 I4 表示,H 的其余部分用 P 表示
电子信息工程学院 7
信息论
3 线性分组码
3.1 一致校验矩阵和生成矩阵 1.线性分组码的一致校验矩阵 推广到一般情况:对 (n,k) 线性分组码,每个码字中的 r (=n-k) 个监督元与信息元之间的关系可由下面的线性方程组确定
信息论
3 线性分组码
线性分组码是指分组码中信息元和校验元是用线性方程联 系起来的一种差错控制码。
线性分组码
一、 线性分组码的基本原理差错控制编码的基本作法是:在发送端被传输的信息序列上附加一些监督码元,这些多余的码元与信息之间以某种确定的规则建立校验关系。
接收端按照既定的规则检验信息码元与监督码元之间的关系,一旦传输过程中发生差错,则信息码元与监督码元之间的校验关系将受到破坏,从而可以发现错误,乃至纠正错误。
对于(n ,k )线性分组码编码器,输出的n 比特码字包含k 比特信息码元和k n -比特监督码元。
如图1所示。
根据图1的表示法,码字最右边的k n -比特为监督比特,最左边k 比特与相应的信息比特相同。
因此有⎩⎨⎧--=--==+-1,, , 1,,1,0 , n k n i m k n i b c k n i i i (1)k n -个监督比特是k 个信息比特的线性和,可以用一般的多项式表示:1)1(1100--+++=k k i m p m p m p b i i i (2) 系数的定义如下⎪⎩⎪⎨⎧=i im ,0m ,1不依赖于如果依赖于如果j j ij b b p (3)系数ij p 的选择要是生成矩阵的各行线性独立,且校验式唯一。
式(1)和式(2)给出了(n ,k )线性分组码的数学结构。
这两个等式可以用矩阵表示法重新表示为一种紧凑的形式。
为此,我们定义k ⨯1的信息矢量m ,()k n -⨯1监督矢量b 和n ⨯1的码矢量c ,其形式分别为 ],,,[021m m m k k --=m (4)],,,[021b b b k n k n ----=b (5)],,,[021c c c n n --=c(6)注意,这三个都是行矢量。
这样就可以用紧凑的矩阵形式将定义监督比特的联立等式写为m P c = (7) 其中,P 为()k n k -⨯的系数矩阵,其定义如下:⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡=------------------0,02,01,00,22,21,20,12,11,1p p p p p p p p p k n k n k k n k k n k k k n k k n k P (8) 其中,ij p 取值1或0。
线性分组码
3.6.2标准阵列和译码 3.6.2译码
第三章
3.6.1信息传输系统模型
将信息传输系统模型简化成图3-3所 示的简化模型。
噪声源
E
信源
u
纠错码 编码器
c
编码信道
y
纠错码 译码器
ˆ y
信宿
图3-3 简化的信息传输系统模型
第三章
译码过程中的两个重要的概念
第三章
第三章
3.6.2标准阵列和译码
第三章
HGT 0
第三章
第三章
3.3系统线性分组码
第三章
第三章
第三章
第三章
第三章
第三章
第三章
常用的系统码有两种形式:信 息组被排在码字的最左边k位,或信 息组被排在码字的最右边k位。 一般来说,系统码的译码相对非 系统码要简单一些,但两者的纠错 能力完全等价,因此一般总希望线 性分组码采用系统码形式。
n 的码字
c (cn1cn2 c1c0 )(n k )
码字共有 n
位,其中k位为信息位, n k
位为校验位,称为一个
(n, k ) 分组码。
在分组码中,若c与u的对于关系是线性的, 则称为线性分组码。
第三章
第三章
例如3-1 有一个(5,2)分组码 C={00000,01011,10101,11110}, 假设消息序列与码字的映射为:
对一个给定的线性码,它的生成矩阵不是唯 一的,因为生成矩阵的行可以有多种选择。
第三章
生成矩阵 G 提供了一种简明而有效地表示
线性分组码的方法。k×n阶矩阵可以生成 2k 个码字。因此,我们只需要一个生成矩阵
k 2 而不需要含 个码字的查询表。
第三章 线性码
aik ξk =
n
zj ξj ,
k=1
aij zj = 0, 1
j =1
i
k.
(3.1.23)
记 z = (z1 , · · · , zn ), 则 (3.1.23) 可表示为 Gz T = 0. 因此 n C ⊥ = ξ ∈ Fn ξ= zj ξj , Gz T = 0 . q
y = x(Ek , A1 ) = (x, xA1 ). (3.1.16)
可见编码后的码字, 前面 k 位和原数字信息相同. 而增加了 n − k 位 xA1 . 这是 由于二次编码增加的位数, 目的在于纠错.
§3.1
线性码的基本概念
· 61 ·
我们知道, 由原数字信息 x 可以得到线性码字 y = xG, 其中 G 为生成矩阵. 若事先算出 k 阶非异方阵 P 的逆矩阵 P −1 及 n 阶置换方阵 Q = QT = Q−1 , 使 得 G = P −1 (Ek , A1 )Q, (3.1.17) 由 y = xG, 有
是一个 q 元 (n, 1, n) 线性码, 它的一个生成矩阵是 G = (1, 1, · · · , 1).
§3.1
线性码的基本概念
· 59 ·
本书约定 n 维向量 α 的坐标用 1 × n 矩阵 α = (a1 , a2 , · · · , an ) 表示, 又 αT 表示的 1 × n 矩阵 α 的转置矩阵, a1 a2 αT = . . . . an 因为 α1 , · · · , αk 在基 ξ1 , · · · , ξn 下的坐标为生成矩阵 G 的 k 个行向量, 而 α1 , · · · , αk 线性无关, 所以生成矩阵 G 的秩为 k . 我们约定 n 维线性空间 Fn q 的基 {ξ1 , · · · , ξn } 作为集合是始终取定的, 允许 的选取方式为任取 1, 2, · · · , n 的排列 i1 i2 · · · in , 则 {ξi1 , ξi2 , · · · , ξin } 仍为基. 对这组基仍有生成矩阵, 它和矩阵 G 的关系为右乘一个 n 阶置换方阵 Q. 另一
线性码与线性分组码
子群 与陪集 (zǐ qún)
• 就给定(ɡěi dìnɡ)群G所定义的(加法)运算封闭的非 空子集H,称H为G的子群
• G中任一元g与H相加得到的子集称为H的陪集
• 举例
– 陪集不相交
– 陪集首 – 商集
• 整数群的子群
– m的所有倍数 – 剩余类
第八页,共20页。
线性空间 、线性码与线性分组 (kōngjiān)
– 自由距就是(jiùshì)最小码重量 – 平均差错概率就是当发全零序列时的条件差
错概率:Pe=x1P(x1)P(e|x1)= P(e|全零)
第十页,共20页。
码的球半径和覆盖(fùgài)半径
• 码空间中以许用码字为中心半径相等的互不相交(xiāngjiāo)
的球,其最大半径称为码的球半径 s(C),
第十四页,共20页。
自由距与校验 矩阵 (xiào yàn)
• 校验矩阵的秩为df -1 • 例:纠一个错的码设计
– 自由距至少为3 – 校验矩阵的秩至少为2,即任两个列矢量不同
– 当冗余位数m固定时,最多的非零列矢量个数为2m -1
– 最高效率(xiào lǜ)为(2m-1,2m-1-m,3)码,称为汉明码,是完 备码
码
• 利用线性空间中的子空间作为许用码字的编码称线 性码
• 当线性空间为有限(yǒuxiàn)维空间时即为线性分组码 • GF(q)上的n维线性空间Vn中的一个k维子空间Vn,k称
为(n,k)线性分组码
第九页,共20页。
线性分组码的特点(tèdiǎn)
• 全零序列是许用码字 • 与任一码字的距离谱都相同 • 只须考虑重量谱
第四页,共20页。
群——定义(dìngyì)了一种运算的集 合
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
说明 r与H不正交,接收的r=(1001101)不是码字。返回
4.3 伴随式与译码
由于信道干扰的缘故,使得接收端的接受码R= (rn1 , , r1 , r0 ) 不一定等 于发送码C= (cn1 , , c1 , c0 ) ,定义差错图案E为: E= (en1 , , e1 , e0 ) (rn1 cn1, , r1 c1, r0 c0 ) =R-C 差错图案是信道干扰图案的反应。对二进制码,模2加与模2减等同,因此 有: E=R+C 及 R=C+E 利用式 CH T 0 所示码字与校验矩阵的正交性 CH T 0 ,可通过下列运算 来判断接受码R是否有错: RH T (C E) H T CH T EH T 0 EH T EH T 如果接受码无误,必有R=C即E=0及 EH T =0,此时上式满足 RH T =0。 T T T T RH EH 如果信道产生差错,必有 = 0。保持 H 不变,则 RH 仅与差错图案E有关,而与发送什么码C无关。为此定义伴随式S为:
S (snk 1 ,
, s1, s0 ) RH T EH T
4.3 伴随式与译码
从物理意义看,伴随式S并不反映发送的码字是什么,而只反应信道 对码字造成怎样的干扰。 可以看到:伴随式S是一个n-k重矢量,只有 2nk 种可能的组合;而差 错图案E是n重矢量,共有 2n个可能的组合。因此,同一伴随式可能对应 若干个不同的差错图案。 在接受端,并不知道发送码C究竟是什么,但可以知道 H T 和接受码 ˆ ,具体方 R,从而算出S。译码最重要的任务是从伴随式S找出C的估值 C ˆ =R+E而求出: 法是:先算出S,再由S算出E,最后令 C ˆ =R+E RH T =S E C 最关键的是从S找出E,只要E正确,译出的码也就是正确的。 h( n k 1)1 h( n k 1)0 h( n k 1)( n 1) S ( sn k 1 , , s1 , s0 ) EH T (en 1 , , e1 , e0 ) h1( n 1) h11 h10 h h h 0( n 1) 01 00
4.2 生成矩阵和校验矩阵
将 m3 1, m2 0, m1 1, m0 1 代入方程组,得 c2 0, c1 0, c0 0 。所以码 字为c=[1011000]。 ②一个二进制(n,k)系统线性分组码的编码器可用k级移存器和连接 到移存器适当位置(由P决定)的n-k个模2加法器组成。加法器生成校验 位后按顺序暂存在另一个长度为n-k的移存器。K比特信息组移位输进k级 移存器,加法器计算n-k校验比特,然后先是k位信息、紧接着是n-k位校 验比特从两个移存器中移位输出。本题的编码原理图如下:
①对于信息组m=(1011),编出的码字是什么? ②画一个(7,4)分组码编码器原理图。 ③若接收到一个7位码r=(1001101),检验它是否码字? 解:设输入信息组 m [m3m2 m1m0 ] ,编码后的码字 c [c6c5c4c3c2c1c0 ] 码集C。 ①由c=mG可知,将m和G的值代入,可得对应码字是 (1011000)。本题由于是系统码 , c (m3m2 m1m0c2c1c0 ),前4位不必计 算,后3个校验位可以根据生成矩阵G的分块阵P列出现行方程组如下 c2 m3 m2 m1 (式中“ ”指模2加) c1 m2 m1 m0 c m m m 3 2 0 0
4.1 线性分组码基本概念
综上所述,编码算法的核心问题是: ①寻找最佳的码空间,或者等效地说,寻找最佳的一组(k个)基 底,以张成一个码空间。 ②k维k重信息组空间 2k 的个矢量以何种算法一一对应的映射到k维n 重码空间C。 由于上述映射是两个线性空间之间的线性交换,“线性分组码”由 此 得名。又因为这些矢量在加法运算下构成交换群,所以也称之为“群 码”。返回
m0
m1
m2
m3
S
c0
c1
c2
4.2 生成矩阵和校验矩阵
首先是信息位 m3 输入,再是 m2 ,m1 ,m0 顺序输入。编码后, 开关S在输出前4位时上拨,先 m3 再 m2 ~ m0 顺序输出;输出后面3 位时,开关S下拨,将 c2 ~ c0 顺序输出。 ③H矩阵如下:
1 1 1 0 1 0 0 H [ PT I n k ] 0 1 1 1 0 1 0 1 1 0 1 0 0 1
4.2 生成矩阵和校验矩阵
由于C的基底和D的基底正交,空间C和空间D也正交,它们互为零空间。 因此,(n-k)线性码的任意码字c一定正交于其对偶码的任意一个码字,也必 定正交于校验矩阵H的任意一个行矢量,即 cH T 0 式中,0代表零阵,它是 1 nn (n k ) 1 (n k ) 全零矢量。 式 cH T 0 可以 用来检验一个n重矢量是否为码字:若等式成立(得零矢量),该n重必为码字, 否则必不是码字。 由于生成矩阵的每个行矢量都是一个码字,因此必有:
( m2 m1m0) 000 000 010 011 100 101 110 111
信息组
码字 ( c5c4c3c2c1c0 ) 000000 001011 010110 011101 100111 101100 110001 111010
4.2 生成矩阵和校验矩阵
在以上编码过程中,核心的因素是矩阵G,它决定了变换规则,也 决定了码集C。矩阵G可以看成是由3个行矢量组成的,所有码字是这3 个行矢量的线性组合:
根据式 cH T 0 ,如果接受到的r是属于码集C的某码字,必 有 rH T 0 ;反之,如 rH T 0 ,说明r必定不是码字。将H和 T r=[1001101]代入式 cH 0 ,得:
rH T 1 (101) 0 (111) 0 (110) 1 (011) 1 (100) 0 (010) 1 (001) (011) (000)
第四章
线性分组码
第四章
4.1 4.2 4.3 4.4 4.5 4.6 4.7 线性分组码基本概念 生成矩阵和校验矩阵 伴随式与译码 码的纠、检错能力与MDC码 完备码与汉明码 扩展码、缩短码与删信码 分组码的性能限
4.1 线性分组码基本概念
(n,k)线性分组码是把信息流的每k个码元(symbol)分成一组, 通过线性变换,映射成由n个码元组成的码字(codeword)。从空间的 角度,每个码字可以看成是n维线性空间中的一个矢量,n个码元正是n 个矢量元素。码元取自字符集X={ x0 , x1, , xq1}, 当q=2时是二进制 码,q>2时是q进制(q元)码。多进制q一般取素数或素数的幂次,实 用中多见的是q=3或q= 2b (b是正整数)。当q= 2b 时,每码元可携带b bit 信息,长度为n的q元分组码码字可以映射成长度N=bn的二元分组码码 字。 纠错编码的任务是在n维n重矢量空间的 2n 种组合中选择个 2k 构成 一个子空间,或称许用码码集C,然后设法将k比特信息组一一对应的映 射到许用码码集C。不同的编码算法对应不同的码集C以及不同的映射 算法,把这样的码称为(n,k)线性分组码。不编码时,一个二进制码元可 携带1b信息(传输率为1b/符号);编码后,n个二进制码元携带kb信 息(传输率为(k/n)b/符号)。定义k/n= Rc为二元分组码的码率,或 者说是效率。
GH 0
T
这里,0代表一个尺寸为 [k n] [n (n k )] k (n k )的零矩阵。 验证H的方法是看它的行矢量是否与G的行矢量正交,即式 GH 0是否成 立。此处,
T
GH T [ Ik P][PT Ink ]T [ Ik P] [ PInk ] [ P] [ P] 0
展开成线性方程组形式后:
4.3 伴随式与译码
sn k 1 en 1h( n k 1)( n 1) e1h( n k 1)1 e0 h( n k 1)0 s1 en 1h1( n 1) e1h11 e0 h10 s0 en 1h0( n 1) e1h01 e0 h00
c5 m2 c m 1 0 0 1 1 1 1 4 c c c c c c ) ( m m m ) 0 1 0 1 1 0 2 1 0 c mG c3 m0 5 4 3 2 1 0 0 0 1 0 1 1 c2 m2 m1 c1 m2 m1 m0 c0 m2 m0
4.2 生成矩阵和校验矩阵
G [ g k 1 g ( k 1)( n 1) g1 g 0 ]T g1( n 1) g 0( n 1) g ( k 1)1 g11 g 01 g ( k 1)0 g10 g 00
其中 gi [ gi (n1) gi1gi 0 ] ,i=k-1, ,0,是G中第i行的行矢量。 与任何一个(n,k)线性码的码空间C相对应,一定存在一个对偶空 间D。事实上,码空间基底数k只是n维n重空间的全部n个基底的一部 分,若能找出另外n-k个基底,也就找到了对偶空间D。既然用K个基底能 产生一个(n-k)线性码,那么也能用n-k个基底产生一个有 2nk 个码矢 的(n,n-k)线性码,称之为(n-k)线性码的对偶码。将D空间的n-k个 基底排列起来,可构成一个(n-k) n矩阵,称为码空间C的校验矩阵 H,它正是(n,n-k)对偶码的生成矩阵,它的每一行是对偶码的一个码 字。C和D的对偶是相互的,G和C的生成矩阵,又是D的校验矩阵;而H 是D的生成矩阵,又是C的校验矩阵。
4.2 生成矩阵和校验矩阵
6 二进制码取值于GF(2),6位二进制有 2 =64种组合,而3位的信息 组只有8种组合,一一对应到8个码字。可见,码集C包含64种组合中 的8种。分别令信息组 m2m1m0 为(000),(001),…,(111), 带入上面的矩阵算式,不难算得各信息组对应的码字如下表所示: