🛠️ What is Error Correction?
Unlike detection, error correction not only detects but also fixes the error without retransmission.
This is crucial in environments where:
- Retransmission is costly or impossible (e.g., deep space, streaming media).
- Timeliness is critical (e.g., real-time voice).
🧮 Hamming Code: The Foundation of FEC
Invented by Richard Hamming, this method introduces redundant parity bits into data to detect and correct single-bit errors.
👨🔬 How It Works:
For k data bits, it adds r parity bits such that: [ 2^r \geq k + r + 1 ]
Parity bits are placed at positions that are powers of 2.
Each parity bit checks a subset of data bits.
At the receiver:
- Parity checks produce a syndrome.
- If syndrome is 0 → no error.
- If non-zero → indicates exact bit to flip.
🧠 Deep Insight
Hamming Code is error correction through structure. It treats data like a puzzle: a few extra pieces make the whole picture resilient to damage.
“The elegance of Hamming lies not in brute force, but in graceful anticipation of error.”
🧭 Applications
- RAM (ECC memory)
- Satellite communication
- Embedded devices
- Early data link protocols