Error Detection and Correction - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

Error Detection and Correction

Description:

A demodulator converts data transmitted over an analogue line back into a digital signal ... The frames are interleaved again in a different pattern ... – PowerPoint PPT presentation

Number of Views:556
Avg rating:3.0/5.0
Slides: 18
Provided by: fre150
Category:

less

Transcript and Presenter's Notes

Title: Error Detection and Correction


1
Error Detection and Correction
  • and its application in CDs

2
Parity Check Codes
  • k information bits are taken by an encoder
  • r parity bits are added to the information bits
  • A block of n bits, nkr, is produced
  • The n-bit block is called the codeword
  • This code is called an (n,k) block code
  • The code rate is Rk/n

3
Parity Check Codes
  • The decoder applies the same encoding rules to
    the received codeword and looks for any error in
    the parity check
  • If an error occurs then if possible, algorithms
    are used with the received and calculated parity
    check bits to try and recreate the original
    codeword
  • The information bits from the corrected codeword
    are then returned to the user, or if the codeword
    cannot be corrected a re-transmission will have
    to occur
  • If an error occurs which changes one codeword
    into another valid codeword then the error will
    go undetected

4
Hamming
  • Richard Hamming noticed the problem of flipping
    two bits in single parity check bit codes.
  • He described it as the distance in the codeNow
    it is known as the Hamming distance
  • Single parity bit codes have a Hamming distance
    of 2 the minimum number of bit flips required
    to produce another valid codeword
  • Hamming was interested in maximising the distance
    and the code rate as much as possible
  • In the 1940s he developed better codes where
    parity bits overlapped

5
Single Parity Check Bit
  • This is the simplest error detection code
  • 2 types of parity even and odd

Even parity 00101101 even so add parity bit 0
to keep it even 001011010
Odd parity 00101101 even so add parity bit 1
to make it odd 001011011
  • The decoder adds up all the received bits to
    check the parity
  • If the check detects an error then the data will
    be requested again

6
Single Parity Check Bit
  • Can only detect an odd number of errors
  • If an even number of bit flips occur then the
    parity of the received codeword will remain the
    same
  • The probability of a larger number of bit flips
    is less than a smaller number of flips
  • This check is best suited for reliable storage
    and reliable communication lines

7
Single Parity Check Bit
  • A demodulator converts data transmitted over an
    analogue line back into a digital signal
  • Hard-decision decoding each bit is either 0 or
    1
  • Soft-decision decoding calculation of error on
    received data
  • Wagner coding soft-decision decoding used with
    a single parity check bit for single bit error
    correction
  • A bit-quality measurement is done on received
    data and the bit with the lowest bit-quality
    measurement is flipped to correct the parity
  • This saves the cost of re-transmitting the data

8
Product Codes
  • A product code provides a greater amount of error
    detection and correction than the single parity
    bit code
  • The information bits are stored in a 2d array
  • Block codes are applied to the rows and columns
  • The block codes are applied to the check bits to
    produce an overall check bit

1
1
0
0
0
0
  • This also works with higher dimensional arrays

9
Product Codes
  • All single bit errors can be corrected

0
0
1
1
10
Product Codes
  • All single bit errors can be corrected
  • All two bit errors can be detected but not
    corrected

11
Product Codes
  • All single bit errors can be corrected
  • All two bit errors can be detected but not
    corrected
  • All three bit errors can be detected. Some can be
    corrected, but others may be wrongly corrected
  • This again shows the importance of probability

1
0
0
1
0
12
Product Codes
  • Soft-decision decoding allows further error
    correction
  • Rank decoding bits are ranked in order of
    reliability
  • Look at the highest ranked undecoded bit which is
    not flagged
  • If both parity checks are correct, decode the bit
    as received
  • If both parity checks fail, flag the bit
  • If only one parity check is correct then decode
    the bit as received if its rank is greater than
    the lowest ranked undecoded bit in its column and
    row. Flag the lowest bit in both the row and
    column if it is not already

2 1
1 1
9 1
  • If there is only one undecoded bit in the row or
    column then decode it to force correct parity
  • When all remaining undecoded bits are flagged,
    decode the highest ranked flagged bit and do step
    2

0
6 0
5 0
3 1
5 0
1
4 0
8 1
7 0
4 0
1
13
Reed-Solomon Codes
  • A type of block code denoted as RS(n,k)
  • Designed to operate on a block of symbols
  • The encoder takes k information symbols and 2t
    check symbols to produce a n-symbol block, nk2t
  • An error in a symbol one or more bits are wrong
  • Half as many symbol errors as there are check
    symbols, t, can be corrected
  • RS(255,223) can have (255-223)/216 symbol errors
    corrected
  • The number of symbols which can be corrected does
    not depend on the number of bit errors in a
    symbol
  • Reed-Solomon codes are very good at correcting
    bursts of errors

14
CD Error Correction
  • Cross-Interleaved Reed-Solomon Coding (CIRC) is
    used
  • The data is split into 8-bit symbols
  • The encoder uses a RS(28,24) code to make a frame
  • All the frames are interleaved

15
Interleaving Example
  • No interleaving
  • burst error on a frame cannot be corrected
  • causes data loss
  • Interleaving
  • interleaving spreads out data across other frames
  • burst error occurs on an interleaved frame
  • de-interleaving shows the error is now spread
    across different frames
  • the burst error can now be corrected


110 100 011
000 100 011
000 101 001
16
CD Error Correction
  • Cross-Interleaved Reed-Solomon Coding (CIRC) is
    used
  • The data is split into 8-bit symbols
  • The encoder uses a RS(28,24) code to make a frame
  • All the frames are interleaved
  • Frames encoded again using a RS(32,28) code
  • The frames are interleaved again in a different
    pattern
  • The original frame is now spread over 109 frames
  • 436/3213.625 frames can be corrected
  • RS(28,24) C2 level of encoding
  • corrects physical disk errors
  • RS(32,28) C1 level of encoding
  • corrects errors due to fingerprints and scratches

17
Bibliography
  • Arnold M MichelsonError-control techniques for
    digital communicationWiley, c1985
  • Michael PurserIntroduction to error-correcting
    codesArtech House, c1995
  • Professor David JoynerReed-Solomon Codes and CD
    Encodinghttp//web.usna.navy.mil/wdj/reed-sol.ht
    mApril 24th 2002
Write a Comment
User Comments (0)
About PowerShow.com