16
Information and Coding Theory, 2017 by Toyoaki Nishida 通信路符号化法 (1) Copyright © 2017 Toyoaki Nishida All Rights Reserved.

通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

Information and Coding Theory, 2017 by Toyoaki Nishida

通信路符号化法 (1)

Copyright © 2017 Toyoaki Nishida All Rights Reserved.

Page 2: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

限界距離復号法

符号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 であれば,これら

の球は重複することはない.

Page 3: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

通信路符号化の枠組み

n

k個の情報ビット n-k個の検査ビット

ビット

通信路

シンドローム計算

x c y

e

s

w

受信語

シンドローム

符号語

誤り

誤り訂正

誤り検出/訂正

(n, k)符号

Page 4: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

単一パリティ検査

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}

Page 5: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

単一パリティ検査

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

Page 6: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

単一パリティ検査

符号語を ,誤りパターンを ,受信語をシンドロームをとすれば,

ならば誤りなし, ならば誤りありと,判定することにすれば,奇数個の誤りが検出可能.

cwww k1

11 kkeeee

11 kk yyyy

),,,( 1111 kkkk ewewewewy

11 kk yyys

11

1111

1111

kk

kkkk

kkkk

eee

eeewww

ewewews

0s 1s

Page 7: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

水平垂直パリティ検査符号

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

シンドローム計算受信語

情報ビット 検査ビット追加(パリティを用いる)

【符号化】

【復号】

Page 8: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

水平垂直パリティ検査符号

s, t個の情報ビットをs×tの配列に並べ,すべての行および列の1の数が偶数になるようにs+t+1個の検査ビットを作る.

検査ビットの検査ビット

検査ビット

s

t

検査ビット

)),1)(1(( stts 符号⇒

Page 9: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

水平垂直パリティ検査符号

符号化:情報語 に対して

となるように を求め,符号語 を作る.

復号:通信路からの出力 に対して,

によってシンドロームを計算し,誤り訂正/検出を行う.

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

Page 10: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

検査ビットを

によって計算し,

を符号語とする.

ハミング符号

(7, 4)ハミング符号の作り方の一例:

),,,( 4321 xxxx

4213

4322

3211

xxxc

xxxc

xxxc

),,,,,,( 3214321 cccxxxxw

情報ビット

Page 11: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

(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

受信語

Page 12: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

ハミング符号

生成行列

を用いてw=xGによって符号化する.

1101000

0110100

1110010

1010001

G

),,,,,,( 4214323214321 xxxxxxxxxxxxxw

Page 13: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

ハミング符号

検査行列

を用いてシンドロームを算出する

),,,,,,( 74216432532144332211 exxxexxxexxxexexexexy

1001011

0101110

0010111

H

100

010

001

110

011

111

101

),,( 71 yyyHs T

Page 14: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

ハミング符号

単一誤りが訂正できるためには,検査行列の全ての列が互いに異なり,全零でなければよい.(全零の列があると,そこで生じた誤りと,誤りなしの場合が区別できない.)

符号長

情報ビット数

検査ビット数 m ⇒ 符号

検査ビット数

m

12 m

H

符号長…この長さの符号を送る

12 mn

mk m 12

)12,12( mmm

Page 15: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

線形符号

定義:検査記号が情報記号の線形式で与えられる.

2元符号Cが線形符号⇔

Cの任意の2つの符号語の和がCの符号語になっている.

kk xaxac 11

Page 16: 通信路符号化法 (1) - Kyoto U2 y 3 y 4 y 13 y 5 y 6 y 7 y 8 y 14 y 9 y 10 y 11 y 12 y 15 y 16 y 17 y 18 y 19 y 20 受信語 シンドローム計算 情報ビット 検査ビット追加(パリティを用いる)

まとめ

誤り検出や訂正を行うためにはシンドロームを用いる.

単一パリティ検査は最も単純な誤り検出符号.

水平垂直パリティ検査符号を用いると,1誤りが訂正できる.

ハミング符号は水平垂直パリティ検査符号より効率のよい単一誤り訂正符号である.

生成行列と検査行列による符号化とシンドローム計算