0% found this document useful (0 votes)
25 views

ITC - Mod 5 - Ktunotes - in

The document discusses various cyclic codes including Hamming codes, BCH codes, and CRC codes. It provides details on the definitions and properties of cyclic codes, including that they are linear block codes where any cyclic shift of a codeword is also a codeword. It also describes encoding and decoding of cyclic codes using polynomial representations and discusses specific cyclic code constructions like BCH codes and common CRC codes.

Uploaded by

Alfin Tom
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views

ITC - Mod 5 - Ktunotes - in

The document discusses various cyclic codes including Hamming codes, BCH codes, and CRC codes. It provides details on the definitions and properties of cyclic codes, including that they are linear block codes where any cyclic shift of a codeword is also a codeword. It also describes encoding and decoding of cyclic codes using polynomial representations and discusses specific cyclic code constructions like BCH codes and common CRC codes.

Uploaded by

Alfin Tom
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 49

CYCLIC CODES

2 jj 10/25/2018
3 jj 10/25/2018
Perfect codes, Hamming codes, encoding
and decoding
Cyclic codes, polynomial and matrix
descriptions,
generation of cyclic codes, decoding of
cyclic codes
BCH codes, Construction and decoding,
Reed Solomon codes

4 jj 10/25/2018
Perfect codes & Hamming Bound

5 jj 10/25/2018
Perfect codes & Hamming Bound

6 jj 10/25/2018
Perfect codes & Hamming Bound

7 jj 10/25/2018
Perfect codes & Hamming Bound

8 jj 10/25/2018
Hamming Codes
Hamming codes constitute a class of
single-error correcting linear block
codes (n,k) defined as:
n = 2m-1, k = n-m, m>2
The minimum distance of the code dmin = 3
Hamming codes are perfect codes.
Example : m = 3, yielding the (7, 4)
Hamming code with n = 7 and k = 4.

9 jj 10/25/2018
Hamming Codes

10 jj 10/25/2018
Hamming Codes

11 jj 10/25/2018
Hamming Codes

12 jj 10/25/2018
Hamming Codes

13 jj 10/25/2018
Motivation & Properties of cyclic
code
Cyclic code is a linear code that any cyclic
shift of a codeword is still a codeword.
Makes encoding/decoding much simpler, no
need of matrix multiplication.

14 jj 10/25/2018
Cyclic codes
An (n,k) linear code C is cyclic if every
cyclic shift of a codeword in C is also a
codeword in C.
If c0 c1 c2 …. cn-2 cn-1 is a codeword, then
cn-1 c0 c1 …. cn-3 cn-2
cn-2 cn-1 c0 …. cn-4 cn-3
: : : : :
c1 c2 c3 …. cn-1 c0 are all codewords.

15 jj 10/25/2018
Definition

16 jj 10/25/2018
Example: (6,2) repetition code

C    000000,  010101, 101010, 111111  


is a cyclic code.

jj 10/25/2018
Example2: (5,2) linear block code
 1 0 1 1 1
G 
 0 1 1 0 1 
is a single error correcting code, the set of
codeword are:
 0 0 0 0 0 Thus, it is not a cyclic
 1 0 1 1 1 code since, for example,
C  the cyclic shift of
 0 1 1 0 1
  [10111]C is [11011]
 1 1 0 1 0
jj 10/25/2018
Example 3
The (7,4) Hamming code discussed before
is cyclic:

1010001 111001000000001111111
1101000 0111001
0110100 1011100
0011010 0101110
0001101 0010111
1000110 1001011
0100011 1100101

19 jj 10/25/2018
Generator matrix of a non-systematic
(n,k) cyclic codes
The generator matrix will be in this form:

 g0 g1  gnk 1 gnk 0 0  0 
 0 g0 g1  gnk 1 gnk 0  0 
 
G 0 0 g0 g1  gnk 1 gnk 0 0 
 
  
 0 0 0  0 g0  gnk 1 gnk 
r n

notice that the row are merely cyclic shifts of


the 
g  g0g1  gnk 1gnk 00  0 
basis
jj vector 10/25/2018
Cyclic codes

jj 10/25/2018
Cyclic codes

jj 10/25/2018
Cyclic codes

jj 10/25/2018
Cyclic codes

jj 10/25/2018
Cyclic codes

jj 10/25/2018
Cyclic codes

jj 10/25/2018
Cyclic codes

jj 10/25/2018
Cyclic codes

jj 10/25/2018
Cyclic codes

jj 10/25/2018
Cyclic codes

jj 10/25/2018
Cyclic codes

jj 10/25/2018
Systematic Form of Generator Matrix

jj 10/25/2018
Cyclic codes

jj 10/25/2018
jj 10/25/2018
jj 10/25/2018
Encoder for Cyclic codes

jj 10/25/2018
Encoder for Cyclic codes

jj 10/25/2018
Encoder for Cyclic codes

jj 10/25/2018
Cyclic codes

jj 10/25/2018
Syndrome Decoding for Cyclic codes

jj 10/25/2018
Syndrome Decoding for Cyclic codes

jj 10/25/2018
jj 10/25/2018
Cyclic Codes
Some Standard Cyclic BCH Codes
Block Codes Linear
Hamming
Codes
Codes

The Hamming Codes: single-error correcting


codes which can be expressed in cyclic form.
BCH: the Bose-Chaudhuri-Hocquenghem are
among the most important of all cyclic block codes.
Extenstion of Hamming for t-error correcting codes.
Some Burst-Correcting Codes: good burst-
correcting codes have been found mainly by
computer search.
Cyclic Redundancy Check Codes: shortened
cyclic error-detecting codes used in automatic
jj
repeat request (ARQ) systems.
43 10/25/2018
BCH Codes
Definition of the codes:
For any positive integers m (m>2) and t0 (t0
< n/2), there is a BCH binary code of length
n = 2m - 1 which corrects all combinations
of t0 or fewer errors and has no more than
mt0 parity-check bits.
Block length 2m  1
Number of parity - check bits n  k  mt 0
min imum distance d min  2t 0  1

44 jj 10/25/2018
Table of Some BCH Codes

* Octal representation with highest order at the left.


721 is 111 010 001 representing 1+X4+X6+X7+X8

45 jj 10/25/2018
Burst Correcting Codes
good burst-correcting codes have been
found mainly by computer search.
The length of an error burst, b, is the total
number of bits in error from the first error to
the last error, inclusive.
The minimum possible number of parity-
r  2b
check bits required to correct a burst of
length b or less is given by the Rieger
bound.
The best understood codes for correcting
jjburst errors are cyclic codes. 10/25/2018
Table of Good Burst-Correcting
Codes

47 jj 10/25/2018
Cyclic Redundancy Check
Codes
Shortened cyclic codes
Error-detecting codes
used in automatic repeat request (ARQ)
systems.
Usually concatenated with error correcting
codes

CRC CRC
Error Error
To
Syndro To
Encod Correction Correction
Transmitter me Info Sink

er Encoder Decoder
Checke
r

48 jj 10/25/2018
Performance of CRC Codes
 CRC are typically evaluated in terms of their
 error pattern coverage
 Burst error detection capability
 Probability of undetected error
 For a (n,k) CRC the coverage, λ, is the ratio of the number
of invalid blocks of length n to the total number of blocks of
length n.
 This ratio is a measure of the probability that a randomly
chosen block is not a valid code block. By definition,
Code Coverage
  1 2 r
CRC-12
 where r is the number of check bits 0.999756
 For some near-optima CRC codes, CRC-ANSI 0.999985
see table 5.6.5 CRC-32A 0.99999999977
jj 10/25/2018

You might also like