AdvancedTopic 85 of 101Signals, Control & Comms
Block and convolutional codes
Hamming, Reed-Solomon and Viterbi decoding.
In depth
Block codes encode k bits into n-bit codewords (Hamming (7,4) corrects one error; Reed-Solomon corrects symbol bursts, used in CDs and QR codes). Convolutional codes use shift registers with Viterbi decoding. Syndrome decoding and trellis diagrams are tools.
Key points
- Generator and parity-check matrices
- Constraint length
- Free distance
ExampleQR codes use Reed-Solomon to be readable even when partly damaged.
Block and convolutional codes are the practical codes used in storage, satellites and wireless links, so their decoding methods matter.
What is Block and convolutional codes?
Hamming, Reed-Solomon and Viterbi decoding.
Why is it important to understand block and convolutional codes?
Block and convolutional codes are the practical codes used in storage, satellites and wireless links, so their decoding methods matter.
What does a Hamming code do?
It adds parity bits that can correct any single bit error and detect double errors in a block.
What is the Viterbi algorithm?
A maximum-likelihood decoder for convolutional codes that finds the most likely transmitted sequence using a trellis.
How is Block and convolutional codes used in practice?
Typical applications include protecting CDs and QR codes with Reed-Solomon codes, using a Hamming code to correct single-bit errors in memory and decoding a convolutional code with the Viterbi algorithm in a radio receiver.
What should I learn before Block and convolutional codes?
Study "Channel coding" first (topic 84 of 101 in Signals, Control & Comms). It covers the groundwork this topic builds on.
What are the key points of Block and convolutional codes?
Generator and parity-check matrices. Constraint length. Free distance.
Can you give an example of Block and convolutional codes?
QR codes use Reed-Solomon to be readable even when partly damaged.
What comes after Block and convolutional codes?
The next topic is "Modern codes", which builds directly on this one.
How difficult is Block and convolutional codes?
It is classed as Advanced in Signals, Control & Comms (topic 85 of 101). It is an advanced topic. It assumes you are comfortable with the intermediate topics in Signals, Control & Comms.