Upload
trungthanhbk01
View
89
Download
0
Embed Size (px)
Citation preview
ti : M Hamming
Richard W. Hamming (1915-1998)
Hamming Code
Thnh vin :
Trn ng Khoa
Trn ng Hng
Trn Minh Khu
Nguyn Hng Ho
Mnh Y Vinh
K hiu nh ngha
u Bn tin gc
v M ha
S(x) Tn hiu truyn
N(x) Tn hiu nhiu
R(x) Tn hiu nhn
R Chui bit gii iu ch
u Chui bit gii m Hamming Code
Mc ch ca l thuyt M ha trn knh truyn (channel encoding theory) l tm nhng m
c th truyn thng nhanh chng, cha ng nhiu m k (code word) hp l v c th sa
li (error correction) hoc t nht pht hin cc li xy ra (error detection). Cc mc ch
trn khng ph thuc vo nhau, v mi loi m c cng dng ti u cho mt ng dng ring
bit. Nhng c tnh m mi loi m ny cn cn tu thuc nhiu vo xc sut li xy ra
trong qu trnh truyn thng
y ta tm hiu m khi tuyn tnh (Linear block codes), bao gm :
M tun hon (Cyclic codes, m Hamming l mt b phn nh)
M ti din (Repetition codes)
M chn l (Parity codes)
M Reed-Solomon (Reed Solomon codes)
M BCH (BCH code)
M Reed-Muller
M hon ho (Perfect codes)
Hamming Code
Trong vin thng (telecommunication), m Hamming l mt m sa li tuyn tnh (linear
error-correcting code), c t tn theo tn ca ngi pht minh ra n, Richard Hamming.
M Hamming c th pht hin mt bit hoc hai bit b li (single and double-bit errors). M
Hamming cn c th sa cc li do mt bit b sai gy ra. Ngc li vi m ca ng, m chn l (parity code) n gin va khng c kh nng pht
hin cc li khi 2 bit cng mt lc b hon v (0 thnh 1 v ngc li), va khng th gip
sa c cc li m n pht hin thy.
Hamming Code
Khong cch Hamming
Khong cch Hamming c s dng trong k thut vin thng tnh s lng cc bit trong
mt t nh phn (binary word) b i ngc, nh mt hnh thc c tnh s li xy ra trong
qu trnh truyn thng, v v th, i khi n cn c gi l khong cch tn hiu (signal
distance). Vic phn tch trng s Hamming ca cc bit cn c s dng trong mt s ngnh,
bao gm l thuyt tin hc, l thuyt m ha, v mt m hc.
Trc tin ta tm hiu v trng s Hamming: trng s Hamming ca mt t m l s s 1 c
trong t m . V d vi t m 00111010 c trng s Hamming l 4. Khong cch Hamming
c nh ngha l cc bt khc nhau gia hai t m. Khong cch Hamming gia hai t m c
ly bng cch dng ton t XOR tng bt ca hai t m vi nhau v khong cch Hamming l
trng s ca kt qu tm c trong php XOR trn. V d ta c hai t m 0110101 v 1110001
ta c:
0 1 1 0 1 0 1
XOR
1 1 1 0 0 0 1
----------------
1 0 0 0 1 0 0
Vy khong cch Hamming ca 2 t m trn l 2.
Hamming Code
Trng lng Hamming
Trng lng Hamming (Hamming weight) ca mt dy k t l khong cch Hamming t mt
dy k t ton s khng c cng chiu di. C ngha l s phn t trong dy k t khng c gi
tr khng (0): i vi mt dy k t nh phn (binary string), n ch l s cc k t c gi tr mt
(1), ly v d trng lng Hamming ca dy k t 11101 l 4.
i vi mt chiu di c nh "n", khong cch Hamming l o trn khng gian vect ca cc
t c chiu di , v n tha mn yu cu v tnh cht s khng m (non-negativity) (s tuyt
i), hin thn ca tnh bt kh phn nh (indiscernibles) v tnh i xng (symmetry), v n c
th c chng minh mt cch d dng bng php quy np ton phn (complete induction) rng
n cn tha mn bt ng thc tam gic (triangle inequality) na.
Hamming Code
Khong cch Hamming gia hai t a v b cn c gi l trng lng Hamming (Hamming
weight) ca php ton ab, dng mt ton t thch hp thay th cho ton t "".
i vi hai dy k t nh phn a v b, php ton ny tng ng vi php ton a XOR b.
Khong cch Hamming ca cc dy k t nh phn cn tng ng vi khong cch Manhattan
gia hai giao im ca mt hnh gi phng cp n (n-dimensional hypercube), trong n l
chiu di ca cc t.
Hamming Code
V d i vi m ASCII 7 bit
M ASCII 7 bit cn 4 bit d tha thm vo d liu gc. S d ta chn l 4 bt v 24 = 16 s
xc nh c 16 trng hp b li n bt (trong dy ta xt c 11 bit: 7 bit d liu v 3 bit
m). Cc bt d tha c t vo v tr 1, 2, 4 v 8 (Ch d (data) c dng biu th cc
bit d liu v ch p (parity) biu th cc bit chn l (parity bits).)
d
7
d
6
d
5
p
4
d
4
d
3
d
2
p
3
d
1
p
2
p
1
11 10 9 8 7 6 5 4 3 2 1
Hamming Code
Thut ton :
M Hamming l mt m sa li tuyn , m ny c th pht hin mt bit hoc hai bit b li. M
Hamming cn c th sa cc li do mt bit b sai gy ra.
C th tm tt cc bc cho vic s dng m Hamming nh sau:
1) Cc v tr trong mt khi c bt u nh s t 1: Bit 1, 2, 3
2) Tt c cc bt v tr s m ca 2 c dng lm bt chn l. Vd: 20, 21, 22, 23, 24
3) Tt c cc v tr khc v tr cn li s c dng cho cc bit d liu. VD: v tr th 2, 3, 5, 6, 7
4) Mi bit chn l tnh gi tr chn l cho mt s bit trong t m theo quy tc nh sau:
Hamming Code
Bt chn l v tr s 1 (20) s kim tra tnh chn l ca cc v tr m s th t ca v tr
trong h nh phn c bt ngoi cng l 1. Vd: 1 (1), 3 (11), 5 (101), 7 (111), 9 (1001) ..
Bt chn l v tr s 2 (10) s kim tra tnh chn l ca cc v tr m s th t ca v tr
trong h nh phn c bt th 2 l 1. Vd: 2 (10), 3 (111), 6 (110), 7 (111), 10 (1010)
Bt chn l v tr s 4 (100) s kim tra tnh chn l ca cc v tr m s th t ca v tr
trong h nh phn c bt th 3 l 1. Vd: 4, 5, 6, 7, 12, 13, 14, 15
Tng t vi cc bt chn l v tr cao hn: 8, 16, 32
Tm li, mi bt chn l trong m Hamming s tnh gi tr chn l m ti , bit nh phn ca v
tr AND vi cc bit v tr s l mt s khc khng.
Hamming Code
Hnh 1: Vng trn trong m Hamming
Trong , bit R c dng tnh chn l cc t hp bt sau:
Bit p1 tnh cc bit th 3, 5, 7, 9, 11
Bit p2 tnh cc bit th 3, 6, 7, 10, 11
Bit p3 tnh cc bit th 5, 6, 7
Bit p4 tnh cc bit th 9, 10, 11
Hamming Code
V d, ta c chui bit "1010110" v m Hamming s dng bt chn l chn th
p1 = 1, p2 = 0, p3 = 0, p4 = 0
Khi , chui d liu truyn i s l 10100100110
Hnh 2: Vng trn Hamming
Hamming Code
Do m hamming s dng bit chn-l-chn nn tng s bt 1 trong 1 vng trn l s chn. Gi
s trong qu trnh truyn xy ra li ti bit 11, ti pha thu, thut ton s pht hin ra tng s
bit 1 trong 3 vng trn (vng bn tri v hai vng trn di) l mt s l, tri vi quy tc nn
n s thay i gi tr ca bt nm vng giao ca 3 vng trn ny.
Hnh 2.3: Bit th 11 b li khin tng s bt 1 ca 3 vng trn bn phi
l mt s l
Hamming Code
K Hiu : G (k,n)
k: s vecto c h (s hng)
n: di t m (s ct)
Cho [a] =[u1 u2 ui] l ma trn mang tin v ma trn sinh G th ta c [V]=[u].[G] .Vit gn :
V=u.G
Ma Trn Sinh Chun
Hamming Code
B m V c th thay i bng b m V c cng xc sut sai
Cc b m tng ng c to ra bng cch bin i tng ng trn ma trn sinh : hon b
ct , t hp tuyn tnh cc hng c thnh hng mi
G Gch = [Ik,k , p k,(n-k)]
Ma Trn Sinh
Di dng cu trc h thng H = [Ir.Q] Trong :
Ir l ma trn n v
Ma trn Q gm 2r 1 r ct
Mi ct l vector r chiu c trng s l 2 hoc ln hn
nh ngha : vi v V , u U th ma trn sinh [H] = [h1 h2 hn-k] vi v.HT =0
nh l : nu V c Gch = [Ik,k , p k,(n-k)] th Hch = [- , Ik,(n-k)]
Trong thc t vic to v gii m hamming mt cch n gin, ngi ta i v tr cc ct
trong ma trn H . Khi cc bit cn kim tra xen k vi cc bit mang tin ch khng cn tnh
cht khi
Ma Trn Th
Hamming Code
-
T
KP
M t bng thut ton
V d, vi m=3, ma trn ca m [7,4] c vit di dng H(3,7) =
Nh ta bit, m Hamming l mt m khi. V vi mi m > 2, lun tn ti m Hamming vi
cc thng s sau:
Chiu di t m: n = 2m-1 Chiu di phn tin: k=2m-m-1 Chiu di phn kim tra: m=n-k Kh nng sa sai: t=1 Ma trn kim tra H c dng: H = [Im.Q]
Trong Im l m trn n v m*m v Q l ma trn [2m-m-1] ct, mi ct l vect m chiu c
trng s l 2 hoc ln hn.
1 0 0 1 0 1 1
0 1 0 1 1 1 0
0 0 1 0 1 1 1
Hamming Code
Xy Dng M Hamming
Hamming Code
M hamming c c im : Ma trn th H c r hng , 2r 1 ct
Xt V D : m hamming ( 7,4 ) c ma trn th H
vic to m n gin ta chn cc bit kim tra c1 , c2 , c3 cc v tr tng ng 2i vi i = 0,1,2,.. (ngha
l cc v tr th nht , th hai v th t ca cc k hiu t m)
V c dng : v= c1 c2 u1 c3 u2 u3 u4 , vi u = u1 u2 u3 u4
Xac nh c1,c2 ,c3 ?
to m : v HT = 0
Vi d u = 1010 , v = c1 c2 1 c3 0 1 0 c v.HT =0
c3 +1 = 0 => c3= 1
c2 + 1 + 1 = 0 => c2 = 0
c1 + 1 = 0 => c1 = 1
v = 1011010
Hamming Code
S tao ma : u = u1 u2 u3 u4
v = c1 c2 u1 c3 u2 u3 u4 v HT = [c1 c2 u1 c3 u2 u3 u4 ] H
T = 0
c3 = u2 + u3 + u4
c2 = u1 + u3 + u4
c1 = u1 + u2 + u4
Hamming Code
Hnh 4. Mch m ha
u im :
T ma trn H ta d dng suy ra t m v , ngha l khng cn bit ma trn
sinh G ta cng d dng tm c v
Hamming Code
S Sa Li M Hamming
nhn bit sai v sa li knh truyn ta dng Syndrome
S = r.HT
Nu : S = 0 th r = v ( Khng c li )
S 0 th r v ( c li )
Ta c : S = r.HT m r = v + e S = ( v + e ) . HT = v HT + e HT = e HT
Xc nh c e ta suy ra v = r + e
Hamming Code
VD : xet ma Hamming ( 7 ,4 )
Vi r = r1r2r3r4r5r6r7
Syndrome :
S = r HT
S = [ r4 + r5 + r6 + r7, r2 + r3 + r6 + r7, r1 + r3 + r5 + r7 ]
Hamming Code
Cho :
e= 1000000 => s1= eHT = [ 1000000 ] HT = 001
e= 0100000 => s2 = 010
e= 0010000 => s3 = 011
e= 0001000 => s4 = 100
e= 0000100 => s5 = 101
e= 0000010 => s6 = 110
e= 0000001 => s7 = 111
Hamming Code
Bn s tht :
Hamming Code
Mach Sa Li :
Hamming Code
V D : tn hiu thu c r = ( r1 r2 r3 r4 r5 r6 r7 ) = ( 0 0 1 1 0 1 1 )
Khi :
S1= r4 + r5 + r6 + r7 = 1 + 0 + 1 + 1 = 1
S2 = r2 + r3 + r6 + r7 = 0 + 1 + 1 + 1 = 1
S3 = r1 + r3 + r5 + r7 = 0 + 1 + 0 + 1 = 0
Hamming Code
Vy : S = ( 1 1 0) , nu i ra nh phn l 6 , ta nhn thy S trng vi ct s 6 ca ma trn H , c ngha
k hiu sai l k hiu s 6(r) u ra th 6 ca s gii m s c i=1 .
Ta ch cn o bit th 6 theo thut ton :
Kt lun : M hamming chi sa c 1 li / 1 ng truyn do o c dung rt nhiu
trong truyn d liu trong mng may tinh
li m ha (Coding Gain)
Hamming Code
Tc m R = k/n
k: s symbol d liu
n: tng symbol
SNR t v SNR ca bit :
Vi mt s m ha, li m ha ti mt xc sut li bit c nh ngha l s khc bit gia nng lng cn thit cho 1 bit thng tin m ha t c xc sut li cho
trc v truyn dn khng m ha.
= =
li m ha :
Hamming Code
Hamming Code
C th ni, lch s pht trin ca m sa li c bt u bng s ra i ca m Hamming
v nh l Shannon. Vic ra i m Hamming l c s cho vic pht trin thm nhiu loi
m ha mi, c tin cy cao hn sau ny.
M Hamming c tm quan trng c bn trong l thuyt m ha v c s dng thc t
trong thit k my tnh. u im ca m ny l n gin, s bit kim tra t, ngoi ra, m ny
hot ng tt trong vic pht hin cc li n bit v mt s trng hp li hai bit. Tuy nhin,
m Hamming khng th sa c bn tin b li a bit.
Hamming Code
M HA NGUN
M SHANNON
nh ngha gii hn ca n0 : m-ni P(Ui) m
1-ni (1).
Bc 1: Lit k Ui v P(Ui) theo th t gim dn vo ct 1 v 2
Bc 2: Pi = ()11
Bc 3: Tnh ni theo bt ng thc (1)
Bc 4: i Pi ra dng nh phn
Shannon Code
V D : Cho b m U vi xc sut nh sau
Ui U1 U2 U3 U4 U5 U6 U7 U8 U9
P(Ui) 0.34 0.2 0.19 0.1 0.07 0.04 0.03 0.02 0.01
Ui P(ui) Pi ni Dang nh phn ca Pi T ma
U1 0.34 0 2 0 00
U2 0.2 0.34 3 0.01010111 010
U3 0.19 0.54 3 0.10001010 100
U4 0.1 0.73 4 0.10111010 1011
U5 0.07 0.83 4 0.111010100 1101
U6 0.04 0.9 5 0.11100110 11100
U7 0.03 0.94 6 0.11110000 111100
U8 0.02 0.97 6 0.11110000 111110
U9 0.01 0.99 7 0.11111101 1111110
Shannon Code
di trung bnh t m :
Entropy ca tp tin :
Ch s kinh t ca b m :
Shannon Code
M T in LZ77
a chui vn bn vo b m
Dng 1 ca s trt c cc k t cn m ha vo
Ng ra :
+ Khi bt u m ha: (k l k t u tin)
+ Ln m ha tip theo: So snh k t m ha vi k t m ha, nu
ging th a ra t m trong : i l v tr bt u ca on/k t ging
nm trong t in vi on/k t ang nn ; j l di ca on k t ging ; k
l k t k tip
Dictionary Algorithm
V D : m ha on k t sau AABCBBABC
Bc V tr K t ging Chui Ng ra
1 1 A
2 2 A AB
3 4 C
4 5 B BB < 2,1,B>
5 7 AB ABC
Dictionary Algorithm
M T im LZSS
Nu c 2 k t ging tr ln th mi chp trong t in ra
Ch c 1 k t ging hoc khng c k t ging
VD: m ha AABBCBBAABC
Bc V tr K t ging Ng ra
1 1
2 2 A
3 3
4 4 B
5 5
6 6 BB
7 8 ABB
8 11 C
Dictionary Algorithm
05
The End Hamming Code