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

Error Detection and Correction

This document discusses various types of errors that can occur during data transmission and methods for detecting and correcting errors. It describes single-bit errors, multiple bit errors, and burst errors. Error detection techniques discussed include parity checking, longitudinal redundancy check (LRC), and cyclic redundancy check (CRC). CRC generates a checksum by dividing the data by a fixed polynomial to detect errors. Error correction techniques allow the receiver to determine the bit in error and reverse its value to correct it, such as with Hamming codes.

Uploaded by

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

Error Detection and Correction

This document discusses various types of errors that can occur during data transmission and methods for detecting and correcting errors. It describes single-bit errors, multiple bit errors, and burst errors. Error detection techniques discussed include parity checking, longitudinal redundancy check (LRC), and cyclic redundancy check (CRC). CRC generates a checksum by dividing the data by a fixed polynomial to detect errors. Error correction techniques allow the receiver to determine the bit in error and reverse its value to correct it, such as with Hamming codes.

Uploaded by

Sakawa Bob
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 41

 Types of Errors

 Error Detection
 Error Correction
Basic concepts
 It is expected that -Networks must be able to
transfer data from one device to another with
complete accuracy.
 Data can be corrupted during transmission.
 For reliable communication, errors must be
detected and corrected.
 Error detection and correction are
implemented either at the data link layer or the
transport layer of the OSI model.
Basic concepts

Types of Errors
Single-bit error
The change in one bit in the whole
data sequence , is called “Single bit
error”
Single-bit error

Single bit errors are the least likely type of


errors in serial data transmission because
the noise must have a very short duration
which is very rare. However this kind of
errors can happen in parallel transmission.
Example:
 If data is sent at 1Mbps then each bit lasts
only 1/1,000,000 sec. or 1 μs.
 For a single-bit error to occur, the noise
must have a duration of only 1 μs, which is
very rare.
Multiple Bit Data Errors
If there is change in two or more bits of data sequence of
transmitter to receiver, ~ Multiple bit error. occurs in both
serial type and parallel type data communication
networks.
Burst error
change of set of bits in data sequence is called Burst
error. The burst error is calculated in from the first
bit change to last bit change.
Two More Examples of Burst error
Burst error

The term burst error means that two or


more bits in the data unit have changed
from 1 to 0 or from 0 to 1.

Burst errors does not necessarily mean


that the errors occur in consecutive bits,
the length of the burst is measured from
the first corrupted bit to the last corrupted
bit. Some bits in between may not have
been corrupted.
 Burst error is most likely to happen in serial
transmission since the duration of noise is
normally longer than the duration of a bit.
 The number of bits affected depends on the
data rate and duration of noise.
Example:
 If data is sent at rate = 1Kbps then a noise of
1/100 sec can affect 10 bits.(1/100*1000)
 If same data is sent at rate = 1Mbps then a
noise of 1/100 sec can affect 10,000
bits.(1/100*106)
Error detection means to decide whether the
received data is correct or not without having a
copy of the original message.

Error detection uses the concept of redundancy,


which means adding extra bits for detecting
errors at the destination.
 Parity Checking (VRC)
 Longitudinal Redundancy Check (LRC)
 Cyclic Redundancy Check (CRC)
 Check Sum
Redundancy concept
1.Vertical Redundancy Check
VRC – parity Check
Vertical Redundancy Check
VRC – parity Check
Two types of parity bits in error detection,
• Even parity
• Odd parity
Even Parity
Data has even number of 1’s, the parity bit is 0. Ex: data is
10000001 -> parity bit 0
Odd number of 1’s, the parity bit is 1. Example: data is 10010001 -
> parity bit 1
Odd Parity
Data has odd number of 1’s, the parity bit is 0. Example: data is
10011101 -> parity bit 0
Even number of 1’s, the parity bit is 1. Example : data is 10010101
-> parity bit 1
It can detect single bit error
It can detect burst errors only if the total
number of errors is odd.
2.Longitudinal Redundancy Check
LRC
Steps are as follows
• BLOCK of bits are arranged in a table format (in rows and
columns)
• Then calculate the parity bit for each column separately.
• Send the set of these parity bits along with our original
data bits.
• LRC does bit by bit parity computation and calculate the
parity in each column individually
2.Longitudinal Redundancy Check
LRC
Performance of LRC

LCR increases the likelihood of detecting


burst errors.
If two bits in one data units are damaged
and two bits in exactly the same positions in
another data unit are also damaged, the LRC
checker will not detect an error.(it fails to
detect the 2 bit errors occurred in same
vertical slice.)
VRC and LRC
3. Cyclic Redundancy Check
CRC
 Given a k-bit frame or message, the
transmitter generates an n-bit sequence,
known as a frame check sequence (FCS),
so that the resulting frame, consisting of
(k+n) bits, is exactly divisible by some
predetermined number.
 The receiver then divides the incoming
frame by the same number and, if there is
no remainder, assumes that there was no
error.
Binary Division
Polynomial
Polynomial and Divisor
Standard Polynomials
Checksum
 The unit is divided into k sections, each of n
bits.
 All sections are added together using one’s
complement to get the sum.
 The sum is complemented and becomes the
checksum.
 The checksum is sent with the data
 The unit is divided into k sections, each of n
bits.
 All sections are added together using one’s
complement to get the sum.
 The sum is complemented.
 If the result is zero, the data are accepted:
otherwise, they are rejected.
The checksum detects all errors involving an
odd number of bits.
It detects most errors involving an even
number of bits.
If one or more bits of a segment are damaged
and the corresponding bit or bits of opposite
value in a second segment are also damaged,
the sums of those columns will not change
and the receiver will not detect a problem.
It can be handled in two ways:
1) receiver can have the sender retransmit the
entire data unit.
2) The receiver can use an error-correcting
code, which automatically corrects certain
errors.
 Single bit error correction
 Burst error correction
To correct an error, the receiver reverses
the value of the altered bit. To do so, it
must know which bit is in error.
Number of redundancy bits needed
 Let data bits = m
 Redundancy bits = r

Total message sent = m+r


The value of r must satisfy the following
relation:
2r ≥ m+r+1
Error Correction
Hamming Code
Hamming Code
Hamming Code
Example of Hamming Code
Single-bit error
Error
Detection

You might also like