Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Information and Coding Theory, 2017 by Toyoaki Nishida
通信路符号化法 (1)
Copyright © 2017 Toyoaki Nishida All Rights Reserved.
限界距離復号法
符号Cの最小ハミング距離:
受信空間において,各符号語を中心として半径t1の球を作る.
これらの球を復号領域とすれば,この符号により,t1個以下の誤りを訂正でき, t1 +t2個以下の誤りを検出できる.
),(min,,
min vudd HCvuvu
1 2
3
3w
2w1w
1t 1t
1t
12 1min td
12 t
12 1min td であれば,これら
の球は重複することはない.
通信路符号化の枠組み
n
k個の情報ビット n-k個の検査ビット
ビット
通信路
シンドローム計算
x c y
e
s
w
受信語
シンドローム
符号語
誤り
誤り訂正
誤り検出/訂正
(n, k)符号
単一パリティ検査
110
を符号語として使用
010
100
000
101
001
011
x1
x2
x3
単一パリティ誤り検査符号:長さがk+1で,1の個数が偶数であるような全ての2元系列からなる符号長n=k+1, 符号語数M=2kの符号語の集まり.
k=2のとき,C={000, 011, 101, 110}
単一パリティ検査
0,1からなる長さ k の系列 を2元通信路を介して送る.
から なるcを求める.は排他的論理和. が成り立つ.
にcを追加した を通信路符号として伝送する.と表記することもある.
符号語を ,誤りパターンを ,受信語 とすれば,
kxx 1
kxx ,,1 kxxc 1
01 cxx k
kxx 1 cxxw k1
),,,( 1 cxxw k
cwww k111 kkeeee
11 kk yyyy
),,,( 1111 kkkk ewewewewy
単一パリティ検査
符号語を ,誤りパターンを ,受信語をシンドロームをとすれば,
ならば誤りなし, ならば誤りありと,判定することにすれば,奇数個の誤りが検出可能.
cwww k1
11 kkeeee
11 kk yyyy
),,,( 1111 kkkk ewewewewy
11 kk yyys
11
1111
1111
kk
kkkk
kkkk
eee
eeewww
ewewews
0s 1s
水平垂直パリティ検査符号
x1: 0 x2: 1 x3: 1 x4: 0
x5: 1 x6: 0 x7: 1 x8: 1
x9: 0 x10: 0 x11: 0 x12: 1
例: 3×4=12ビットの情報 (0,1,1,0,1,0,1,1,0,0,0,1)を送信する
201514139
1912548
1811737
1710626
169515
20191817164
1512111093
1487652
1343211
yyyys
yyyys
yyyys
yyyys
yyyys
yyyyys
yyyyys
yyyyys
yyyyys
w1=x1: 0 w2=x2:1 w3=x3:1 w4=x4:0 w13=c1:0
w5=x5:1 w6=x6:0 w7=x7:1 w8=x8:1 w14=c2:1
w9=x9:0 w10=x10:0 w11=x11:0 w12=x12:1 w15=c3:1
w16=c4:1 w17=c5:1 w18=c6:0 w19=c7:0 w20=c8:0
y1 y2 y3 y4 y13
y5 y6 y7 y8 y14
y9 y10 y11 y12 y15
y16 y17 y18 y19 y20
シンドローム計算受信語
情報ビット 検査ビット追加(パリティを用いる)
【符号化】
【復号】
水平垂直パリティ検査符号
s, t個の情報ビットをs×tの配列に並べ,すべての行および列の1の数が偶数になるようにs+t+1個の検査ビットを作る.
検査ビットの検査ビット
検査ビット
行
列
s
t
検査ビット
)),1)(1(( stts 符号⇒
水平垂直パリティ検査符号
符号化:情報語 に対して
となるように を求め,符号語 を作る.
復号:通信路からの出力 に対して,
によってシンドロームを計算し,誤り訂正/検出を行う.
s
l
t
m
msl
s
i
skti
t
j
jtk
k
tskcc
tsksx
skx
c
1 1
1
)1(
1
)1(
)1(
)1(
)1(
)2(
)12(
)1(
)1(
1
1
1
1)1(1
1
1
)1(
1
)1(
tskyy
tsksyy
sky
skyy
s
s
i
isttsst
s
i
sktikst
t
j
jts
t
j
jtkkst
k
),,( 1 stxx
)1,,1( tskck ),,,,,( 111 tsst ccxxw
),,,,,( 111 tsststst yyyyy
検査ビットを
によって計算し,
を符号語とする.
ハミング符号
(7, 4)ハミング符号の作り方の一例:
),,,( 4321 xxxx
4213
4322
3211
xxxc
xxxc
xxxc
),,,,,,( 3214321 cccxxxxw
情報ビット
(1) yに対するシンドローム
(2)シンドロームから次のように誤り訂正
ハミング符号
検査方式
),,,,,,( 7654321 yyyyyyyy
74213
64322
53211
yyyys
yyyys
yyyys
e1 e2 e3 e4 e5 e6 e7 s1 s2 s3
1 1 0 1
1 1 1 1
1 1 1 0
1 0 1 1
1 1 0 0
1 0 1 0
1 0 0 1
受信語
ハミング符号
生成行列
を用いてw=xGによって符号化する.
1101000
0110100
1110010
1010001
G
),,,,,,( 4214323214321 xxxxxxxxxxxxxw
ハミング符号
検査行列
を用いてシンドロームを算出する
),,,,,,( 74216432532144332211 exxxexxxexxxexexexexy
1001011
0101110
0010111
H
100
010
001
110
011
111
101
),,( 71 yyyHs T
ハミング符号
単一誤りが訂正できるためには,検査行列の全ての列が互いに異なり,全零でなければよい.(全零の列があると,そこで生じた誤りと,誤りなしの場合が区別できない.)
符号長
情報ビット数
検査ビット数 m ⇒ 符号
検査ビット数
行
列
m
12 m
H
符号長…この長さの符号を送る
12 mn
mk m 12
)12,12( mmm
線形符号
定義:検査記号が情報記号の線形式で与えられる.
2元符号Cが線形符号⇔
Cの任意の2つの符号語の和がCの符号語になっている.
kk xaxac 11
まとめ
誤り検出や訂正を行うためにはシンドロームを用いる.
単一パリティ検査は最も単純な誤り検出符号.
水平垂直パリティ検査符号を用いると,1誤りが訂正できる.
ハミング符号は水平垂直パリティ検査符号より効率のよい単一誤り訂正符号である.
生成行列と検査行列による符号化とシンドローム計算