Turbo-Code

Turbo codes are a set of error-correcting block or convolution codes, which are used in the digital signal processing to the secure transmission of data, for example in satellite transmission links. They were developed by the French scientists Claude Berrou, Alain Glavieux and Punya Thitimajshima 1993.

The development of turbo codes was a major advance in the field of channel coding, there is a method available to them, with the ( " Shannon limit" ), the real achievable channel utilization close to the theoretical channel capacity. This means that the spectral efficiency of this code is almost maximum, ie comparable with the low-density parity check codes ( LDPC ).

General

A turbo encoder consists of at least two parallel or serially connected elementary encoders for encoding. The elementary coders each provide for themselves a particular channel code dar. The first encoder receives the user data in unaltered form, and its output is passed through a so-called interleaver, which surrounded the data sequence according to certain rules to the second encoder as input. The second encoder provides in two encoders, and finally the data sequence to be transmitted.

Accordingly, a plurality of decoders in the reverse order will be used in parallel or in series on the receiving side. A special feature of this decoder exchange with each other statistical information for error correction and perform the decoding process iteratively, resulting in a very powerful error correction for a comparatively low algorithmic complexity. Although the number of decoders being equal to the number of encoders, the number of iterations in the decoding process is usually, but greater than the number of decoders.

The information that is exchanged in the decoding between the individual decoders on the interleaver of time In addition, also referred to as extrinsic information, and a probability statement as to whether a particular bit position of the codeword likely logic 0 or logic 1 corresponds to more. Extrinsic is that the decoder, which forms this information, they do not use themselves, but to the person or other elementary decoder, which are jointly involved in the concatenated code, " goes further " and for this decoder the information virtually " outside" comes.

Related to this is that a turbo decoder, and thus the individual elementary decoder is to always work with so-called soft-decision. This is also referred to as a soft input soft output SISO or in English. This means to process the individual digits of a code word with certain probabilities.

Through this iterative " repatriation " of information between the decoders also the name " Turbo " is derived from, which alludes to the principle of operation of a turbocharger and its feedback mechanism to improve performance. Strictly speaking, therefore represents only the decoding process, the actual special about a turbo code dar. The coding process, however, is only a parallel or serial code concatenation of block codes or convolutional codes using an interleaver.

Classification

In principle any component codes can be used in the context of a turbo code. There also need to not be chosen uniform encoder, but it can be combined with different parameters in the parallel or serial code concatenation code. When using block code as component code is called Turbo Product Codes ( TPC), with the use of convolutional codes is called Turbo Convolutional Codes ( TCC).

Since convolutional codes for decoding relatively simple, based on the soft-decision algorithms such as the BCJR algorithm or the soft output Viterbi algorithm ( SOVA ), are an extension of the Viterbi algorithm is available to play at the turbo codes especially the Turbo convolutional codes ( TCC ) has a greater practical significance. In programs based on block codes Turbo Product Codes ( TPC ) is a " soft decision " connected by the decoder at a greater expense.

Turbo convolutional codes (TCC)

Turbo Convolutional codes are parallel concatenated convolutional systematic codes. The concatenation will be transmitted by multiple coding between individual coders over a unit for scrambling ( interleaver ). Through this process, the code linking the different convolutional codes are decorrelated from each other and the individual positions have a low statistical dependence between them. It also scrambler which are based on the pseudo-random used. These are still part of research.

The component codes certain codes punctured - To allow certain code rates, for example, to achieve exactly to a certain data rate, is - usually periodically. Puncturing means that the affected area is not sent. This must be considered at the receiver side as extinction consequently.

The following example should clarify the punctuation: An encoder generating 12 bits at its output, which should be transferred. By puncturing example 2 bits omitted. Since now only 10 bits need to be transmitted, the throughput increases by 12/10, ie by a factor of 1.2. The missing two bits appear to the decoder as an additional interference and deteriorate the BER ( Bit Error Rate). Of course, it can not be punctured as many bits as there is a limit at which the decoder, the information can be reconstructed.

Turbo Product Codes ( TPC)

Turbo Product Codes are daisy-chained. As interleaver usually a simple Zeilen-/Spaltenbildung is applied: The data bits are arranged in a matrix. With only two components of the first code block code is formed on all of the rows of the matrix. Thereafter, the second block of code is the code words for all columns of the matrix.

Initial work on Product Codes go to Peter Elias from 1954 back .. Product codes were developed in the 1990s to the Turbo Product Codes. A variety of Turbo Product Codes are protected by patents of France Telecom.

Application Examples

  • In LTE, UMTS and DVB -RCS next to convolutional codes and turbo convolutional codes are used.
  • The ESA spacecraft SMART -1 and Rosetta use turbo codes in communications.
  • In wireless radio networks (WLAN ) for data transmission according to the IEEE 802.16 standard as part of WiMAX and other use Turbo Product Codes.
786576
de