54676499-DC-Error-Correcting-Codes.ppt
-
Upload
singamaneni-ashokkumar -
Category
Documents
-
view
213 -
download
0
Transcript of 54676499-DC-Error-Correcting-Codes.ppt
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
1/769
Department of E lectrical and C omputer E ngineering
Digital Communication and ErrorDigital Communication and Error
Correcting CodesCorrecting Codes
Timothy J. SchulzTimothy J. SchulzProfessor and Chair Professor and Chair
Engineering ExplorationEngineering Exploration
Fall, 2004Fall, 2004
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
2/769
Department of E lectrical and C omputer E ngineering
Digital Coding for Error Correction 0 0 1 0 1 0 0 1 1 1 0 1 0 1 1 0 1 0 1 0 1 0 1 0 0 0
Digital DataDigital Data
• ASCII Text
A 01000001B 01000010C 01000011D 01000100E 01000101F 01000110
. .
. .
. .
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
3/769
Department of E lectrical and C omputer E ngineering
Digital Coding for Error Correction 0 0 1 0 1 0 0 1 1 1 0 1 0 1 1 0 1 0 1 0 1 0 1 0 0 0
Digital Sampling Digital Sampling
000001
010
011
111
110
101
100
00001000100000101101101101000011111011111111
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
4/769
Department of E lectrical and C omputer E ngineering
Digital Coding for Error Correction 0 0 1 0 1 0 0 1 1 1 0 1 0 1 1 0 1 0 1 0 1 0 1 0 0 0
Digital CommunicationDigital Communication
• Example: Frequency Shift eyin! "FS# $ Tran%mit a t&ne 'ith a frequency (etermine( )y each )it:
( ) ( ) ( ) ( )0 1cos 2 1 cos 2 s t b f t b f t π π = + −
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
5/769
Department of E lectrical and C omputer E ngineering
Digital Coding for Error Correction 0 0 1 0 1 0 0 1 1 1 0 1 0 1 1 0 1 0 1 0 1 0 1 0 0 0
Digital ChannelsDigital Channels
0
1
0
1
p
p
1-p
1-p
Binary Symmetric Channel
Error probability: p
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
6/769
Department of E lectrical and C omputer E ngineering
Digital Coding for Error Correction 0 0 1 0 1 0 0 1 1 1 0 1 0 1 1 0 1 0 1 0 1 0 1 0 0 0
Error Correcting CodesError Correcting Codes
inf&rmati&n )it% channel )it%
01
000111
* channel )it% per 1 inf&rmati&n )it: rate + 1,*
channel )it% inf&rmati&n )it%
000001010011100101110111
00010111
(ec&(e )&&-
enc&(e )&&-
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
7/769
Department of E lectrical and C omputer E ngineering
Digital Coding for Error Correction 0 0 1 0 1 0 0 1 1 1 0 1 0 1 1 0 1 0 1 0 1 0 1 0 0 0
Error Correcting CodesError Correcting Codes
0000010
0
0000000
0
1111100
0
0000001
0
11111101
inf&rmati&n )it%channel c&(ereceie( )it%(ec&(e( )it%
5 channel errors; 1 information error
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
8/769
Department of E lectrical and C omputer E ngineering
Digital Coding for Error Correction 0 0 1 0 1 0 0 1 1 1 0 1 0 1 1 0 1 0 1 0 1 0 1 0 0 0
0 0.1 0.2 0.3 0.4 0.50
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
channel error probability
b i t e r r o r
p r o b a b i l i t y
Error Correcting CodesError Correcting Codes
• An err&r 'ill &nly )e ma(e if the channel ma-e% / &rthree err&r% &n a )l&c- &f * channel )it%
ccc no errors (1-p)(1-p)(1-p) = 1-3p+3p2-p3
cce one error (1-p)(1-p)(p) = p-2p2+p3
cec one error (1-p)(p)(1-p) = p-2p2+p3
cee two errors (1-p)(p)(p) = p2-p3
ecc one error (p)(1-p)(1-p) = p-2p2+p3
ece two errors (p)(1-p)(p) = p2-p3
eec two errors (p)(p)(1-p) = p2-p3
eee three errors (p)(p)(p) = p3
%ituati&n pr&)a)ility
err&r pr&)a)ility + 3p2 – 2p3
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
9/769
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
10/769
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
11/769
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
12/769
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
13/769
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
14/769
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
15/769
EE576 Dr. Kousa Linear Block Codes 15
Linear Block Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
16/769
EE576 Dr. Kousa Linear Block Codes 16
Basic Definitions
• Let u be a k -bit inforation se!uence
v be t"e corres#ondin$ n-bit code%ord.
& total of 2k
n-bit code%ords constitute a 'n,k ( code.• Linear code) *"e su of an+ t%o code%ords is a code%ord.
• ,bseration) *"e all-ero se!uence is a code%ord in eer+
linear block code.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
17/769
EE576 Dr. Kousa Linear Block Codes 17
/enerator atri
• &ll 2k code%ords can be $enerated fro a set of k linearl independent
code%ords.
• Let g0, g1, …, gk -1 be a set of k inde#endent code%ords.
• v u3/
=
=
−−−−
−
141141041
1400100
nk k k
n
! ! !
! ! !
1-k
0
g
g
G
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
18/769
EE576 Dr. Kousa Linear Block Codes 1
+steatic Codes
• &n+ linear block code can be #ut in s+steatic for
• n t"is case t"e $enerator atri %ill take t"e for
/ 8 9 k :
• *"is atri corres#onds to a set of k code%ordscorres#ondin$ to t"e inforation se!uences t"at "ae asin$le nonero eleent. Clearl+ t"is set in linearl+inde#endent.
n-k
chec- )it%
k
inforation bits
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
19/769
EE576 Dr. Kousa Linear Block Codes 1;
/enerator atri 'cont
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
20/769
EE576 Dr. Kousa Linear Block Codes 20
9arit+-C"eck atri
• Aor G [ P | Ik ]4 define t"e atri H 8In-k P*:
• '*"e sie of H is 'n-k (n(.
• t follo%s t"at GH* 0.
• ince v u•G4 t"en v•H* u•GH* 0.
• *"e #arit+ c"eck atri of code C is t"e $enerator atri
of anot"er code Cd 4 called t"e dual of C.
=
1110100
0111010
1101001
H
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
21/769
EE576 Dr. Kousa Linear Block Codes 21
Encodin$ sin$ atri
'9arit+ C"eck E!uations(
[ ]
765
65>2
76>1
765
65>2
76>1
765>21
0
00
101111110011
100010001
""=""
""=""""=""
""+""
""+""""+""
"""""""
++++ ++⇒
=++=++ =++
=
0
inforation
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
22/769
EE576 Dr. Kousa Linear Block Codes 22
Encodin$ Circuit
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
23/769
EE576 Dr. Kousa Linear Block Codes 2
inimum Di%tance
• DF: *"e #a$$in! wei!ht of a code%ord v 4 denoted b+w'v(4 is t"e nuber of nonero eleents in t"e code%ord.
• DF: *"e $ini$%$ wei!ht of a code4 win4 is t"e sallest
%ei$"t of t"e nonero code%ords in t"e code.win in Fw'v() v ∈ C@ v G0H.
• DF) ain$ distance bet%een v and w4 denoted b+d'v,w(4 is t"e nuber of locations %"ere t"e+ differ.
Iote t"at d'v,w( w'vJw(• DF: The iniu distance of t"e coded in in Fd'v,w() ",w ∈ C4 G 0H
• TH3.1: n an+ linear code4 d in win
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
24/769
EE576 Dr. Kousa Linear Block Codes 2>
inimum Di%tance "c&nt5(#
• TH3.2 Aor eac" code%ord of ain$ %ei$"t l t"ere
eists l coluns of H suc" t"at t"e ector su of t"ese
coluns is ero. Conersel+4 if t"ere eist l coluns of
%"ose ector su is ero4 t"ere eists a code%ord of%ei$"t l .
• COL 3.2.2 *"e d in of C is e!ual
to t"e iniu nubers of
coluns in H t"at su to ero.
• E=)
=
1110100
01110101101001
H
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
25/769
EE576 Dr. Kousa Linear Block Codes 25
Decodin$ Linear Codes
• Let v be transitted and be receied4 %"ere
v J e
e ≡ error #attern e1e2..... en4 %"ere
*"e %ei$"t of e deterines t"e nuber of errors.
• e %ill atte#t bot" #rocesses) error detection4 and error
correction.
e ii
th
= 1 if t"e error "as occured in t"e location0 ot"er%ise
Jv
e
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
26/769
EE576 Dr. Kousa Linear Block Codes 26
Err&r Detecti&n
• Define t"e sndro$e
! H* 's04 s14 4 sk-1(
• f ! 04 t"en v and e 04
• f e is siilar to soe code%ord4t"en ! 0 as %ell4 and t"e error is undetectable.
• E= .>)
( ) [ ] 0=
=
101
111
110011
100
010
001
r r r r r r r 765>E21210 s s s
65>22
5>E11
65E00
r r r r sr r r r sr r r r s
++++++ +++
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
27/769
EE576 Dr. Kousa Linear Block Codes 27
Err&r C&rrecti&n
• ! H* 'v J e( H* vH* J eH* eH*
• *"e s+ndroe de#ends onl+ on t"e error #attern.
• Can %e use t"e s+ndroe to find e4 "ence do t"ecorrectionM
• +ndroe di$its are linear cobination of error di$its.
*"e+ #roide inforation about error location.
• nfortunatel+4 for n-k e!uations and n unkno%ns t"ere are2k solutions. "ic" one to useM
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
28/769
EE576 Dr. Kousa Linear Block Codes 2
Example *.6
• Let 1001001
• s 111
• s0 e0JeJe5Je6 1
• s1 e1JeJe>Je5 1
• s2 e2Je>Je5Je6 1
• *"ere are 16 error #atterns t"at satisf+ t"e aboee!uations4 soe of t"e are0000010 1101010 1010011 1111101
• *"e ost #robable one is t"e one %it" iniu %ei$"t.ence v" 1001001 J 0000010 1001011
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
29/769
EE576 Dr. Kousa Linear Block Codes 2;
tandard &rra+ Decodin$
• *ransitted code%ord is an+ one of)
v14 v24 4 v2k
• *"e receied %ord r is an+ one of 2n n-tu#le.
• 9artition t"e 2n %ords into 2k disNoint subsets D14 D244 D2k
suc" t"at t"e %ords in subset Di are closer to code%ord vi
t"an an+ ot"er code%ord.
•Eac" subset is associated %it" one code%ord.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
30/769
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
31/769
EE576 Dr. Kousa Linear Block Codes 1
Stan(ar( Array
• TH 3.3 Io t%o n-tu#les in t"e sae ro% are identical.
Eer+ n-tu#le a##ears in one and onl+ one ro%.
k k nk nk nk n
k
k
k
22E2222
2EEE2EE
22E2222
2E21
eeee
eJeJee
eJeJee
0
---- +++
+
+
=
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
32/769
EE576 Dr. Kousa Linear Block Codes 2
Stan(ar( Array Dec&(in! i% inimum
Di%tance Dec&(in!• Let t"e receied %ord fall in Di subset and l t" coset.
• *"en el J vi
• %ill be decoded as vi. e %ill s"o% t"at is closer to vi
t"an an+ ot"er code%ord.
• d',vi( w' J vi( w'el J vi J vi( w'el (
• d',v j( w' J v &( w'el J vi J v &( w'el J v s(
• &s el and el J vs are in t"e sae coset4 and el is selected to
be t"e iniu %ei$"t t"at did not a##ear before4 t"enw'el ( ≤ w'el J v s(
• *"erefore d',vi( ≤ d',v j(
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
33/769
EE576 Dr. Kousa Linear Block Codes
tandard &rra+ Decodin$ 'cont( ain$ code
Q of correctable error #atterns 2
Q of sin$le-error #atterns 7
*"erefore4 all sin$le-error #atterns4 and onl+ sin$le-error
#atterns can be corrected. 'Oecall t"e ain$ Bound4
and t"e fact t"at ain$ codes are #erfect.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
34/769
EE576 Dr. Kousa Linear Block Codes >
tandard &rra+ Decodin$ 'cont
6>2
651
"=""
"=""
"=""
+++
Code%ords
000000
110001
101010
011011
011100
101101110110
000111
d in
=
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
35/769
EE576 Dr. Kousa Linear Block Codes 5
tandard &rra+ Decodin$ 'cont
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
36/769
EE576 Dr. Kousa Linear Block Codes 6
*"e +ndroe• u$e stora$e eor+ 'and searc"in$ tie( is re!uired b+ standard arra+
decodin$.
• Oecall t"e s+ndroe
! H* 'v J e( H* eH*
• *"e s+ndroe de#ends onl+ on t"e error #attern and not on t"e transitted
code%ord.
• TH 3.& &ll t"e 2k n-tu#les of a coset "ae t"e sae s+ndroe. *"e s+ndroes of
different cosets are different.
'el J i (* el
* '1st 9art(
Let e N and el be leaders of t%o cosets4 NRl . &ssue t"e+ "ae t"e sae
s+ndroe.e N
* el * 'e & Jel (
* 0.
*"is i#lies e & Jel i4 or el e N Ji
*"is eans t"at el is in t"e Nt" coset. Contradiction.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
37/769
EE576 Dr. Kousa Linear Block Codes 7
*"e +ndroe 'cont
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
38/769
EE576 Dr. Kousa Linear Block Codes
+ndroe Decodin$
Decodin$ 9rocedure)
1. Aor t"e receied ector 4 co#ute t"e s+ndroe ! H*.
2. sin$ t"e table4 identif+ t"e coset leader 'error #attern( el .. &dd el to to recoer t"e transitted code%ord v.
• $%)
1110101 ? ! 001 ? e 0010000
*"en4 v 1100101
• +ndroe decodin$ reduces stora$e eor+ fro n2n to
2n-k '2n-k (. &lso4 t reduces t"e searc"in$ tie considerabl+.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
39/769
EE576 Dr. Kousa Linear Block Codes ;
ard%are #leentation
• Let r 0 r 1 r 2 r r > r 5 r 6 and ! s0 s1 s2
• Fr&m the H atri)
s0 r 0 J r J r 5 J r 6 s1 r 1 J r J r > J r 5
s2 r 2 J r > J r 5 J r 6
• Aro t"e table of s+ndroes and t"eir corres#ondin$
correctable error #atterns4 a trut" table can be constructed.& cobinational lo$ic circuit %it" s0 4 s1 4 s2 as in#ut and
e0 4 e1 4 e2 4 e 4 e> 4 e5 4 e6 as out#uts can be desi$ned.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
40/769
EE576 Dr. Kousa Linear Block Codes >0
Decodin$ Circuit for t"e '74>( C
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
41/769
EE576 Dr. Kousa Linear Block Codes >1
Err&r Detecti&n Capa)ility
• & code%ord %it" d in can detect all error #atterns of %ei$"t d in S 1 or
less. t can detect an+ "i$"er error #atterns as %ell4 but not all.
• n fact t"e nuber of undetectable error #atterns is 2k -1 out of t"e 2n -1
nonero error #atterns.• DF) &i ≡ nuber of code%ords of %ei$"t i.• F&i@ i04144nH %ei$"t distribution of t"e code.
• Iote t"at &o1@ & & 0 for 0 R & R d in
∑=−−=
n
d i
inii% p p '
in
(1'
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
42/769
EE576 Dr. Kousa Linear Block Codes >2
• $%) ndetectable error #robabilit+ of '74>( C
&0 &7 1@ &1 &2 &5 &60@ &&>7
9%'E( 7 p'1- p(> J 7 p>'1- p( J p7
Aor p 10-2 9%'E( 710-6
• Define t"e %ei$"t enuerator)
•*"en
• Let pP'1- p(4 and notin$ t"at &01
∑=
=n
i
i
i ) ' ) '0
('
∑∑==
−
−−=−=
n
i
i
i
i
nn
i
ini
i% p
p p ' p p p ' (
11 1(1'(1'
−
−−=
−=−
− ∑= 11(1'@111 1 p
p ' p ( p
p ' p
p '
n
%
n
i
i
i
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
43/769
EE576 Dr. Kousa Linear Block Codes >
• *"e #robabilit+ of undetected error can as %ell be found fro t"e
%ei$"t enuerator of t"e dual code
%"ere B' ( is t"e %ei$"t enuerator of t"e dual code.
• "en eit"er &' ( and B' ( are not aailable4 9% a+ be u##er bounded
b+
9% T 2-'n-k ( 81-'1- p(n:
• Aor $ood c"annels ' p 0( 9% T 2-'n-k (
(1'(21'2 nk n% p p B −−−= −
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
44/769
EE576 Dr. Kousa Linear Block Codes >>
Err&r C&rrecti&n Capa)ility
• &n 'n,k ( code of d in can correct u# to t errors %"ere
• t a+ be able to correct "i$"er error #atterns but not all.
• *"e total nuber of #atterns it can correct is 2n-k
t"e code is #erfect
2P(1' in −= d t
∑=
−=
t
i
k n
i
n
0
2f
∑∑=
−
+=
− −
−=−
= t
i
inin
t i
ini
% p pin p p
in (
01
(1'1(1'
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
45/769
EE576 Dr. Kousa Linear Block Codes >5
ain$ Codes
• ain$ codes constitute a fail+ of sin$le-error correctin$ codes
defined as)
n 2$-14 k n-$4 $ ≥ • *"e iniu distance of t"e code d in
• Construction rule of H)
H is an 'n-k (n atri4 i*e. it "as 2$-1 coluns of $ tu#les.*"e all-ero $ tu#le cannot be a colun of H 'ot"er%ise d in1(.
Io t%o coluns are identical 'ot"er%ise d in2(.
*"erefore4 t"e H atri of a ain$ code of order $ "as as its
coluns all non-ero $ tu#les.
*"e su of an+ t%o coluns is a colun of H. *"erefore t"e su of
soe t"ree coluns is ero4 i.e. d in.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
46/769
EE576 Dr. Kousa Linear Block Codes >6
Sy%tematic 7ammin! C&(e%
• n s+steatic for)
8 $ U:• *"e coluns of U are all $-tu#les of %ei$"t ≥ 2.• Different arran$eents of t"e coluns of U #roduces
different codes4 but of t"e sae distance #ro#ert+.
• ain$ codes are #erfect codes
Oi$"t side 1Jn@ Left side 2$ nJ1
∑=−
=
t
i
k n
i
n
0 2
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
47/769
EE576 Dr. Kousa Linear Block Codes >7
Decodin$ of ain$ Codes
• Consider a sin$le-error #attern e'i(4 %"ere i is a nuber
deterinin$ t"e #osition of t"e error.
• ! e'i( H* Hi* t"e trans#ose of t"e ith colun of H.
• Ea#le)
[ ] [ ]0 1 0 0 0 0 0
1 0 00 1 00 0 11 1 00 1 11 1 11 0 1
0 1 0
=
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
48/769
EE576 Dr. Kousa Linear Block Codes >
Decodin$ of ain$ Codes 'cont
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
49/769
EE576 Dr. Kousa Linear Block Codes >;
9ei!ht Di%tri)uti&n &f 7ammin! C&(e%
• *"e %ei$"t enuerator of ain$ codes is)
• *"e %ei$"t distribution could as %ell be obtained fro t"e
recursie e!uations)
&014 &10
'iJ1(&iJ1 J &i J 'I-iJ1(&i-1 C I
i i14244I• *"e dual of a ain$ code is a '2$-14$( linear code. ts
%ei$"t enuerator is
{ }2P(1'2 (('1'(1'1
1(' −−−++
+= nn n
n '
12(12'1('−
−+= $
B $
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
50/769
EE576 Dr. Kousa Linear Block Codes 50
7i%t&ry
• In the late 1;05%
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
51/769
EE576 Dr. Kousa Linear Block Codes 51
=%e%
• 7ammin! C&(e% are %till 'i(ely u%e( in c&mputin!3telec&mmunicati&n3 an( &ther applicati&n%.
• 7ammin! C&(e% al%& applie( in
$ Data c&mpre%%i&n
$ S&me %&luti&n% t& the p&pular pule The 7at>ame
$ Bl&c- Tur)& C&(e%
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
52/769
EE576 Dr. Kousa Linear Block Codes 52
A ?@3; )inary 7ammin! C&(e
• 8et &ur c&(e'&r( )e "x1 x/ x@# F/@
• x*3 x63 xD3 x@ are ch&%en acc&r(in! t& the me%%a!e"perhap% the me%%a!e it%elf i% "x* x6 xD x@ ##.
• x; :+ x6 xD x@ "m&( /#
• x/ :+ x* xD x@• x1 :+ x* x6 x@
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
53/769
EE576 Dr. Kousa Linear Block Codes 5
?@3; )inary 7ammin! c&(e'&r(%
A ?@ ; )i 7 i C (
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
54/769
EE576 Dr. Kousa Linear Block Codes 5>
A ?@3; )inary 7ammin! C&(e• 8et a + x; x6 x x@ "+1 iff &ne &f the%e )it% i% in err&r#
• 8et ) + x/ x* x x@
• 8et c + x1 x* x6 x@• If there i% an err&r "a%%umin! at m&%t &ne# then a)c 'ill )e
)inary repre%entati&n &f the %u)%cript &f the &ffen(in! )it.
• If "y1 y
/ y
@# i% receie( an( a)c 0003 then 'e
a%%ume the )it a)c i% in err&r an( %'itch it. Ifa)c+0003 'e a%%ume there 'ere n& err&r% "%& ifthere are three &r m&re err&r% 'e may rec&er the'r&n! c&(e'&r(#.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
55/769
EE576 Dr. Kousa Linear Block Codes 55
Definiti&n: >enerat&r an( Chec-
atrice%• F&r an ?n3 - linear c&(e3 the !enerat&r matrix i% a
-Gn matrix f&r 'hich the r&' %pace i% the !ien c&(e.
• A chec- matrix f&r an ?n3 - i% a !enerat&r matrix f&r
the (ual c&(e. In &ther '&r(%3 an "n4-#G- matrix M f&r'hich Mx + 0 f&r all x in the c&(e.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
56/769
EE576 Dr. Kousa Linear Block Codes 56
A C&n%tructi&n f&r )inary
7ammin! C&(e%• F&r a !ien r3 f&rm an r G /r 41 matrix 3 the c&lumn% &f 'hichare the )inary repre%entati&n% "r )it% l&n!# &f 13 3 /r 41.
• The linear c&(e f&r 'hich thi% i% the chec- matrix i% a ?/r 413 /r 41 $ r )inary 7ammin! C&(e + Hx+"x1 x/ x n# : MxT + 0.
Example Chec- atrix• A chec- matrix f&r a ?@3; )inary 7ammin! C&(e:
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
57/769
EE576 Dr. Kousa Linear Block Codes 57
Syn(r&me Dec&(in!
• 8et y + "y1 y/ yn# )e a receie( c&(e'&r(.
• The %yn(r&me &f y i% S:+Lr yT. If S+0 then there 'a%n& err&r. If S 0 then S i% the )inary repre%entati&n&f %&me inte!er 1 J t J n+/r 41 an( the inten(e(c&(e'&r( i%
x + "y1 yr 1 yn#.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
58/769
EE576 Dr. Kousa Linear Block Codes 5
Example =%in! 8*
• Supp&%e "1 0 1 0 0 1 0# i% receie(.
100 i% ; in )inary3 %& the inten(e( c&(e'&r( 'a% "1 01 1 0 1 0#.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
59/769
EE576 Dr. Kousa Linear Block Codes 5;
Exten(e( ?K3; )inary 7amm.
C&(e• A% 'ith the ?@3; )inary 7ammin! C&(e: $ x*3 x63 xD3 x@ are ch&%en acc&r(in! t& the me%%a!e. $ x; :+ x6 xD x@
$ x/ :+ x* xD x@ $ x1 :+ x* x6 x@
• A(( a ne' )it x0 %uch that $ x
0 + x
1
x
/ x
* x
; x
6 x
D x
@. i.e.3 the ne' )it
ma-e% the %um &f all the )it% er&. x0 i% calle( aparity chec-.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
60/769
EE576 Dr. Kousa Linear Block Codes 60
Exten(e( )inary 7ammin! C&(e
• The minimum (i%tance )et'een any t'& c&(e'&r(%i% n&' ;3 %& an exten(e( 7ammin! C&(e i% a 14err&rc&rrectin! an( /4err&r (etectin! c&(e.
• The !eneral c&n%tructi&n &f a ?/r3 /r41 4 r exten(e(c&(e fr&m a ?/r $13 /r $1 $ r )inary 7ammin! C&(ei% the %ame: a(( a parity chec- )it.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
61/769
EE576 Dr. Kousa Linear Block Codes 61
Chec- atrix C&n%tructi&n &f
Exten(e( 7ammin! C&(e• The chec- matrix &f an exten(e( 7ammin! C&(e can
)e c&n%tructe( fr&m the chec- matrix &f a 7ammin!c&(e )y a((in! a er& c&lumn &n the left an( a r&'
&f 15% t& the )&tt&m.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
62/769
EE576 Dr. Kousa Linear Block Codes 62
q4ary 7ammin! C&(e%
• The )inary c&n%tructi&n !eneralie% t& 7ammin!C&(e% &er an alpha)et A+H03 3 q3 q L /.
• F&r a !ien r3 f&rm an r G "q r 41#,"q41# matrix M &er A3
any t'& c&lumn% &f 'hich are linearly in(epen(ent.• M (etermine% a ?"qr 41#,"q41#3 "qr 41#,"q41# $ r "+ ?n3-#
q4ary 7ammin! C&(e f&r 'hich i% the chec- matrix.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
63/769
EE576 Dr. Kousa Linear Block Codes 6
Example: ternary ?;3 / 7ammin!
• T'& chec- matrice% f&r the %&me ?;3 / ternary7ammin! C&(e%:
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
64/769
EE576 Dr. Kousa Linear Block Codes 6>
Syn(r&me (ec&(in!: the q4ary
ca%e• The %yn(r&me &f receie( '&r( y3 S:+MyT3 'ill )e amultiple &f &ne &f the c&lumn% &f M3 %ay S+Mmi3 M %calar3 mi the ith c&lumn &f M. A%%ume an err&r ect&r
&f 'ei!ht 1 'a% intr&(uce( y + x "0 M 0#3 M inthe ith %p&t.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
65/769
EE576 Dr. Kousa Linear Block Codes 65
Example: q4ary Syn(r&me
• ?;3/ ternary 'ith chec- matrix 3 '&r("0 1 1 1# receie(.
• S& (ec&(e "0 1 1 1# a%
"0 1 1 1# $ "0 0 / 0# + "0 1 / 1#.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
66/769
EE576 Dr. Kousa Linear Block Codes 66
Nerfect 14err&r c&rrectin!
• 7ammin! C&(e% are perfect 14err&r c&rrectin! c&(e%.That i%3 any receie( '&r( 'ith at m&%t &ne err&r 'ill)e (ec&(e( c&rrectly an( the c&(e ha% the %malle%t
p&%%i)le %ie &f any c&(e that (&e% thi%.• F&r a !ien r3 any perfect 14err&r c&rrectin! linear
c&(e &f len!th n+/r 41 an( (imen%i&n n4r i% a7ammin! C&(e.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
67/769
EE576 Dr. Kousa Linear Block Codes 67
Nr&&f: 14err&r c&rrectin!• A c&(e 'ill )e 14err&r c&rrectin! if
$ %phere% &f ra(iu% 1 centere( at c&(e'&r(% c&er thec&(e%pace3 an(
$ if the minimum (i%tance )et'een any t'& c&(e'&r(% L *3%ince then %phere% &f ra(iu% 1 centere( at c&(e'&r(% 'ill )e(i%O&int.
• Supp&%e c&(e'&r(% x3 y (iffer )y 1 )it. Then x4y i% a c&(e'&r(&f 'ei!ht 13 an( M"x4y# 0. C&ntra(icti&n. If x3 y (iffer )y /)it%3 then M"x4y# i% the (ifference &f t'& multiple% &f c&lumn% &fM. 2& t'& c&lumn% &f M are linearly (epen(ent3 %& M"x4y# 03an&ther c&ntra(icti&n. Thu% the minimum (i%tance i% at lea%t *.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
68/769
EE576 Dr. Kousa Linear Block Codes 6
Nerfect
• A %phere &f ra(iu% P centere( at x i%SP"x#+Hy in An : (7"x3y# J P. 9here A i% the alpha)et3Fq3 an( (7 i% the 7ammin! (i%tance.
• A %phere &f ra(iu% e c&ntain% '&r(%.• If C i% an e4err&r c&rrectin! c&(e then
3 %& .
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
69/769
EE576 Dr. Kousa Linear Block Codes 6;
Nerfect
• Thi% la%t inequality i% calle( the %phere pac-in!)&un( f&r an e4err&r c&rrectin! c&(e C &f len!th n&er Fm:
'here n i% the len!th&f the c&(e an( in thi% ca%e e+1.
• A c&(e f&r 'hich equality h&l(% i% calle( perfect.
N f N f t
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
70/769
EE576 Dr. Kousa Linear Block Codes 70
Nr&&f: Nerfect
• The ri!ht %i(e &f thi%3 f&r e+1 i% qn,"1n"q41##.
• The left %i(e i% qn4r 'here n+ "qr 41#,"q41#.
qn4r "1n"q41## + qn4r "1"qr 41## + qn.
Applicati&n%• Data c&mpre%%i&n.
• Tur)& C&(e%
• The 7at >ame
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
71/769
EE576 Dr. Kousa Linear Block Codes 71
Data C&mpre%%i&n
• 7ammin! C&(e% can )e u%e( f&r a f&rm &f l&%%yc&mpre%%i&n.
• If n+/r 41 f&r %&me r3 then any n4tuple &f )it% x i% 'ithin
(i%tance at m&%t 1 fr&m a 7ammin! c&(e'&r( c. 8et> )e a !enerat&r matrix f&r the 7ammin! C&(e3 an(mG+c.
• F&r c&mpre%%i&n3 %t&re x a% m. F&r (ec&mpre%%i&n3(ec&(e m a% c. Thi% %ae% r )it% &f %pace )ut
c&rrupt% "at m&%t# 1 )it.
The 7at >ame
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
72/769
EE576 Dr. Kousa Linear Block Codes 72
The 7at >ame• A !r&up &f n player% enter a r&&m 'hereup&n they each receie
a hat. Each player can %ee eery&ne el%e5% hat )ut n&t hi% &'n.
• The player% mu%t each %imultane&u%ly !ue%% a hat c&l&r3 &rpa%%.
• The !r&up l&%e% if any player !ue%%e% the 'r&n! hat c&l&r &r ifeery player pa%%e%.
• Nlayer% are n&t nece%%arily an&nym&u%3 they can )e num)ere(.• A%%i!nment &f hat% i% a%%ume( t& )e ran(&m.
• The player% can meet )ef&rehan( t& (ei%e a %trate!y.
• The !&al i% t& (ei%e the %trate!y that !ie% the hi!he%tpr&)a)ility &f 'innin!.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
73/769
EE 661,;613 Fall3 /00@
C&mmunicati&n Sy%tem%
V"u an
De#artent of Electrical and Co#uter En$ineerin$
Class 25
Dec. 6t"4 2007
OutlineOutline
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
74/769
EE 6;1,;61 Fall /00@
OutlineOutline
9roNect 2
&OU Oeie%
Linear Code
S ain$ Code Oeisit
S OeedSuller code C+clic Code
S COC Code
S BC Code
S O Code
ARQ FEC ECARQ FEC EC
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
75/769
EE 6;1,;61 Fall /00@
ARQ, FEC, EC ARQ, FEC, EC
&OU
Aor%ard Error Correction 'error correct codin$(
+brid Error Correction
tx rxErr&r (etecti&n c&(e
AC,2AC
tx rxErr&r c&rrecti&n c&(e
tx rx
Err&r (etecti&n,C&rrecti&n c&(e
AC,2AC
amming Codeamming Code
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
76/769
EE 6;1,;61 Fall /00@
amming Codeamming Code
'n4k() k inforation bit len$t"4 n oerall code len$t"
n2W-14 k2W--1)
'74>(4 rate '>P7(@ '15411(4 rate '11P15(@ '1426(4 rate '26P1(
'74>() Distance d4 correction abilit+ 14 detection abilit+ 2.
Oeeber t"at it is $ood to "ae lar$er distance and rate.
Lar$er n eans lar$er dela+4 but usuall+ better code
amming Code Exampleamming Code Example
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
77/769
EE 6;1,;61 Fall /00@
amming Code Exampleamming Code Example
'74>(
/enerator atri /) first >-b+-> identical atri
essa$e inforation ector #
*ransission ector
Oeceied ector r
and error ector e
9arit+ c"eck atri
Error CorrectionError Correction
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
78/769
EE 6;1,;61 Fall /00@
Error CorrectionError Correction
f t"ere is no error4 s+ndroe ector eros
f t"ere is one error at location 2
Ie% s+ndroe ector is
%"ic" corres#onds to t"e second colun of H. *"us4 an error
"as been detected in #osition 24 and can be corrected
ExerciseExercise
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
79/769
EE 6;1,;61 Fall /00@
ExerciseExercise
ae #roble as t"e #reious slide4 but #'1001(< and t"e error
occurs at location > instead. 9ause for 5 inutes
i$"t be 10 #oints in t"e finals.
mportant !amming Codesmportant !amming Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
80/769
EE 6;1,;61 Fall /00@
mportant !amming Codesmportant !amming Codes
ain$ '74>4( -code. t "as 16 code%ords of len$t" 7. t can
be used to send 27 12 essa$es and can be used to correct 1error.
• /ola+ '241247( -code. t "as > 0;6 code%ords. t can be used to
transit 60 essa$es and can correct errors.
Uuadratic residue '>742>411( -code. t "as 16 777 216code%ords and can be used to transit 1>0 77 > 55 2
essa$es and correct 5 errors.
Reed "uller codeReed!"uller code
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
81/769
EE 6;1,;61 Fall /00@
Reed!"uller codeReed!"uller code
C#clic codeC#clic code
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
82/769
EE 6;1,;61 Fall /00@
C#clic codeC#clic code
C+clic codes are of interest and i#ortance because
S *"e+ #osses ric" al$ebraic structure t"at can be utilied in aariet+ of %a+s.
S *"e+ "ae etreel+ concise s#ecifications.
S *"e+ can be efficientl+ i#leented usin$ si#le shift re!ister
S an+ #racticall+ i#ortant codes are c+clic
n #ractice4 c+clic codes are often used for error detection
'C+clic redundanc+ c"eck4 COC(
S sed for #acket net%orks
S "en an error is detected b+ t"e receier4 it re!uests
retransission
S &OU
"#$C"#$C DE%&'(&DE%&'(& of Cyclic Codeof Cyclic Code
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
83/769
EE 6;1,;61 Fall /00@
"#$C "#$C DE%&'(& DE%&'(& of Cyclic Codeof Cyclic Code
%%)E*+E&C, of C,CC C(DE$)E*+E&C, of C,CC C(DE$
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
84/769
EE 6;1,;61 Fall /00@
% % )E*+E&C, of C,CC C(DE$)E*+E&C, of C,CC C(DE$
E.#/PE of a C,CC C(DEE.#/PE of a C,CC C(DE
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
85/769
EE 6;1,;61 Fall /00@
E.#/PE of a C,CC C(DE E.#/PE of a C,CC C(DE
P(,&(/#$P(,&(/#$ oeroer %2%2qq33
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
86/769
EE 6;1,;61 Fall /00@
P(,&(/#$P(,&(/#$ oeroer %2 %2 qq 3 3
E.#/PEE.#/PE
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
87/769
EE 6;1,;61 Fall /00@
E.#/PE E.#/PE
C#clic Code EncoderC#clic Code Encoder
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
88/769
EE 6;1,;61 Fall /00@
C#clic Code Encoder C#clic Code Encoder
C#clic Code DecoderC#clic Code Decoder
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
89/769
EE 6;1,;61 Fall /00@
C#clic Code Decoder C#clic Code Decoder
Diider
iilar structure as ulti#lier for encoder
Cyclic Redundancy Checks (CRC)
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
90/769
EE 6;1,;61 Fall /00@
Cyclic Redundancy Checks (CRC)
Examle &f C
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
91/769
EE 6;1,;61 Fall /00@
Examle &f C
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
92/769
Capa$ilit# o% CRCCapa$ilit# o% CRC
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
93/769
EE 6;1,;61 Fall /00@
Capa$ilit# o% CRC p #
&n error E'=( is undetectable if it is diisible b+ /'(. *"e
follo%in$ can be detected. S &ll sin$le-bit errors if /'( "as ore t"an one nonero ter
S &ll double-bit errors if /'( "as a factor %it" t"ree ters
S &n+ odd nuber of errors4 if 9'( contain a factor J1
S &n+ burst %it" len$t" less or e!ual to n-k S & fraction of error burst of len$t" n-kJ1@ t"e fraction is 1-2W'-'-n-k-1((.
S & fraction of error burst of len$t" $reater t"an n-kJ1@ t"e fractionis 1-2W'-'n-k((.
9o%erful error detection@ ore co#utation co#leit+co#ared to nternet c"ecksu
9a$e 652
&C Code&C Code
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
94/769
EE 6;1,;61 Fall /00@
&C Code
Bose4 Oa+-C"aud"uri4 oc!uen$"e
S ulti#le error correctin$ abilit+ S Ease of encodin$ and decodin$
S 9a$e 65
ost #o%erful c+clic code
S Aor an+ #ositie inte$er and tR2W'-1(4 t"ere eists a t-error
correctin$ 'n4k( code %it" n2W-1 and n-kRt.
ndustr+ standards
S '5114 >;( BC code in *-*. Oec. .261 Xideo codec for
audioisual serice at kbitPsY a ideo codin$ a standard used for
ideo conferencin$ and ideo #"one.
S '>04 2( BC code in &* '&s+nc"ronous *ransfer ode(
&C 'er%ormance&C 'er%ormance
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
95/769
EE 6;1,;61 Fall /00@
C e o a ce
Reed(Solomon CodesReed(Solomon Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
96/769
EE 6;1,;61 Fall /00@
Reed Solomon Codes
&n i#ortant subclass of non-binar+ BC
9a$e 65>
ide ran$e of a##lications
S tora$e deices 'ta#e4 CD4 DZD(
S ireless or obile counication
S atellite counication
S Di$ital teleisionPDi$ital Zideo Broadcast'DZB(
S i$"-s#eed odes '&DL4 DL(
ExamplesExamples
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
97/769
EE 6;1,;61 Fall /00@
pp
10.2 #a$e 6;
10. #a$e 6>
10.> 9a$e 651
i$"t be > #oints in t"e final
)*+) "ariner *)*+) "ariner *
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
98/769
EE 6;1,;61 Fall /00@
ariner u%e( a ?*/331 )eed-/uller
c&(e t& tran%mit it% !rey ima!e% &f ar%.
camera rate:
100,000 bits/second
transmission speed:16,000 bits/second
)*+*- .o#agers / // )*+*- .o#agers / //
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
99/769
EE 6;1,;61 Fall /00@
# g# g
Q&ya!er% I R II u%e( a ?/;31/3K olay c&(et& %en( it% c&l&r ima!e% &f upiter an( Saturn.
Q&ya!er / traele( further t& =ranu%an( 2eptune. Becau%e &f the hi!hererr&r rate it %'itche( t& the m&rer&)u%t )eed-$olomon c&(e.
"odern Codes"odern Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
100/769
EE 6;1,;61 Fall /00@
ore recentl+
%rbo codes %ere inented4
%"ic" are used in
/ cell #"ones4'future( satellites4
and in t"e Cassini-u+$ens s#ace
#robe 81;;7S:.
,t"er odern codes) Aountain4 Oa#tor4 L*4 online codes
Iet4 net class
Error Correcting CodesError Correcting Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
101/769
EE 6;1,;61 Fall /00@
ggimer"ectness &f a !ien c&(e a% the (ifference )et'een the c&(e% require( E),2& t&attain a !ien '&r( err&r pr&)a)ility "N'#3 an( the minimum p&%%i)le E),2& require( t&attain the %ame N'3 a% implie( )y the %phere4pac-in! )&un( f&r c&(e% 'ith the %ame)l&c- %ie k an( c&(e rate r .
Radio S#stem 'ropagationRadio S#stem 'ropagation
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
102/769
EE 6;1,;61 Fall /00@
# p g# p g
Satellite CommunicationsSatellite Communications
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
103/769
EE 6;1,;61 Fall /00@
Lar$e counication area. &n+ t%o #laces %it"in t"e coera$e of radiotransission b+ satellite cancounicate %it" eac" ot"er.
eldo effected b+ land disaster' "i$" reliabilit+(
Circuit can be started u#onestablis"in$ eart" station '#ro#tcircuit startin$(
Can be receied at an+ #lacessiultaneousl+4 and realie broadcast4ulti-access counicationeconoicall+' feature of ulti-access(
Zer+ fleible circuit installent 4 can
dis#erse oer-centralied traffic atan+ tie.
,ne c"annel can be used in differentdirections or areas 'ulti-accessconnectin$(.
1'S 1'S
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
104/769
EE 6;1,;61 Fall /00@
[ust a tier4 2> satellite
Calculation #osition
Z05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
105/769
EE576 Dr. Kousa Linear Block Codes 105
C+clic codes
C7ANTE< *: Cyclic an( c&n&luti&n
c&(e%Cyclic c&(e% are &f intere%t an( imp&rtance )ecau%e
• They p&%%e% rich al!e)raic %tructure that can )eutilie( in a ariety &f 'ay%.
• They hae extremely c&nci%e %pecificati&n%.
• They can )e efficiently implemente( u%in! %impleshift registers4
• any practically imp&rtant c&(e% are cyclic.
C&n&luti&n c&(e% all&' t& enc&(e %tream% &( (ata")it%#.
#$S%C#$S%C &E'%%T%&E'%%T% $&$& E*$M+LESE*$M+LESZ05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
106/769
EE576 Dr. Kousa Linear Block Codes 106
C+clic codes
•Definiti&n A c&(e C i% cyclic if •"i# C i% a linear c&(eU
•"ii# any cyclic %hift &f a c&(e'&r( i% al%& a c&(e'&r(3 i.e. 'heneer a03 an 41 ∈ C 3 thenal%& an 41 a0 an $/ ∈ C .Example"i# C&(e C + H0003 1013 0113 110 i% cyclic.
"ii# 7ammin! c&(e !am"*3 /#: 'ith the !enerat&r matrix
i% equialent t& a cyclic c&(e.
"iii# The )inary linear c&(e H00003 10013 01103 1111 i% n&t a cyclic3 )ut it i%equialent t& a cyclic c&(e.
"i# I% 7ammin! c&(e !am"/3 *# 'ith the !enerat&r matrix
"a# cyclicV")# equialent t& a cyclic c&(eV
=
1111000
01101001010010
1100001
2110
1101
''RE,-EC o" CCL%C C&ESRE,-EC o" CCL%C C&ES
Z05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
107/769
EE576 Dr. Kousa Linear Block Codes 107C+clic codes
•C&mparin! 'ith linear c&(e%3 the cyclic c&(e% are quite %carce. F&r3 example there are 11 K11linear "@3*# linear )inary c&(e%3 )ut &nly t'& &f them are cyclic.
•Triial cyclic c&(e%. F&r any fiel( % an( any inte!er n W+ * there are al'ay% the f&ll&'in! cyclicc&(e% &f len!th n &er % :
• 2&4inf&rmati&n c&(e 4 c&(e c&n%i%tin! &f Ou%t &ne all4er& c&(e'&r(.
•
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
108/769
EE576 Dr. Kousa Linear Block Codes 10C+clic codes
•The c&(e 'ith the !enerat&r matrix
•ha% c&(e'&r(%
• c 1 + 1011100 c / + 0101110 c * +0010111
• c 1 c / + 1110010 c 1 c * + 1001011 c / c * + 0111001
• c 1 c / c * + 1100101
•an( it i% cyclic )ecau%e the ri!ht %hift% hae the f&ll&'in! impact%
• c 1 → c /3 c / → c *3 c * → c 1 c *
• c 1 c / → c / c *3 c 1 c * → c 1 c / c *3 c / c * → c 1
• c 1 c / c * → c 1 c /
=11101000111010
0011101
+LM%$LS+LM%$LS o/ero/er G'(G'())Z05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
109/769
EE576 Dr. Kousa Linear Block Codes 10;C+clic codes
+LM%$LS+LM%$LS o/ero/er G'(G'( ))
• % q? (en&te% the %et &f all p&lyn&mial% &er % "6 #.• deg "f" ## + the lar!e%t m %uch that m ha% a n&n4er& c&efficient in f234
ultiplicati&n &f p&lyn&mial% If f" #3 !" # ∈ % q? 3 thendeg "f" # !" ## + deg "f" ## deg "!" ##.
Dii%i&n &f p&lyn&mial% F&r eery pair &f p&lyn&mial% a" #3 )" #≠ 0 in %
q? there
exi%t% a unique pair &f p&lyn&mial% q" #3 r" # in % q? %uch that
a" # + q" #)" # r" #3 (e! "r" ## X deg ")" ##.
Example Dii(e * 1 )y / 1 in % /? .
Definiti&n 8et f" # )e a fixe( p&lyn&mial in % q? . T'& p&lyn&mial% !" #3 h" # are %ai(t& )e c&n!ruent m&(ul& f" #3 n&tati&n
!" # ≡ h" # "m&( f" ##3if !" # 4 h" # i% (ii%i)le )y f" #.
R%GR%G o"o" +LM%$LS+LM%$LSZ05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
110/769
EE576 Dr. Kousa Linear Block Codes 110C+clic codes
•The %et &f p&lyn&mial% in % q? &f (e!ree le%% than deg "f" ##3 'ith a((iti&n an( multiplicati&n m&(ul& f" # f&rm% a rin!denoted '01x23"(x).
•Example Calculate " 1#/ in % /? , " / 1#. It h&l(%
•" 1#/ + x/ /x 1 ≡ / 1 ≡ "m&( x/ x 1#.
•7&' many element% ha% % q? , f" #V•
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
111/769
EE576 Dr. Kousa Linear Block Codes 111C+clic codes
'%EL&'%EL& R R nn44 R R nn 55 F F 0011 x x 22 3 3 (( x x nn 66 7)7)
•C&mputati&n m&(ul& n $ 1
•Since n ≡ 1 "m&( n 41# 'e can c&mpute f" # m&( n 41 a% f&ll&':•In f" # replace n )y 13 n 1 )y 3 n / )y /3 n * )y *3
•I(entificati&n &f '&r(% 'ith p&lyn&mial%
•a0 a1 an 41 ↔ a0 a1 a/ / an 41 n 41
•ultiplicati&n )y in ) n c&rre%p&n(% t& a %in!le cyclic %hift
• "a0 a1 an 41 n 41# + an 41 a0 a1 / an 4/ n 41
$l!e8raic$l!e8raic characterizationcharacterization o"o" cycliccyclic codescodesZ05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
112/769
EE576 Dr. Kousa Linear Block Codes 112C+clic codes
!! yy
• The&rem A c&(e C i% cyclic if C %ati%fie% t'& c&n(iti&n%
• "i# a" #3 )" # ∈ C ⇒ a" # )" # ∈ C
• "ii# a" # ∈ C 3 r" # ∈ ) n ⇒ r" #a" # ∈ C
• Nr&&f
• "1# 8et C )e a cyclic c&(e. C i% linear ⇒ "i# h&l(%.• "ii# 8et a" # ∈ C 3 r" # + r 0 r 1 r n 41 n 41
• r" #a" # + r 0a" # r 1 a" # r n 41 n 41a" #• i% in C )y "i# )ecau%e %umman(% are cyclic %hift% &f a" #.
• "/# 8et "i# an( "ii# h&l(
• • Ta-in! r" # t& )e a %calar the c&n(iti&n% imply linearity &f C .
• • Ta-in! r" # + the c&n(iti&n% imply cyclicity &f C .
CSTR-CT%CSTR-CT% o"o" CCL%CCCL%C C&ESC&ESZ05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
113/769
EE576 Dr. Kousa Linear Block Codes 11C+clic codes
•2&tati&n If f" # ∈ ) n3 then∀ 〈f" #〉 + Hr" #f" # Y r" # ∈ ) n
•"multiplicati&n i% m&(ul& n
41#.
•The&rem F&r any f" # ∈ ) n3 the %et 〈f"x#〉 i% a cyclic c&(e "!enerate( )y f#.
•Nr&&f 9e chec- c&n(iti&n% "i# an( "ii# &f the prei&u% the&rem.
•"i# If a" #f" # ∈ 〈f" #〉 an( )" #f" # ∈ 〈f" #〉3 then
• a" #f" # )" #f" # + "a" # )" ## f" # ∈ 〈f" #〉
•"ii# If a" #f" # ∈ 〈f" #〉3 r" # ∈ ) n3 then• r" # "a" #f" ## + "r" #a" ## f" # ∈ 〈f" #〉.
Example C + 〈1 / 〉3 n + *3 6 + /.
9e hae t& c&mpute r" #"1 /# f&r all r" # ∈ ) *.) * + H03 13 3 1 3
/3 1 /3 /3 1 /.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
114/769
EE576 Dr. Kousa Linear Block Codes 11>C+clic codes
CharacterizationCharacterization theoremtheorem "or "or cycliccyclic codescodes
•9e %h&' that all cyclic c&(e% C hae the f&rm C + 〈f" #〉 f&r %&me f" # ∈ ) n.
•The&rem 8et C )e a n&n4er& cyclic c&(e in ) n. Then• there exi%t% unique m&nic p&lyn&mial !" # &f the %malle%t (e!ree %uch that• C + 〈!" #〉• !" # i% a fact&r &f n 41.
Nr&&f
"i# Supp&%e !" # an( h" # are t'& m&nic p&lyn&mial% in C &f the %malle%t (e!ree.Then the p&lyn&mial !" # 4 h" # ∈ C an( it ha% a %maller (e!ree an( a multiplicati&n)y a %calar ma-e% &ut &f it a m&nic p&lyn&mial. If !" # ≠ h" # 'e !et a c&ntra(icti&n.
"ii# Supp&%e a"x# ∈ C .Then
a" # + q" #!" # r" # "deg r" # X deg !" ##
an(r" # + a" # 4 q" #!" # ∈ C .
By minimalityr" # + 0
an( theref&re a" # ∈ 〈!" #〉.
CharacterizationCharacterization theoremtheorem "or"or cycliccyclic codescodesZ05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
115/769
EE576 Dr. Kousa Linear Block Codes 115C+clic codes
CharacterizationCharacterization theoremtheorem "or "or cycliccyclic codescodes
•"iii# Clearly3
• n
$1 + q" #!" # r" # 'ith deg r" # X deg !" #
•an( theref&re r" # ≡ 4q" #!" # "m&( xn 41# an(•r" # ∈ C ⇒ r" # + 0 ⇒ !" # i% a fact&r &f n 41.
>E2EE2E
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
116/769
EE576 Dr. Kousa Linear Block Codes 116C+clic codes
•The la%t claim &f the prei&u% the&rem !ie% a recipe t& !et all cyclic c&(e% &f !ien len!th n.
•In(ee(3 all 'e nee( t& (& i% t& fin( all fact&r% &f
• n
41.•Nr&)lem: Fin( all )inary cyclic c&(e% &f len!th *.
•S&luti&n: Since
• * $ 1 + " 1#" / 1#
• )&th fact&r% are irre(uci)le in % "/#
•'e hae the f&ll&'in! !enerat&r p&lyn&mial% an( c&(e%.
• >enerat&r p&lyn&mial% C&(e in ) * C&(e in 7 "*3/#
• 1 ) * 7 "*3/#
• 1 H03 1 3 /3 1 / H0003 1103 0113 101
• / 1 H03 1 / H0003 111
• *
$ 1 " + 0# H0 H000
&esi!n&esi!n o" o" !enerator!enerator matricesmatrices "or"or cycliccyclic codescodesTh S C i li ( f ( ( f l th ith th t l i l
Z05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
117/769
EE576 Dr. Kousa Linear Block Codes 117C+clic codes
• Theorem Supp&%e C i% a cyclic c&(e &f c&(e'&r(% &f len!th n 'ith the !enerat&r p&lyn&mial
• !" # + !0 !1 !r r .
• Then dim "C # + n 4 r an( a !enerat&r matrix 1 f&r C i%
Nr&&f
"i# All r&'% &f 1 are linearly in(epen(ent."ii# The n 4 r r&'% &f repre%ent c&(e'&r(%
!" #3 !" #3 /!" #33 n 4r 41!" # "]#
"iii# It remain% t& %h&' that eery c&(e'&r( in C can )e expre%%e( a% a linear c&m)inati&n &fect&r% fr&m "]#.
In(e(3 if a"x# ∈ C 3 thena" # + q" #!" #.
Since deg a" # X n 'e hae deg q" # X n 4 r.7ence
q" #!" # + "q0 q1 qn 4r 41 n 4r 41#!" #
+ q0!" # q1 !" # qn 4r 41xn 4r 41!" #.
=
r
r
r
r
! !
! ! ! !
! ! ! !
! ! ! !
,
...0...00...00
......
0...0...00
0...00...0
0...000...
0
210
210
210
1
E*$M+LEE*$M+LE•The ta%- i% t& (etermine all ternary c&(e% &f len!th ; an( !enerat&r% f&r them
Z05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
118/769
EE576 Dr. Kousa Linear Block Codes 11C+clic codes
•The ta%- i% t& (etermine all ternary c&(e% &f len!th ; an( !enerat&r% f&r them.
•Fact&riati&n &f ; 4 1 &er % "*# ha% the f&rm
• ; 4 1 + " 4 1#" * / 1# + " 4 1#" 1#" / 1#
•Theref&re there are /* + K (ii%&r% &f x; 4 1 an( each !enerate% a cyclic c&(e.
• >enerat&r p&lyn&mial >enerat&r matrix
• 1 ;
•
• 1
• / 1
• " 4 1#" 1# + /
4 1
• " 4 1#" / 1# + * 4 / 4 1 ? 41 1 41 1
• "x 1#"x/ 1# ? 1 1 1 1
• x; 4 1 + 0 ? 0 0 0 0
−
−
−
−−
1010
0101
1010
0101
1100
0110
0011
1100
0110
0011
CheckCheck olynomialsolynomials andand arity checkarity check matrices "or cyclic codesmatrices "or cyclic codes
Z05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
119/769
EE576 Dr. Kousa Linear Block Codes 11;C+clic codes
•8et C )e a cyclic ?n8k 4c&(e 'ith the !enerat&r p&lyn&mial !" # "&f (e!ree n 4 k #. By the la%t the&rem!" # i% a fact&r &f n 4 1. 7ence
• n 4 1 + !" #h" #
•f&r %&me h" # &f (e!ree k "'here h" # i% calle( the chec- p&lyn&mial &f C #.
•The&rem 8et C )e a cyclic c&(e in ) n 'ith a !enerat&r p&lyn&mial !" # an( a chec- p&lyn&mial h" #.Then an c" # ∈ ) n i% a c&(e'&r( &f C if c" #h" # ≡ 0 4 thi% an( next c&n!ruence% are m&(ul& n 4 1.
Nr&&f 2&te3 that !" #h" # + n 4 1 ≡ 0"i# c" # ∈ C ⇒ c" # + a" #!" # f&r %&me a" # ∈ ) n
⇒ c" #h" # + a" # !" #h" # ≡ 0. ≡ 0
"ii# c" #h" # ≡ 0c" # + q" #!" # r" #3 deg r" # X n $ k + deg !" #
c" #h" # ≡ 0 ⇒ r" #h" # ≡ 0 "m&( n 4 1#
Since deg "r" #h" ## X n $ k k + n3 'e hae r" #h" # + 0 in % ? an( theref&re
r" # + 0 ⇒ c" # + q" #!" # ∈ C .
+LM%$L+LM%$L RE+RESET$T% o" &-$L C&ESRE+RESET$T% o" &-$L C&ES
Z05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
120/769
EE576 Dr. Kousa Linear Block Codes 120C+clic codes
•Since dim "〈h"x#〉# + n 4 k + dim "C ⊥# 'e mi!ht ea%ily )e f&&le( t& thin- that the chec-p&lyn&mial h" # &f the c&(e C !enerate% the (ual c&(e C ⊥.
•
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
121/769
EE576 Dr. Kousa Linear Block Codes 121C+clic codes
•Nr&&f A p&lyn&mial c" # + c0 c1 cn 41 n $1 repre%ent% a c&(e fr&m C if c" #h" # + 0.F&r c" #h" # t& )e 0 the c&efficient% at -33 n 41 mu%t )e er&3 i.e.
•Theref&re3 any c&(e'&r( c0 c1 cn 41 ∈ C i% &rth&!&nal t& the '&r( h- h- 41h0000 an( t&
it% cyclic %hift%.•
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
122/769
EE576 Dr. Kousa Linear Block Codes 122C+clic codes
! ! y y p p yme%%a!e p&lyn&mial an( the !eneratin! p&lyn&mial f&r the cyclic c&(e.
•8et C )e an "n3k #4c&(e &er an fiel( % 'ith the !enerat&r p&lyn&mial•!" # + !0 !1 !r $1 r 41 &f (e!ree r + n 4 k .
•If a me%%a!e ect&r m i% repre%ente( )y a p&lyn&mial m" # &f (e!ree k an( m i% enc&(e()y
• m ⇒ c + m13
•then the f&ll&'in! relati&n )et'een m" # an( c" # h&l(%
• c" # + m" #!" #.
•Such an enc&(in! can )e realie( )y the %hift re!i%ter %h&'n in Fi!ure )el&'3 'here inputi% the k 4)it me%%a!e t& )e enc&(e( f&ll&'e( )y n 4 k 0 an( the &utput 'ill )e the enc&(e(
me%%a!e.
•Shift4re!i%ter enc&(in!% &f cyclic c&(e%. Small circle% repre%ent multiplicati&n )y thec&rre%p&n(in! c&n%tant3 ⊕ n&(e% repre%ent m&(ular a((iti&n3 %quare% are (elay element%
EEC&%G o" CCL%C C&ESC&%G o" CCL%C C&ES %%%%Z05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
123/769
EE576 Dr. Kousa Linear Block Codes 12C+clic codes
• An&ther meth&( f&r enc&(in! &f cyclic c&(e% i% )a%e( &n the f&ll&'in! "%& calle(%y%tematic# repre%entati&n &f the !enerat&r an( parity4chec- matrice% f&r cyclic c&(e%.
•The&rem 8et C )e an "n3k #4c&(e 'ith !enerat&r p&lyn&mial !" # an( r + n 4 k . F&r i + 03133k 4 13 let /3i )e the len!th n ect&r 'h&%e p&lyn&mial i% /3i" # + rI 4 rI m&( !" #. Thenthe k ] n matrix / 'ith r&' ect&r% /3I i% a !enerat&r matrix f&r C .
•&re&er3 if ! /3 i% the len!th n ect&r c&rre%p&n(in! t& p&lyn&mial ! /3" # + O m&( !" #3then the r 9 n matrix ! / 'ith r&' ect&r% ! /3 i% a parity chec- matrix f&r C . If the me%%a!eect&r m i% enc&(e( )y
• m ⇒ c + m/3
•then the relati&n )et'een c&rre%p&n(in! p&lyn&mial% i%• c" # + r m" # 4 ? r m" # m&( !" #.
•[n thi% )a%i% &ne can c&n%truct the f&ll&'in! %hift4re!i%ter enc&(er f&r the ca%e &f a%y%tematic repre%entati&n &f the !enerat&r f&r a cyclic c&(e:•Shift4re!i%ter enc&(er f&r %y%tematic repre%entati&n &f cyclic c&(e%. S'itch A i% cl&%e( f&rfir%t k tic-% an( cl&%e( f&r la%t r tic-%U %'itch B i% (&'n f&r fir%t k tic-% an( up f&r la%t r tic-%.
9ammin!9ammin! codescodes asas cycliccyclic codescodes
Z05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
124/769
EE576 Dr. Kousa Linear Block Codes 12>C+clic codes
•Definiti&n "A!ain_# 8et r )e a p&%itie inte!er an( let ! )e an r 9 "/r 41#matrix 'h&%e c&lumn% are (i%tinct n&n4er& ect&r% &f 7 "r 3 #. Then the
c&(e hain! ! a% it% parity4chec- matrix i% calle( )inary 9ammin!code (en&te( )y !am "r 3 #.
•It can )e %h&'n that )inary 7ammin! c&(e% are equialent t& cyclicc&(e%.
The&rem The )inary 7ammin! c&(e !am "r 3 # i% equialent t& a cyclic c&(e.
Definiti&n If p" # i% an irre(uci)le p&lyn&mial &f (e!ree r %uch that i% a primitie element&f the fiel( % ? , p" #3 then p" # i% calle( a primitie p&lyn&mial.
The&rem If p" # i% a primitie p&lyn&mial &er % " # &f (e!ree r 3 then the cyclic c&(e〈p" #〉 i% the c&(e !am "r 3 #.
Z05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
125/769
EE576 Dr. Kousa Linear Block Codes 125C+clic codes
9ammin!9ammin! codescodes asas cycliccyclic codescodes
•Examle N&lyn&mial * 1 i% irre(uci)le &er % " # an( i%primitie element &f the fiel( % /? , " * 1#.
•% /? , " * 1# +
•H03 3 /3 * + 13 ; + / 3 6 + / 13 + / 1•The parity4chec- matrix f&r a cyclic er%i&n &f !am "3 #
=
1110100
0111010
1101001
#
+R'+R' o" o" T9EREMT9EREMTh )i 7 i ( ! " # i i l t t li (
Z05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
126/769
EE576 Dr. Kousa Linear Block Codes 126C+clic codes
•The )inary 7ammin! c&(e !am "r 3 # i% equialent t& a cyclic c&(e.•It i% -n&'n fr&m al!e)ra that if p" # i% an irre(uci)le p&lyn&mial &f (e!ree r 3 then the rin! % /? , p" # i% a fiel( &f&r(er /r .•In a((iti&n3 eery finite fiel( ha% a primitie element. Theref&re3 there exi%t% an element α &f % /? , p" # %uch that
• % /? , p" # + H03 13 α3 α/33 α/r $/.
•8et u% i(entify an element a0 a1 ar 41 r 41 &f % /? , p" # 'ith the c&lumn ect&r • "a03 a133 ar 41#T
•an( c&n%i(er the )inary r ] "/r 41# matrix• ! + ? 1 α α/ α/`r $/ .
•8et n&' C )e the )inary linear c&(e hain! ! a% a parity chec- matrix.•Since the c&lumn% &f ! are all (i%tinct n&n4er& ect&r% &f 7 "r 3 #3 C + !am "r 3 #.•Nuttin! n + /r 41 'e !et• C + Hf 0 f 1 f n 41 ∈ 7 "n3 # Y f 0 f 1 α f n 41 αn $1 + 0 "/#• + Hf" # ∈ ) n Y f"α# + 0 in % /? , p" # "*#
•If f" #∈
C an( r" #∈
) n3 then r" #f" #∈
C )ecau%e• r"α#f"α# + r"α# • 0 + 0
•an( theref&re3 )y &ne &f the prei&u% the&rem%3 thi% er%i&n &f !am "r 3 # i% cyclic.
#C9#C9 codescodes andand Reed6SolomonReed6Solomon codescodesZ05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
127/769
EE576 Dr. Kousa Linear Block Codes 127C+clic codes
•T& the m&%t imp&rtant cyclic c&(e% f&r applicati&n% )el&n! BC7 c&(e% an(
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
128/769
EE576 Dr. Kousa Linear Block Codes 12C+clic codes
• 'e( )*+e + ! /)++ +) e)e *+e !+e ) !eve !+e! )* + 4 !(
5+!.• Con/olution codes4 ) con/olution code CC>
:1418 221 +++= - - -,
++=
-
- -,
1
1
0
0
12
E2C[DI2> &f FI2ITE N[8\2[IA8SZ05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
129/769
EE576 Dr. Kousa Linear Block Codes 12;C+clic codes
• An "n3-# c&n&luti&n c&(e 'ith a - x n !enerat&r matrix > can )e u%( t& enc&(e
a• -4tuple &f plain4p&lyn&mial% "p&lyn&mial input inf&rmati&n#
• =2 0 238 12.38>8 k-1233
• t& !et an n4tuple &f crypt&4p&lyn&mial%
• C+"C0"x#3 C1"x#33Cn41"x##
• A% f&ll&'%
• C+ I . >
EZAN8ES
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
130/769
EE576 Dr. Kousa Linear Block Codes 10C+clic codes
EZAN8ES
• EZAN8E 1
• "x* x 1#.>1 + "x* x 1# . "x/ 13 x/ x 1
• + "x6 x/ x 13 x6 x; 1#
• EZAN8E /
+++=++
-
- - - -, - - -
1
1
0
0
1(.14'(.14'
2
2
2
E2C[DI2> &f I2FI2ITE I2N=T ST
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
131/769
EE576 Dr. Kousa Linear Block Codes 11C+clic codes
• The B 7) %(x)
• and
• C7(x) 5 C7@ B C77x B A 5 (x> B x B 7) %(x).
• The "irst multilication can 8e done 8y the "irst shi"t re!ister "rom the next
• "i!ure second multilication can 8e er"ormed 8y the second shi"t re!ister
• on the next slide and it holds
• C@i 5 / i - / i-2 , C )i 7 / i - / i() - / i(2 8• 9hat is the output streams C 0 and C ) are o$tained $# con6ol6ing the input
• stream 5ith pol#nomials o% 1 ):
E2C[DI2>
Z05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
132/769
EE576 Dr. Kousa Linear Block Codes 12C+clic codes
The fir%t %hift re!i%ter The fir%t %hift re!i%ter ⊕⊕
1 x x1 x x//
inputinput
&utput&utput
'ill multiply the input %tream )y x'ill multiply the input %tream )y x//1 an( the1 an( the %ec&n( %hift re!i%ter %ec&n( %hift re!i%ter
⊕⊕
1 x x1 x x//
inputinput
&utput&utput
'ill multiply the input %tream )y'ill multiply the input %tream )y ??14??14
E2C[DI2> an( DEC[DI2>
Z05>
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
133/769
EE576 Dr. Kousa Linear Block Codes 1C+clic codes
⊕⊕
1 x x1 x x// II
CC00003C3C01013C3C0/0/
⊕⊕ CC10103C3C11113C3C1/1/
[utput %tream%[utput %tream%
The f&ll&'in! %hift4re!i%ter 'ill theref&re )e an enc&(er f&r theThe f&ll&'in! %hift4re!i%ter 'ill theref&re )e an enc&(er f&r thec&(e CCc&(e CC11
F&r enc&(in! &f c&n&luti&n c&(e% %& calle(F&r enc&(in! &f c&n&luti&n c&(e% %& calle(
Qiter)i al!&rithmQiter)i al!&rithm
I% u%e(.I% u%e(.
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
134/769
EE576 Dr. Kousa Linear Block Codes 1>
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
135/769
EE576 Dr. Kousa Linear Block Codes 15
E
?1 N&lyn&mial% an( '&r(%
?/ Intr&(ucti&n t& cyclic c&(e%
?* >eneratin! an( parity chec- matrice% f&r cyclic c&(e%
?; Fin(in! cyclic c&(e% ?6 Dual cyclic c&(e%
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
136/769
EE576 Dr. Kousa Linear Block Codes 16
y• ?1 N&lyn&mial% an( '&r(%
$ 1. N&lyn&mial &f (e!ree n &er
$ /. E! ;.1.1
= + + + + +
∈ =
2 3
0 1 2 3
0
[ ] { .... }
,...., , deg( ( ))
n
n
n
K x a a x a x a x a x
a a K f x n
= + + + = + + = + +
+ = + +
+ = + += + + + + + + + + +
+ + = +
3 4 2 3 2 4
2 4
2 3
2 3 2 3 3 2 3
4 2 3 7
Let ( ) 1 ( ) ( ) 1 then
( ) ( ) ( ) 1
( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( )
( )
f x x x x g x x x x h x x x
a f x g x x x
b f x h x x x x
c f x g x x x x x x x x x x x x
x x x x x x
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
137/769
EE576 Dr. Kousa Linear Block Codes 17
y
$ *. ?Al!&rithm ;.1.KDii%i&n al!&rithm
$ ;. E!. ;.1.
≠
= +
= <
Let ( ) and ( ) be in [ ] with ( ) 0. Then there exist
ni!e "#$%n#&ia$ ( ) and ( ) in [ ] s'h that
( ) ( ) ( ) ( ),
with ( ) 0 #r deg( ( )) deg( ( ))
f x h x K x h x
q x r x K x
f x q x h x r x
r x r x h x
= + + + = + + +
= + = + +
= + + + +< =
2 2 4
3 4 2 3
3 4 2 3
( ) , ( ) 1
( ) , ( )
( ) ( )( ) ( )
deg( ( )) deg( ( )) 4
f x x x x x h x x x x
q x x x r x x x x
f X h x x x x x x
r x h x
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
138/769
EE576 Dr. Kousa Linear Block Codes 1
$ 6. C&(e repre%ente( )y a %et &f p&lyn&mial%• A c&(e C &f len!th n can )e repre%ente( a% a %et &f p&lyn&mial% &er &f
(e!ree at m&%t n41
$
$
$ . E.! ;.1.1/
−−= + + + +
2 10 1 2 1( ) .... #*er +
nnf x a a x a x a x
−= n0 1 2 1... # $ength n in + nc a a a a
C&(e'&r( c N&lyn&mial c"x#
0000101001011111
1x/
xx*
1xx/x*
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
139/769
EE576 Dr. Kousa Linear Block Codes 1;
$ @. f"x# an( p"x# are e6uialent modulo h"x#
$ K.E! ;.1.16
$ . E! ;.1.1
= =≡
( ) d ( ) ( ) ( ) d ( )
. ( ) ( )(d ( ))
f x h x r x p x h x
ie f x p x h x
= + + + = + = += = + =
4 - 11
( ) 1 , ( ) 1 , ( ) 1 ( )d ( ) ( ) 1 ( )d ( )
/(x) and "(x) are e!i*a$ent d h(x)
f x x x x h x x p x x f x h x r x x p x h x
= + + + + = + + = += + = +
2 - 11 2 2
4 3( ) 1 , ( ) 1 , ( )
( )d ( ) , ( )d ( ) 1
/(x) and "(x) are T e!i*a$ent d h(x)
f x x x x x h x x x p x x x f x h x x x p x h x x
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
140/769
EE576 Dr. Kousa Linear Block Codes 1>0
$ 10. 8emma ;.1.1@
$ 11. E!. ;.1.1K
≡+ ≡ +
≡
( ) ( )(d ( )), then
( ) ( ) ( ) ( )(d ( ))
and
( ) ( ) ( ) ( )(d ( ))
f x g x h x
f x p x g x p x h x
f x p x g x p x h x
= + + = + + = + = +≡
+ ++ + + + = = + + + +
+ + + = + =
7 2
7 2 2
7 3
( ) 1 , ( ) 1 , ( ) 1 , ( ) 1
s# ( ) ( )(d ( )), then
( ) ( ) and ( ) ( ) 5((1 ) (1 ))d ( ) ((1 ) (1 ))d ( )
( ) ( ) and ( ) ( ) 5
((1 )(1 ))d ( ) 1 ((1
f x x x g x x x h x x p x x
f x g x h x
f x p x g x p x x x x h x x x x x h x
f x p x g x p x
x x x h x x + + +2 )(1 ))d ( ) x x x h x
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
141/769
EE576 Dr. Kousa Linear Block Codes 1>1
• ?/Intr&(ucti&n t& cyclic c&(e%
6 1. '%'$i' shit (*)
• Q: 0101103 : 001011
6 2.'%'$i' '#de
• A c&(e C i% cyclic c&(e"&r linear cyclic c&(e# if "1#the cyclic %hift &f eachc&(e'&r( i% al%& a c&(e'&r( an( "/# C i% a linear c&(e
• C1+"0003 1103 1013 011 i% a cyclic c&(e
• C/+H0003 1003 0113 111 i% 2[T a cyclic c&(e $ Q+1003 +010 i% n&t in C/
π ( )v
10110 111000 0000 1011π ( )v 01011 011100 0000 1101
π ( )v
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
142/769
EE576 Dr. Kousa Linear Block Codes 1>2
$ *. Cyclic %hifti% a linear tran%f&rmati&n
•
• S+H3 "#3 /"#3 3 n41"#3 an( C+XSW3
then i% a !enerat&r &f the linear cyclic c&(e C
π π π
π π
π
+ = += ∈ =
∈
Le&&a 4.2.3 ( ) ( ) ( ),
and ( ) ( ), {0,1}
Ths t# sh#w a $inear '#de 8 is '%'$i'
it is en#gh t# sh#w that ( ) 8
#r ea'h w#rd in a basis #r 8
v w v w
av a v a K
v
v
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
143/769
EE576 Dr. Kousa Linear Block Codes 1>
$ ;. Cyclic C&(e in term% &f p&lyn&mialπ => =>( ), ( ) ( )v v v x xv x
= + +
3
7
2 4
2
9g 4.2.11 */1101000, n/7, *(x)/1:x:x
w#rd "#$%ni&ia$(d 1:x )
;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0110100 ( )
0011010 x (
xv x x x x
v = + +
= + +
= + + ≡ + + += + + ≡ + + +
= + + ≡ +
2 3 4
3 3 4
4 4 7 4 7
7
7 -
)
0001101 x ( )
1000110 x ( ) 1 d(1 )
0100011 x ( ) d(1 )
1010001 x ( ) 1
x x x x
v x x x x
v x x x x x x x
v x x x x x x x x
v x x x x + +2 7d(1 ) x x x
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
144/769
EE576 Dr. Kousa Linear Block Codes 1>>
$ 6. 8emma ;./.1/8et C )e a cyclic c&(e let in C. Then f&r any p&lyn&mial a"x#3c"x#+a"x#"x#m&("1xn# i% a c&(e'&r( in C
$ . The&rem ;./.1*C: a cyclic c&(e &f len!th n3!"x#: the !enerat&r p&lyn&mial3 'hich i% the unique n&ner&
p&lyn&mial &f minimum (e!ree in C.
(e!ree"!"x## : n4-3
• 1. C has dimension k• 2. g(x), xg(x), x2g(x), …., xk-1g(x) are a basis for C• 3. f c(x) in C, c(x)!a(x)g(x) for some "olynomial a(x)
#i$h degree(a(x))%k
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
145/769
EE576 Dr. Kousa Linear Block Codes 1>5
$ @. E! ;./.1
the %malle%t linear cyclic c&(e C &f len!th c&ntainin! !"x#+1x * X4W 100100 i%
H0000003 1001003 0100103 0010013 11011031011013 0110113 111111
$ K. The&rem ;./.1@
!"x# i% the !enerat&r p&lyn&mial f&r a linear cyclic c&(e &f len!th n if &nly if !"x# (ii(e% 1xn
"%& 1xn +!"x#h"x##.
$ . C&r&llary ;./.1K
The !enerat&r p&lyn&mial !"x# f&r the %malle%t cyclic c&(e &f len!th n c&ntainin!the '&r( "p&lyn&mial "x## i% !"x#+!c(""x#3 1xn#
$ 10. E! ;./.1
n+K3 +11011000 %& "x#+1xx*x;
!"x#+!c("1xx*x; 3 1xK#+1x/
Thu% !"x#+1x/ i% the %malle%t cyclic linear c&(e c&ntainin!
"x#3 'hich ha% (imen%i&n &f .
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
146/769
EE576 Dr. Kousa Linear Block Codes 1>6
• ?*. >eneratin! an( parity chec- matrice% f&r cyclic c&(e $ 1. Effectie t& fin( a !eneratin! matrix
• The %imple%t !enerat&r matrice% "The&rem ;./.1*#
=
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
147/769
EE576 Dr. Kousa Linear Block Codes 1>7
/. E! ;.*./• C: the linear cyclic c&(e% &f len!th n+@ 'ith !enerat&r p&lyn&mial
!"x#+1xx*3 an( (e!"!"x##+*3 +W - + ;
= + +
= + +
= + +
= + +
3
2 4
2 2 3
3 3 4
( ) 1
( )
( )
( )
g x x x
xg x x x x
x g x x x x
x g x x x x
1101000
0110100=/
0011010
0001101
==>
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
148/769
EE576 Dr. Kousa Linear Block Codes 1>
*. Efficient enc&(in! f&r cyclic c&(e%
(a/c'codelinear$enerala
of t"at%it"co#aredefficienttieore
'('('( )al$orit"Encodin$
((444'essa$esourcen$re#resenti'
(' #ol+noialessa$e
k(.-nde$ree"as$'( #ol+noial$eneratort"e'so
kdiensionandnlen$t"of codec+clica beCLet
110
1110
=
=
+++=−
−−
! ac
aaa
a aa a
k
k k
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
149/769
EE576 Dr. Kousa Linear Block Codes 1>;
$ ;. Narity chec- matrix
• 7 : '7+0 if &nly if ' i% a c&(e'&r(
• Sym(r&me p&lyn&mial %"x#
$ c"x#: a c&(e'&r(3 e"x#:err&r p&lyn&mial3 an( '"x#+c"x#e"x#
$ %"x# + '"x# m&( !"x# + e"x# m&( !"x#3 )ecau%e c"x#+a"x#!"x#
$ 7: i4th r&' r i i% the '&r( &f len!th n4-
+W r i"x#+xi m&( !"x#
$ '7 + "ce#7 +W c"x# m&( !"x# e"x# m&( !"x# + %"x#
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
150/769
EE576 Dr. Kousa Linear Block Codes 150
$ 6. E! ;.*.@
• n+@3 !"x#+1xx*3 n4- + *
= == =
= =
= = +
= = +
= = + += = +
0
1
2 22
33
4 24
2
2
( ) 1d ( ) 1
( ) d ( )
( ) d ( )
( ) d ( ) 1
( ) d ( )
( ) d ( ) 1
( ) d ( ) 1
r x g x
r x x g x x
r x x g x x
r x x g x x
r x x g x x x
r x x g x x x
r x x g x x
< −− >< −− >< −− >< −− >< −− >
< −− >< −− >
100 010
001
110
011
111
101
==>
=
100
010
001
110
011
111101
H
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
151/769
EE576 Dr. Kousa Linear Block Codes 151
• ?;. Fin(in! cyclic c&(e% $ 1. T& c&n%truct a linear cyclic c&(e &f len!th n
• Fin( a fact&r !"x# &f 1xn3 (e!"!"x## + n4-
• Irre(uci)le p&lyn&mial%
$ f"x# in ?x3 (e!"f"x## W+ 1 $ There are n& a"x#3 )"x# %uch that f"x#+a"x#)"x#3
(e!"a"x##W+13 (e!")"x##W+1
• F&r n X+ *13 the fact&riati&n &f 1xn
"%ee Appen(ix B#• Impr&per cyclic c&(e%: n an( H0
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
152/769
EE576 Dr. Kousa Linear Block Codes 152
$ /. The&rem ;.;.*
$ *. C&r& ;.;.;
= +r n 2i n/2 then 1:x (1 ) r ss x
n.len$t"of codesc+clic
linear #ro#er2(1'2 aret"ere*"en
s. #ol+noialeirreduciblof #roductt"e
be1letandoddiss%"ere42Let
r −+
+=
sr sn
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
153/769
EE576 Dr. Kousa Linear Block Codes 15
$ ;. I(emp&tent p&lyn&mial% I"x#
• I"x# + I"x#/ m&( "1xn# f&r &(( n
• Fin( a ^)a%icb %et &f I"x#
Ci+ H %+/ O i "m&( n# Y O+03 13 3 r
'here 1 + /r m&( n
== ∈∑
i0( ) ( ), a {0,1}
k
i iiI x a c x
∑=∈ iC &
&
i c (' %"ere
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
154/769
EE576 Dr. Kousa Linear Block Codes 15>
$ 6. E! ;.;.1/
$ . The&rem ;.;.1*Every cyclic code contains a unique idempotent
polynomial which generates the code.(?)
= = =
= = = + +
= = + +
==> + + ∈
≠
0
0 0
1 2 4
1 2 4 1
3 .
3 . 7 2
0 0 1 1 3 3 i
>#r n/7,
8 {0}, s# ' ( ) 1
8 {1, 2, 4} / 8 8 , s# ' ( )
8 {3, ., } / 8 / 8 , s# ' ( )
(x)/a ' ( ) a ' ( ) a ' ( ), a {0,1},
(x) 0
x x
x x x x
x x x x
x x x
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
155/769
EE576 Dr. Kousa Linear Block Codes 155
$ @. E!. ;.;.1; fin( all cyclic c&(e% &f len!th
= = =
==> = = + + + + + = +
+ +
0 1 3
2 4 7 3 0 1 3
0 0 1 1 3 3
8 {0}, 8 {1,2,4,,7,}, 8 {3,}
' ( ) 1, ' ( ) , ' ( )
// (x)/a ' ( ) a ' ( ) a ' ( )
x x x x x x x x x x x
x x x
The !enerat&rp&lyn&mial
!"x#+!c("I"x#3 1x#
I(emp&tent p&lyn&mialI"x#
11xx*x;xx@
1x*
1xx/
:
1xx/x;x6x@xK
x*x
1xx/x;x6x@xK
:
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
156/769
EE576 Dr. Kousa Linear Block Codes 156
Cyclic Linear Codes
• ?6.Dual cyclic c&(e% $ 1. The (ual c&(e &f a cyclic c&(e i% al%& cyclic
$ /. 8emma ;.6.1
a > a(x), b > b(x) and b’ > b’(x)xnb(x!") mod "#xn
then
a"x#)"x# m&( 1xn + 0 iff -"a#. )5+0
f&r -+0313n41
$ *. The&rem ;.6./
C: a linear c&(e3 len!th n3 (imen%i&n - 'ith !enerat&r !"x#
If 1xn + !"x#h"x# then
C?: a linear c&(e 3 (imen%i&n n4- 'ith !enerat&r x-h"x41#
Cyclic Linear Codes
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
157/769
EE576 Dr. Kousa Linear Block Codes 157
Cyclic Linear Codes
$ ;. E!. ;.6.*!"x#+1xx*3 n+@3 -+@4*+;
h"x#+1xx/x;
h"x#!enerat&r f&r C ? i%
! ? "x#+x;h"x41#+x;"1x41x4/x4; #+1x/x*x;
$ 6. E!. ;.6.;!"x#+1xx/3 n+3 -+4/+;
h"x#+1xx*x;
h"x#!enerat&r f&r C ? i% ! ? "x#+x;h"x41#+1xx*x;
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
158/769
EE576 Dr. Kousa Linear Block Codes 15
&(ulati&n3 Dem&(ulati&n an(C&(in! C&ur%e
Neri&( * 4 /006
S&r&ur Falahati
8ecture K
8a%t time 'e tal-e( a)&ut:
-
8/17/2019 54676499-DC-Error-Correcting-Codes.ppt
159/769
EE576 Dr. Kousa Linear Block Codes 15;Lecture
8#herent and n#n;'#herent dete'ti#ns
9*a$ating the a*erage "r#babi$it% # s%&b#$ err#r #r di@erentband"ass d$ati#n s'he&es
8#&"aring di@erent d$ati#n s'he&es based #n their err#r
"er#r&an'es.
T&(ay3 'e are !&in! t& tal- a)&ut:
-
8/17/2019 54676499-DC-E