ERROR DETECTION
AND
CORRECTION CODES
PREPAIRED BY GROUP W AND GROUP T
GROUP W AND T MEMBERS
NAME REG. NO
EPWONU AARON EMMANUEL 23/U/BET/1946/PE
ZZIWA ROGERS 23/U/BEL/2641/PD
ONZIMA DENNIS 22/U/BET/1958/PE
AKANKWASA PETER 22/U/BEL/1219/PD
ODONKARA RONALD DAVID 22/U/BEL/1884/PD
EWATU EDDY 22/U/BET/1409/PE
YIKO GODFERY 23/U/BEL/2638/PD
KASULE ISAAC 22/U/BET/1490/PE
ASIIMWE JOSEPH 22/U/BET/3789/PE
EKIRU JOEL ERIC 22/U/BET /1393/PE
MUBIWABO INNOCENT. 23/U/BET/2159/PE.
DRILEBA HAWARD. 22/U/BET/1386/PE
OBEA CHARLES LAZARUS 22/U/BET/1860/PE
OLINGA SAMUEL 22/U/BET/3940/PE
ERROR
What is Error?
 Error is a condition when the output information does not match with the input
information. During transmission, digital signals suffer from noise that can
introduce errors in the binary bits travelling from one system to other. That
means a 0 bit may change to 1 or a 1 bit may change to 0.
TYPES OF ERROR
 SINGLE BIT ERROR
 BURST ERROR
SINGLE BIT ERROR
 The only one bit of a given data unit is changed from 1 to 0 or from
0 to 1.
BURST
 The two or more bits are changed from 0 to 1 or from 1 to 0 is known as Burst
Error.
 The Burst Error is determined from the first corrupted bit to the last corrupted
bit.
 The duration of noise in Burst Error is more than the duration of noise in
Single-Bit.
 Burst Errors are most likely to occurr in Serial Data Transmission.
 The number of affected bits depends on the duration of the noise and data
rate.
BURST ERROR
WHAT IS ERROR DETECTION?
This refers to the process of identifying errors in data
without correcting them. This process is essential in
ensuring data integrity, especially in the presence of noise
in various communication systems and storage devices.
PURPOSE OF ERROR DETECTION:
 The primary purpose of error detection is to determine whether
errors have occurred during the transmission or storage of data. By
detecting errors, the receiving system can request retransmission of
the corrupted data or take other corrective actions.
ERROR-DETECTING CODES
 Whenever a message is transmitted, it may get scrambled by noise
or data may get corrupted. To avoid this, we use error-detecting
codes which are additional data added to a given digital message
to help us detect if an error occurred during transmission of the
message. A simple example of error-detecting code is parity
check.
TECHNIQUES OF ERROR DETECTION
There are several techniques for error detection, including parity checks,
checksums, cyclic redundancy checks (CRC), Hash Functions, and
Forward Error Correction (FEC) . These techniques involve adding extra
bits to the data to create a checksum or CRC value. The receiving system
then recalculates the checksum or CRC value based on the received data
and compares it with the received checksum or CRC value to detect errors.
 The most common error detection techniques used in digital communication
and data storage systems include:
PARITY CHECKING:
 It is the simplest technique for detecting and correcting errors. The MSB of an 8-
bits word is used as the parity bit and the remaining 7 bits are used as data or
message bits. The parity of 8-bits transmitted word can be either even parity or
odd parity.
 Parity bits are extra bits added to the data that allow the detection of errors..
ODD AND EVEN PARITY BITS
 Even Parity: Ensures that the total number of bits set to 1 in the
data, including the parity bit, is even.
 Odd Parity: Ensures that the total number of bits set to 1 in the data,
including the parity bit, is odd.
CHECKSUM
 A checksum is a value calculated from the data that is transmitted or stored. The
receiver recalculates the checksum and compares it with the received checksum
to detect errors.
 Common checksum algorithms include Internet Checksum (used in IPv4), CRC-
16, and CRC-32.
 A Checksum is verified at the receiving side. The receiver subdivides the
incoming data into equal segments of n bits each, and all these segments are
added together, and then this sum is complemented. If the complement of the
sum is zero, then the data is accepted otherwise data is rejected.
Cyclic Redundancy Check (CRC):
 CRC (Cyclic Redundancy Check) is an error-detecting code commonly used in
