Slide 1
Add structure before the message travels
An error-correcting code adds redundant information to data. The receiver uses that structure to identify likely damage introduced during storage or transmission.
More to Read
Redundancy is useful because not every possible received pattern is a valid message. Reserved structure gives the decoder evidence that an error has occurred.
Slide 2
A simple repeat can outvote one error
Sending a bit three times allows a majority decision. If 000 becomes 010, the receiver can recover zero under an assumption of at most one flipped bit.
More to Read
If two bits flip, the same majority rule can give the wrong answer. The example demonstrates both the benefit of redundancy and the need to state an error model.
Slide 3
Distance separates valid messages
The Hamming distance counts positions where two equal-length bit patterns differ. Greater separation between valid codewords can support stronger error protection.
More to Read
To correct any single-bit error by nearest-codeword decoding, valid words need a minimum distance of three. Their one-error neighborhoods then do not overlap.
Slide 4
Detection and correction are different jobs
A code may reveal that data is wrong without identifying the original message. Correction needs enough additional structure to choose among possible causes.
More to Read
A single parity bit can detect an odd number of bit flips but misses any even number. It does not by itself locate which bit should be changed.
Slide 5
Protection spends resources
Stronger coding can require extra transmitted bits, computation or delay. Engineers choose a code to suit the expected errors and the cost of failure.
More to Read
Burst errors differ from isolated random flips. Interleaving can spread a burst across several codewords, allowing a code designed for smaller errors to handle the redistributed damage.
Sources
- Linear Block Codes and Parity Relations
MIT OpenCourseWare
- Computation Structures: Information
MIT OpenCourseWare