Codes are new class of error correction codes that were introduced by
a group of researchers from France Telecom. Error correction is one of
the fundamental building blocks of all types of digital communications.
The importance of turbo codes is that they enable reliable communications
with power efficiencies close to the theoretical limit, as predicted by
Claude Shannon. Since their introduction, turbo codes have been proposed
for low-power applications such as deep-space and satellite communications,
as well as for interference limited applications such as third generation
cellular and personal communication services.
Turbo codes typically consist of a decoder which is made up of 2 component
codes, separated by an interleaver. These encoders have generally been
recursive systematic convolutional (RSC) codes. Because of the interleaver,
the two encoders are excited by two different input sequences, and thus
need two separate decoders, these also being separated by interleavers.
The information provided by the first decoder may then be used in the
second decoder, and since there is now more confidence in the decoder
bits, the whole decoding procedure is repeated again, by forming another
There can be any number of iterations in the decoder, thereby increasing
the complexity. With the benefit of hindsight, it can be shown that turbo
coding has evolved through the interaction of the field of error control
coding with the analysis of hidden Markov models. One of the key results
in the latter area was the development by Baum and Welch of a recursive
algorithm for estimating the parameters of hidden Markov models.