digital networks and storage devices to detect accidental changes to raw data. It
works by appending a fixed number of check bits to the data, which are
calculated based on the data bits themselves using a polynomial division
algorithm.
POLYNOMIAL DIVISION ALGORITHM
LIMITATIONS OF ERROR DETECTION
Error detection alone does not correct errors; it only identifies
them. Therefore, it requires additional mechanisms, such as error
correction codes, to correct errors. While error detection can detect
most errors, it is not foolproof and may fail to detect certain types
of errors, especially if multiple errors occur simultaneously or if
the error rate is too high.
ERROR CORRECTION:
 Error correction codes go a step further than error detection codes by not only
detecting errors but also correcting them. One of the most commonly used error
correction codes is the Hamming code. Hamming codes add extra bits to the data
being transmitted to create a code word with specific properties. These properties
allow the receiver to detect and correct single-bit errors and detect some
multiple-bit errors.
 Error correction codes like the Hamming code can correct single-bit errors. With
a 4-bit data word, adding 3 parity bits would allow the correction of single-bit
errors and the detection of double-bit errors.
TECNIQUES OF ERROR CORRECTION
 Hamming Codes:
The Hamming (7,4) code is a well-known error-correcting code. It encodes
4 data bits into 7 transmitted bits by adding 3 parity bits. These parity bits
help detect and correct single-bit errors .They are widely used in computer
memory systems and are relatively simple to implement.
For example, if the original data is 1101, the Hamming code would be 1101
010
.
 Convolutional Codes:
Convolutional codes are a class of error correction codes that operate on a continuous
stream of data. They are commonly used in wireless communication systems and are
known for their ability to provide good error correction performance with low decoding
complexity.
 Turbo Codes:
Turbo codes are a class of high-performance error correction codes that are used in
applications where very low error rates are required, such as deep-space communications
and digital television. Turbo codes are based on the iterative decoding of two or more
convolutional codes.
 Low-Density Parity-Check (LDPC):
These are codes are a class of error correction codes known for their excellent error
correction performance and low encoding and decoding complexity. They are based
on sparse parity-check matrices and are widely used in various applications,
including Modern communication systems , digital video broadcasting, wireless
communication systems, and storage devices. LDPC codes offer strong error
correction capabilities, making them suitable for applications where reliable data
transmission is crucial.

