In this chapter, we discuss error correcting codes. We review the idea of hard versus soft decisions as types of symbol estimates that we provide to the decoder. We introduce the concepts of parity bits – which provide redundancy – and coding rate. We develop a simple, if flawed, toy systematic linear block code and use this code to demonstrate the concepts of generator matrix, hamming distance, and parity check matrix. By using the parity check matrix, we construct the syndrome and use this vector to perform error correction. To provide a set of viable systematic linear block codes, we introduce Hamming codes. We also introduce convolutional codes and relate the mathematical and shift-register block diagram forms. To enable decoding, we discuss the trellis diagram and use this diagram to motivate Viterbi decoding.
Review the options below to login to check your access.
Log in with your Cambridge Higher Education account to check access.
If you believe you should have access to this content, please contact your institutional librarian or consult our FAQ page for further information about accessing our content.