[next] [prev] [prev-tail] [tail] [up]

6.2 Error Detection Codes

Parity Check

One error-detection bit whose value depends on the count of 1's in the input.

Even parity Bit selected to provide for even number of 1's in the transmission
Odd parity
Example: Add a parity bit to each character

Cyclic Redundancy Check (CRC)

Add n bits to each block of k bits so that the n+k bits will be divisible by a predetermined number.

Modulo 10 arithmetic (Check Digit Method):

Make number divisible by 9

        ------|
823  ---|* 10 -----------------8230
        ---|--                 |
        ---|8230  ------|   --||-|
        |     -4-|-     -5-|- +  |---|
        -%--9-    --9---    ------    8235

Modulo 2 arithmetic:

Make the data divisible by a n+1 bits number (e.g., 101 for n=2)

         -----------|
1011 ---|shift n(=2) -----------------101100
         -----|------                |
           ---|101100   ------|   --||--|
           |      -100-||     -01|- +   ---|
           %--101-      -101--    ------    101101

Detects all single-bit errors (001101, 111101,...), and many multiple-bit errors (011101)

[next] [prev] [prev-tail] [front] [up]