ERROR CORRECTION AND DETECTION CODES .pptx

  • 1.
  • 2.
    GROUP W ANDT MEMBERS NAME REG. NO EPWONU AARON EMMANUEL 23/U/BET/1946/PE ZZIWA ROGERS 23/U/BEL/2641/PD ONZIMA DENNIS 22/U/BET/1958/PE AKANKWASA PETER 22/U/BEL/1219/PD ODONKARA RONALD DAVID 22/U/BEL/1884/PD EWATU EDDY 22/U/BET/1409/PE YIKO GODFERY 23/U/BEL/2638/PD
  • 3.
    KASULE ISAAC 22/U/BET/1490/PE ASIIMWEJOSEPH 22/U/BET/3789/PE EKIRU JOEL ERIC 22/U/BET /1393/PE MUBIWABO INNOCENT. 23/U/BET/2159/PE. DRILEBA HAWARD. 22/U/BET/1386/PE OBEA CHARLES LAZARUS 22/U/BET/1860/PE OLINGA SAMUEL 22/U/BET/3940/PE
  • 4.
    ERROR What is Error? Error is a condition when the output information does not match with the input information. During transmission, digital signals suffer from noise that can introduce errors in the binary bits travelling from one system to other. That means a 0 bit may change to 1 or a 1 bit may change to 0.
  • 5.
    TYPES OF ERROR SINGLE BIT ERROR  BURST ERROR
  • 6.
    SINGLE BIT ERROR The only one bit of a given data unit is changed from 1 to 0 or from 0 to 1.
  • 7.
    BURST  The twoor more bits are changed from 0 to 1 or from 1 to 0 is known as Burst Error.  The Burst Error is determined from the first corrupted bit to the last corrupted bit.  The duration of noise in Burst Error is more than the duration of noise in Single-Bit.  Burst Errors are most likely to occurr in Serial Data Transmission.  The number of affected bits depends on the duration of the noise and data rate.
  • 8.
  • 9.
    WHAT IS ERRORDETECTION? This refers to the process of identifying errors in data without correcting them. This process is essential in ensuring data integrity, especially in the presence of noise in various communication systems and storage devices.
  • 10.
    PURPOSE OF ERRORDETECTION:  The primary purpose of error detection is to determine whether errors have occurred during the transmission or storage of data. By detecting errors, the receiving system can request retransmission of the corrupted data or take other corrective actions.
  • 11.
    ERROR-DETECTING CODES  Whenevera message is transmitted, it may get scrambled by noise or data may get corrupted. To avoid this, we use error-detecting codes which are additional data added to a given digital message to help us detect if an error occurred during transmission of the message. A simple example of error-detecting code is parity check.
  • 12.
    TECHNIQUES OF ERRORDETECTION There are several techniques for error detection, including parity checks, checksums, cyclic redundancy checks (CRC), Hash Functions, and Forward Error Correction (FEC) . These techniques involve adding extra bits to the data to create a checksum or CRC value. The receiving system then recalculates the checksum or CRC value based on the received data and compares it with the received checksum or CRC value to detect errors.
  • 13.
     The mostcommon error detection techniques used in digital communication and data storage systems include:
  • 14.
    PARITY CHECKING:  Itis the simplest technique for detecting and correcting errors. The MSB of an 8- bits word is used as the parity bit and the remaining 7 bits are used as data or message bits. The parity of 8-bits transmitted word can be either even parity or odd parity.  Parity bits are extra bits added to the data that allow the detection of errors..
  • 15.
    ODD AND EVENPARITY BITS  Even Parity: Ensures that the total number of bits set to 1 in the data, including the parity bit, is even.  Odd Parity: Ensures that the total number of bits set to 1 in the data, including the parity bit, is odd.
  • 16.
    CHECKSUM  A checksumis a value calculated from the data that is transmitted or stored. The receiver recalculates the checksum and compares it with the received checksum to detect errors.  Common checksum algorithms include Internet Checksum (used in IPv4), CRC- 16, and CRC-32.  A Checksum is verified at the receiving side. The receiver subdivides the incoming data into equal segments of n bits each, and all these segments are added together, and then this sum is complemented. If the complement of the sum is zero, then the data is accepted otherwise data is rejected.
  • 17.
    Cyclic Redundancy Check(CRC):  CRC (Cyclic Redundancy Check) is an error-detecting code commonly used in digital networks and storage devices to detect accidental changes to raw data. It works by appending a fixed number of check bits to the data, which are calculated based on the data bits themselves using a polynomial division algorithm.
  • 18.
  • 19.
    LIMITATIONS OF ERRORDETECTION Error detection alone does not correct errors; it only identifies them. Therefore, it requires additional mechanisms, such as error correction codes, to correct errors. While error detection can detect most errors, it is not foolproof and may fail to detect certain types of errors, especially if multiple errors occur simultaneously or if the error rate is too high.
  • 20.
    ERROR CORRECTION:  Errorcorrection codes go a step further than error detection codes by not only detecting errors but also correcting them. One of the most commonly used error correction codes is the Hamming code. Hamming codes add extra bits to the data being transmitted to create a code word with specific properties. These properties allow the receiver to detect and correct single-bit errors and detect some multiple-bit errors.  Error correction codes like the Hamming code can correct single-bit errors. With a 4-bit data word, adding 3 parity bits would allow the correction of single-bit errors and the detection of double-bit errors.
  • 21.
    TECNIQUES OF ERRORCORRECTION  Hamming Codes: The Hamming (7,4) code is a well-known error-correcting code. It encodes 4 data bits into 7 transmitted bits by adding 3 parity bits. These parity bits help detect and correct single-bit errors .They are widely used in computer memory systems and are relatively simple to implement. For example, if the original data is 1101, the Hamming code would be 1101 010 .
  • 23.
     Convolutional Codes: Convolutionalcodes are a class of error correction codes that operate on a continuous stream of data. They are commonly used in wireless communication systems and are known for their ability to provide good error correction performance with low decoding complexity.  Turbo Codes: Turbo codes are a class of high-performance error correction codes that are used in applications where very low error rates are required, such as deep-space communications and digital television. Turbo codes are based on the iterative decoding of two or more convolutional codes.
  • 24.
     Low-Density Parity-Check(LDPC): These are codes are a class of error correction codes known for their excellent error correction performance and low encoding and decoding complexity. They are based on sparse parity-check matrices and are widely used in various applications, including Modern communication systems , digital video broadcasting, wireless communication systems, and storage devices. LDPC codes offer strong error correction capabilities, making them suitable for applications where reliable data transmission is crucial.