Presentation on theme: "ERROR CORRECTION. Error Correction Two ways of handling error correction –The receiver can have the sender retransmit the entire data unit –The receiver."— Presentation transcript:
Error Correction Two ways of handling error correction –The receiver can have the sender retransmit the entire data unit –The receiver can use an error-correcting code To correct the error –Locate the invalid bit or bits
Error Correction r – redundancy bits required to correct a given number of data bits (m) - must be able to indicate at least m + r +1 states (no error, error in every bit position) - this is the required number of bits to cover all the possible single bit error r bits can indicate 2^r states Therefore, 2^r >= m + r +1
Example of Hamming Code
FEC – Forward Error Correction (From Tomasi) 2^n >= m + n +1 n = number of Hamming bits m = number of bits in the data character 1) For a 12-bit data stream of , determine the number of Hamming bits required. 2) Arbitrarily place the Hamming bits into the data string. 3) Determine the condition of each Hamming bit. 4) Assume an arbitrary single-bit transmission error. 5) And prove that the Hamming code will detect the error.
FEC – Forward Error Correction (From Tomasi) 1) n = 4: 2^4 >= >= 17 n = 5: 2^5 >= >= 18 2) H101 H100 HH01 0H01 0 3) To determine the logic condition of Hamming bits, express all bit positions that contain a 1 as an n- bit binary number (ex. bit position 2 = 00010) and XOR them together. The result will be the Hamming code =
FEC – Forward Error Correction (From Tomasi) 4) Assume that an error occurs at bit position ) At the receiver, determine the bit position in error, extract the Hamming bits and XOR them with the binary code for each data bit position that contain a 1. Hamming code = bit position 2 = bit position 3 = bit position 6 = bit position 12 = bit position 14 = bit position 16 = Bit position 3 was received in error
EXERCISES 1. For each of the data unit of the following sizes, find the minimum number of redundancy bits needed to correct one single bit error: –12, 16, 24, Construct the hamming code for the bit sequence A receiver receives the code When it uses the hamming encoding algorithm, the result is Which bit is in error? What is the correct code?