1. Turbo Decoding Architecture for LTE Systems by
using MAX LOG MAP
Mustafa Khaleel Ibrahim
Politehnica University of Bucharest
Faculty of Electronics, Telecommunications and Information Technology
Domain of studies: Electronics and Telecommunications Engineering
Program of studies: Advanced Wireless Telecommunications (AWT):
Bucharest, Romania
(mkhaleel190@gmail.com)
Abstract— Turbo code, as a kind of LTE encoding scheme, its
decoding method has an important influence on its performance
and realization. In order to satisfy the low complexity and low
delay requirement of LTE decoding, the paper has a combination
of MAX-Log-MAP algorithm and parallel decoding, also it
carries on the BER performance simulation in LTE system.
Simulation results show that: MAX-Log-MAP parallel decoding
algorithm, not only is its decoding performance close to the
decoding performance of Log-MAP parallel decoding algorithm,
but also it reduces the computation process which further
reducing decoding delay[1].
Keywords - turbo codes, Max Log MAP decoder, Implementation,
LTE standard.
I. INTRODUCTION
Shannon defined the limits of a communication system. He
proved that there exists error correcting codes which can
provide arbitrarily high reliability of transmission for
information rates below the channel capacity. In spite of all
efforts to find such error control codes, the gap between the
Shannon limit and practice was still 2dB until 1993. A major
advancement in the channel coding area was introduced by
Berrou et al in 1993 by the advent of turbo codes. Turbo codes
have shown the best Forward Error Correction (FEC)
performance known up to now. Turbo codes are revolutionary
in the sense that they allow reliable data transmission within a
half decibel of the Shannon Limit. At first, the extraordinary
performance of turbo codes encountered some doubts by the
communication community. However, their performance has
been verified by many researchers in a short time after the
emergence of turbo codes. A massive amount of research
effort has been performed to facilitate the energy efficiency of
turbo codes. The superior performance of turbo codes has
been studied and well understood. As a result, turbo codes
have been incorporated into many standards used by the
NASA Consultative Committee for Space Data Systems
(CCSDS), Digital Video Broadcasting (DVB), both Third
Generation Partnership Project (3GPP) standards for IMT-
2000, and Wideband CDMA which requires throughputs from
2 Mb/s to several 100 Mb/s. The iterative nature of turbo-
decoding algorithms increases their complexity compare to
conventional FEC decoding algorithms. Two iterative
decoding algorithms, Soft-Output-Viterbi Algorithm (SOVA)
and Maximum A posteriori Probability (MAP) Algorithm
require complex decoding operations over several iteration
cycles. So, for real-time implementation of turbo codes,
reducing the decoder Complexity while preserving bit error-
rate (BER) performance is an important design consideration
[2].
II. LTE CODING SCHEME
A generic structure for turbo encoding based on parallel
concatenation of two Recursive Systematic Convolutional
(RSC) encoders is given in Fig 1. Two identical RSC encoders
produce the redundant data as parity bits. The input data stream
and parity bits are combined in series to form the turbo coded
word. The size of the input data word may vary from 40 bits to
5114 bits for UMTS [3] and take specified values such as 378,
570, and 20730 for CDMA2000 [4] turbo coding which are the
two main standards of 3GPP and 3GPP2 respectively.
Fig.1 Generic turbo encoder
The interleave is the crucial part of turbo encoding as it shapes
the weight distribution of the code in a way to produce low-
weight code words. Opposite to their non-recursive
counterparts, RCS encoders can only be terminated by certain
terminating data sequences. The interleave separating two
RCS encoders prevents at least one of the encoders to
terminate quickly. It is obvious that a data sequence
terminating after a long period has a large Hamming distance
2. and hence provides better error protection [5]. This
improvement is called the interleave gain which is one of the
main reasons of the excellent performance of turbo codes .The
interleave design also affects the turbo decoder performance
by reducing the degree of correlation between the soft-output
of each decoder which becomes the extrinsic information to
the other decoder (Decoder1 & Decoder2 in Fig 2). As the
degree of correlation between these two soft information
decreases the performance of the turbo decoder increases [6].
Fig.2 Iterative Turbo Decoding
In a typical turbo decoding system (see Fig. 2), two decoders
operate iteratively and pass their decisions to each other after
each iteration. These decoders should produce soft-outputs to
improve the decoding performance. Such a decoder is called a
Soft-Input Soft- Output (SISO) decoder. Each decoder
operates not only on its own input but also on the other
decoder’s incompletely decoded output which resembles the
operation principle of turbo engines. This analogy between the
operation of the turbo decoder and the turbo engine gives this
coding technique its name, “turbo codes” [7].
Turbo decoding process can be explained as follows: Encoded
information sequence Xk is transmitted over an Additive White
Gaussian Noise (AWGN) channel, and a noisy received
sequence Yk is obtained. Each decoder calculates the Log-
Likelihood Ratio (LLR) for the k-th data bit 𝑑 𝑘, as
(1)𝐿(𝑑 𝑘) = log [
𝑃(𝑑 𝑘=1|𝑌)
𝑃( 𝑑 𝑘 = 0 | 𝑌)
]
LLR can be decomposed into 3 independent terms, as
L(dk) = Lapri(𝑑 𝑘) + Lc (𝑑 𝑘) + Le(𝑑 𝑘) (2)
Where 𝐿 𝑎𝑝𝑟𝑖 k (𝑑 𝑘) is the a-priori information of 𝑑 𝑘 , 𝐿 𝑐(𝑥 𝑘)is
the channel measurement, and 𝐿 𝑒(𝑑 𝑘) is the extrinsic
information exchanged between the constituent decoders.
Extrinsic information from one decoder becomes the a-priori
information for the other decoder at the next decoding stage.
𝐿 𝑒12 and 𝐿 𝑒21 in Figure 1 represent the extrinsic information from
decoder1 to decoder2 and decoder2 to decoder1 respectively. LLR
computations can be performed by using one of the two main
turbo decoding algorithms SOVA and MAP algorithms. The MAP
algorithm seeks for the most likely data sequence whereas SOVA,
which is a modified version of the Viterbi algorithm, seeks for the
most likely connected path through the encoder trellis. The MAP
algorithm is a more complex algorithm compared to SOVA. At high
SNR, the performance of SOVA and MAP are almost the same.
However, at low Signal-to-Noise Ratios (SNRs) MAP algorithm is
superior to SOVA by 0.5 dB or more.
III. DECODING ALGORITHM
The LTE turbo decoding scheme is depicted in Fig. 2. The
two Recursive Systematic Convolutional (RSC) decoders are
using in theory the Maximum a Posteriori (MAP) algorithm.
This classic algorithm provides the best decoding
performances, but it suffers from very high implementation
complexity and it can lead to large dynamic range for its
variables. For these reasons the MAP algorithm is used as a
reference for targeted decoding performances, while for real
implementation new sub-optimal algorithms have been
studied: Logarithmic MAP (Log MAP), Maximum Log
MAP (Max Log MAP), Constant Log MAP (Const Log
MAP)[8] , and Linear Log MAP (Lin Log MAP)[9] .
For the proposed decoding scheme, the Max Log MAP
algorithm is selected. This algorithm reduces the
implementation complexity and controls the dynamic range
problem with the cost of acceptable performances
degradation, compared to classic MAP algorithm. The Max
Log MAP algorithm keeps from Jacobi logarithm only the
first term, i.e.
𝑚𝑎𝑥 ∗ (𝑥, 𝑦) = ln(𝑒 𝑥
+ 𝑒 𝑦) = (3)
max(𝑥, 𝑦) + ln(1 + 𝑒−|𝑦+𝑥|
) ≈ max(𝑥, 𝑦) .
The LTE turbo decoder trellis diagram contains 8 states.
Each diagram state permits 2 inputs and 2 outputs. The
branch metric between the states 𝑆𝑖 and 𝑆𝑗 is
Υ𝑖𝑗 = 𝑉(Χk)𝑋(𝑖, 𝑗) + Λ𝑖 (𝑍 𝑘)𝑍(𝑖, 𝑗) (4)
Where X (i,j) represents the data bit and Z(i,j) is the parity bit,
both associated to one branch. Also Λ𝑖
(𝑍 𝑘) is the Log
Likelihood Ratio (LLR) for the input parity bit. When Soft
Input Soft Output (SISO) 1 decoder is taken into discussion
this input LLR is Λ𝑖(𝑍 𝑘) , while for SISO 2 it becomes
Λ𝑖
(𝑍 𝑘
𝑖
) ; V(𝑋 𝑘)=V1(𝑋 𝑘) represents the sum between Λ𝑖
(𝑋 𝑘)
and W(𝑋 𝑘) for SISO 1 and V(𝑋 𝑘)=V2(𝑋 𝑘
,
) represents the
interleaved version of the difference between Λ1
0
(𝑋 𝑘) and
W(𝑋 𝑘) for SISO 2. In Fig. 2, W (𝑋 𝑘) is the extrinsic
information and Λ1o (𝑋 𝑘) and Λo2 (𝑋 𝑘
′
) are the output LLRs
generated by the two SISOs.
The decoding process is based on going forward and
backward through the trellis.
IV. CONCLUSIONS
The LTE channel coding is a versatile design that has
benefited from the decades of research and development in the
area of iterative processing. Although the turbo codes used in
LTE and UMTS are of the same form as Berrou’s original
scheme, the LTE turbo code with its contention-free interleave
provides hardware designers with sufficient design flexibility
to support the high data rates offered by the first release of
LTE and beyond. However, with increased support for
parallelism comes the cost of routing the extrinsic values to
and from the memory. The routing complexity in the turbo
3. decoder with a large number of processors (e.g. M = 64) may
in fact become comparable to that of an LDPC code with
similar processing capability. Therefore, it is possible that the
cost versus performance tradeoffs between turbo and LDPC
codes will be reinvestigated in the future. Nevertheless, it is
clear that the turbo code will continue to shine for a long time
to come.
REFERENCES
[1] Zengyou Sun,Lijie Zhang,Yong Tian. SF-MAX-Log-MAP Parallel
Decoding Algorithm and Its Application Study in LTE. Conf. Cross Strait
Quad-Regional Radio Science and Wireless Technology Vol.2, Harbin July
2011.
[2] C.E. Shannon, A Mathematical Theory of Communication. Bell System
Technical Journal, 1948. 27: p. 379-423, 623-656
[3] European Telecommunication Standards Institute, Universal Mobile
Telecommunications System (UMTS): Multiplexing and channel coding
(TDD),3GPP TS 25.222 version 7.3.0 Release 7, p. 18 - 23, May 2005.
[4] Third Generation Partnership Project 2, Physical Layer Standard for
cdma2000 Spread Spectrum Systems, C.S0002-D, version 2.0, p. 2.97-2.105,
Sept.,2005.
[5] A. Burr, Turbo-codes: the ultimate error control codes? Electronics &
Communication Engineering Journal, 2001. 13(4): p. 155 - 165.
[6] H.R. Sadjadpour, N.J.A. Sloane, and G. Nebe, Interleaver Design for
Turbo Codes. IEEE JOURNAL ON SELECTED AREAS IN
COMMUNICATIONS, 2001. 19(5): p. 831-837.
[7] C. Heegard and S.B. Wicker, Turbo Coding. 1 ed. 1999, Boston: Kluwer
Academic Publisher.
[8] Papaharalabos, S.; Sweeney, P.; and Evans, B.G., „Constant log-MAP
decoding algorithm for duo-binary turbo codes,” Electronics Letters
Volume 42, Issue 12, 8 June 2006, pp. 709 – 710.
[9] Jung-Fu Cheng; and approximated logT., „LinearlyOttosson, -MAP
ConferenceTechnologyVehicularturbo decoding,”foralgorithms
Proceedings, 2000.VTC2000- 51stIEEE2000Tokyo.Spring
Volume 3, Issue, 2000, pp. 2252 – 2256, vol.3