Forward Error CORRECTION A little magic
Hamming in perspective Typically errors are corrected with retransmission. Hamming lets the receiver determine the error and fix it! Hamming only corrects single errors. –Not of great use to us Hamming is somewhat expensive.
Hamming Concept Sender Message + parity bits (Corruption) Message + parity bits Receiver Message + parity bits Detects error and FIXES IT!
MESSAGE BITS M 1 M 2 M 3 M 4 M 5 M 6 Place Parity bits in positions which are powers of 2. 1,2,4,8,.. Message bits in rest. P 1 P 2 M 1 P 3 M 2 M 3 M 4 P 4 M 5 M Look at binary positions Calc parity w/message bits connected to position (next slide)
P 1 P 2 M 1 P 3 M 2 M 3 M 4 P 4 M 5 M E.g. M 1 position has powers 1 and 2 in the position (2 0 =1 and 2 1 =2) so is in P 1 and P 2 M2M2 M2M2 M1M1 M1M1 M3M3 M3M3 M4M4 M4M4 M4M4 M5M5 M5M5 M6M6 M6M6
P 1 P 2 M 1 P 3 M 2 M 3 M 4 P 4 M 5 M M2M2 M2M2 M1M1 M1M1 M3M3 M3M3 M4M4 M4M4 M4M4 M5M5 M5M5 M6M6 M6M6 Calculate P 1
P 1 P 2 M 1 P 3 M 2 M 3 M 4 P 4 M 5 M M2M2 M2M2 M1M1 M1M1 M3M3 M3M3 M4M4 M4M4 M4M4 M5M5 M5M5 M6M6 M6M6 Calculate P 2
P 1 P 2 M 1 P 3 M 2 M 3 M 4 P 4 M 5 M M2M2 M2M2 M1M1 M1M1 M3M3 M3M3 M4M4 M4M4 M4M4 M5M5 M5M5 M6M6 M6M6 FINISH
P 1 P 2 M 1 P 3 M 2 M 3 M 4 P 4 M 5 M M2M2 M2M2 M1M1 M1M1 M3M3 M3M3 M4M4 M4M4 M4M4 M5M5 M5M5 M6M6 M6M6 Now ASSUME AN ERROR Should be a 1.. P 2 and P 3 in error Reverse bits 0110 M 3 position!
It’s not magic! See if you can figure it out. Hamming will only detect AND correct single bit errors NOT used in communication USED in error correcting memory When is another parity bit needed? Uses principle of only allowing certain codes VtVt V t = transmitted VrVr V r = received