Module-3.1 Error Detection and Correction
Module-3.1 Error Detection and Correction
Module-3.1 Error Detection and Correction
Type of Errors
Single-Bit
~ is when only one bit in the data unit has changed.
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.
Burst Error
In Burst errors, 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 100 sec can affect 10
bits.(1/100*1000)
If same data is sent at rate = 1Mbps then a noise of 100 sec can affect
10,000 bits.(1/100*106)
Error Detection
• 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.
Error Detection Methods
Vertical Redundancy Check (VRC)
– A parity bit is added to every data unit so that the total number of
1s (including the parity bit) becomes even for even-parity check or
odd for odd-parity check
– Simple parity check
Parity Calculation
Assuming even parity, find the parity bit for each of the
following data units.
a. 1001011
b. 0001100
c. 1000000
d. 1110111
Assuming odd parity, find the parity bit for each of the following data
units.
a. 1001011
b. 0001100
c. 1000000
d. 1110111
Example
Performance
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 will not detect an error.
CRC (Cyclic Redundancy Check)
~ is based on binary division.
(cont’d)
• Polynomials
– CRC generator(divisor) is most often represented not as a string of 1s and 0s,
but as an algebraic polynomial.
Binary Division
in a
CRC Generator
Receiver Calculation
Binary Division
in a
CRC Checker
Checksum @ Sender Side by binary arithmetic
• Each redundancy parity bit is the VRC bit for one combination
of data bits
r1 = bits @ 1, 3, 5, 7, 9, 11
r2 = bits @ 2, 3, 6, 7, 10, 11
r4 = bits @ 4, 5, 6, 7
r8 = bits @ 8, 9, 10, 11
Example –Sender side Calculation