0% found this document useful (0 votes)
10 views38 pages

Information Theory & Coding: Prof. Dhenuka Patel

Uploaded by

p34535694
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views38 pages

Information Theory & Coding: Prof. Dhenuka Patel

Uploaded by

p34535694
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 38

INFORMATION THEORY & CODING

Prof. Dhenuka Patel, Assistant Professor


Department of Information Technology
CHAPTER-6
Cyclic code & Convolution codes
Introduction of Cyclic Codes
Introduction of Cyclic Codes

Advantages:
• The cyclic codes have a very good performance in detecting single-bit errors,
double errors, an odd number of errors, and burst errors.

• They can easily be implemented in hardware and software. They are especially
fast when implemented in hardware.
Types of Errors:
• If the signal is carrying binary encoded data, following changes can alter the
meaning of the data.

• These errors can be divided into two types: Single-bit error and Burst error.
Single bit Error
• The term single-bit error means that only one bit of given data unit (such as a
byte, character, or data unit) is changed from 1 to 0 or from 0 to 1 as shown in
figure.

• Single bit errors are least likely type of errors in serial data transmission.

Image source : Google


Burst Error
Burst Error:
•The term burst error means that two or more bits in the data unit have been
changed from 0 to 1 or vice-versa.
•Note that burst error doesn’t necessary means that error occurs in consecutive
bits. The length of the burst error is measured from the first corrupted bit to the
last corrupted bit.
•Some bits in between may not be corrupted. Single bit errors are least likely type
of errors in serial data transmission.

Image source : Google


BCH Code
• Some Standard Cyclic Block Codes are…

• BCH: The Bose-Chaudhuri-Hocquenghem are among the most important of all


cyclic block codes.
• BCH codes are cyclic Error Correcting Codes that are constructed using
polynomials over data blocks.
• It is a cyclic error correcting code constructed over a finite field or Galois field.
Image source : Google
BCH Code
BCH Code

Always prime number


BCH Code

Image source : Google


BCH Code
BCH Code
BCH Code
BCH Code
BCH code
BCH code
BCH Code
BCH Code
Reed Solomon Codes

• It is one of the oldest error correcting codes that was introduced in 1960s by
Irving S. Reed and Gustave Solomon.

•It is a subclass of BCH codes.

•A RS encoder accepts a block of data and adds redundant bits (parity bits) before
transmitting it over noisy channels.

• On receiving the data, a decoder corrects the error depending upon the code
characteristics.
Reed Solomon Codes
Reed Solomon Codes
Working of Reed Solomon Codes

Image source : tutorialspoint.com


Reed Solomon Codes
Generator Polynomial of Reed Solomon Code:
• For a block codes, valid code words consists of polynomials that are divisible by
another fixed polynomial i.e generator polynomial.
•Message polynomial = P(x)
•The generator polynomial is of the form
g(x) = (x - α) (x - α2) (x - α3) ......(x - α2t)
Where ‘α’ is a primitive element.
Reed Solomon Codes
Encoding using Reed Solomon Code:
• The method of encoding in Reed Solomon code has the following steps:−

• The message is represented as a polynomial P(x), and then multiplied with the
generator polynomial g(x).

• The encoded message is calculated as C(x) = P(x) * g(x).

• The sender sends this encoded message along with the generator polynomial
g(x).
Reed Solomon Codes
Decoding using Reed Solomon Code
• At the receiving end, the following decoding procedure is used:−
• The receiver receives the message r(x) and divides it by the generator
polynomial g(x).
• If r(x)/g(x) = 0, then it implies no error.
• If r(x)/g(x) ≠ 0, then the error polynomial is evaluated using the expression:
r(x) = p(x) * g(x) + e(x)
• The error polynomial gives the error positions.
Reed Solomon Codes
Reed Solomon code
Applications of Reed Solomon Codes
i. Storage devices(CD, DVD, etc.)
ii. Satellite communication
iii. Digital television
iv. QR code
v. Bar code
Cryptography
• Cryptography is a method of protecting information and communications
through the use of codes, so that only those for whom the information is
intended can read and process it.
• The prefix "crypt-" means "hidden“ -- and the suffix "-graphy" stands for
"writing.“
• To create cipher text, mathematical concepts and a set of rule-based
calculations called algorithm are used. So that it becomes hard to decipher the
text.
Cryptography
• However, in today's computer-centric world, cryptography is most often
associated with scrambling plaintext (ordinary text) into cipher text (a process
called encryption), then back again (known as decryption). Individuals who
practice this field are known as Cryptographers.
• These deterministic algorithms are used for cryptographic key generation,
digital signing, verification to protect data privacy, web browsing on the
internet, and confidential communications such as credit card transactions and
email.
Cryptography

Image source : Google


Cryptography
Four objectives of Modern cryptography:
•Confidentiality: The state of keeping secret or private. It means unauthorised or
unintended person should not be able to understand the message.

•Integrity: There should not be any modification of data during transmission.

•Non-repudiation: the creator/sender of the information cannot deny at a later


stage his or her intentions in the creation or transmission of the information.

•Authentication: the sender and receiver can confirm each other's identity and
the origin/destination of the information.
Introduction of Convolution Codes
• It is an alternative to Block code where ‘n’ output at any given time unit depends
on ‘k’ input at that time unit as well as ‘m’ previous input block.

• In block codes, the data comprises of a block of data of a definite length.

• Encoded output depends on present and previous bits i.e unlike block codes,
where the output codeword is dependent only on the present inputs, in
convolutional codes, output stream depends not only the present input bits but
also only previous input bits stored in memory.
• The encoder consists of two parts:-
i. Memory i.e a flip-flop
ii. A logic circuit/function
Introduction of Convolution Codes
Introduction of Convolution Codes
Viterbi decoding Algorithm

•Let us suppose that we have a FSM(finite-state machine) with M states labelled


0,1, …, (M-1), and that each transition between states is accompanied by the
output of a symbol from the alphabet A= {0,1, …, (N-1)}.

•If the output sequence is not corrupted, it is easy to recover the sequence of
states that produced it by matching the symbols in the output string to a
sequence of transitions between states.
Viterbi decoding Algorithm
Example:
Suppose our FSM has four states, and our alphabet is {0,1}. The behaviour of the
FSM is summarised by the following two figures.

Image source : Google


www.paruluniversity.ac.in

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy