Turbo Codes

  • Giovanni CancellieriEmail author
Part of the Signals and Communication Technology book series (SCT)


Recursive systematic convolutional codes are studied from the point of view of their capability in transforming low-weight information sequences into high-weight output sequences. The basic principle of a turbo code, constructed by means of two recursive systematic convolutional codes in parallel concatenation, is presented. The importance of the role of the interleaver is stressed. The interleaver coding gain and the concept of effective minimum distance are discussed. The phenomenon of spectral thinning is described. The possibility of employing puncturation for increasing the code rate is taken into account. A statistical prediction of turbo code performance is developed, exploiting the model of a uniform interleaver. The presence of a BER floor is considered, and some solutions for lowering it are proposed. The possibility of not terminating one of the two component codes is examined, with the purpose of increasing the code rate. The generator matrix of a turbo code is calculated, taking into account some very simple deterministic interleavers. A description of the decoding algorithm is outlined, with particular attention to its time latency, imposed by the number of iterations. A variant of turbo codes consisting of a serial concatenation is introduced. It typically shows a smaller interleaver gain, but also a less pronounced BER floor. Finally a turbo product code is described, based on two convolutional codes forming a product scheme with or without interleaver. The parity check matrices of some turbo code arrangements are presented.


Code Rate Block Code LDPC Code Code Word Turbo Code 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. Bahl LR, Cocke J, Jelinek F, Raviv J (1974) Optimal decoding of linear codes for minimizing symbol error rate. IEEE Trans Inf Theory 20:248–287CrossRefMathSciNetGoogle Scholar
  2. Banerjee A, Vatta F, Scanavino B, Costello DJ (2005) Non-systematic turbo codes. IEEE Trans Commun 53:1841–1849CrossRefGoogle Scholar
  3. Barbulescu AS, Pierobon SS (1995) Terminating the trellis of turbo-codes in the same state. Electron Lett 31:22–23CrossRefGoogle Scholar
  4. Benedetto S, Montorsi G (1996) Unveiling turbo codes: some results on parallel concatenated coding schemes. IEEE Trans Inf Theory 42:409–428CrossRefzbMATHGoogle Scholar
  5. Benedetto S, Divsalar D, Montorsi G (1998a) A search for good convolutional codes to be used in the construction of turbo codes. IEEE Trans Commun 46:1101–1105CrossRefzbMATHGoogle Scholar
  6. Benedetto S, Divsalar D, Montorsi G, Pollara F (1998b) Serially concatenation of interleaved codes: design and performance analysis. IEEE Trans Inf Theory 44:909–926CrossRefzbMATHMathSciNetGoogle Scholar
  7. Berrou C, Glavieux A, Thitimajshima P (1993a) Near Shannon limit error-correcting coding and decoding: turbo codes. In: Proceedings of IEEE international conference communications (ICC93), Geneva:1064–1070Google Scholar
  8. Berrou C, Adde P, Angui E, Faudeil S (1993b) A low complexity soft-output Viterbi decoder architecture. In: Proceedings of IEEE international conference communications (ICC93), Geneva:737–740Google Scholar
  9. Berrou C, Glavieux A (1996) Near optimum error correcting coding and decoding: turbo codes. IEEE Trans Commun 44:1261–1271CrossRefGoogle Scholar
  10. Divsalar D, Pollara F (1995) Weight distributions for turbo codes using random and non-random permutations. JPL, TDA Prog Rep, pp 42–122Google Scholar
  11. Douillard C, Berrou C (2005) Turbo codes with rate-m/(m + 1) constituent convolutional codes. IEEE Trans Commun 53:1630–1638CrossRefGoogle Scholar
  12. Esmaeli M (2006) The minimal product parity check matrix and its application. In: Proceedings of IEEE ICC 2006, Instanbul, pp 1113–1118Google Scholar
  13. Forney GD (1966) Concatenated codes. MIT Press, CambridgeGoogle Scholar
  14. Garello R, Montorsi G, Benedetto S, Cancellieri G (2001a) Interleaver properties and their applications to trellis complexity analysis of turbo codes. IEEE Trans Commun 49:793–807CrossRefzbMATHGoogle Scholar
  15. Garello R, Chiaraluce F, Pierleoni P et al (2001b) On error floor and free distance of turbo codes. In: Proceedings of IEEE international conference communications 1, Helsinki, pp 45–49Google Scholar
  16. Gazi O, Yilmaz AO (2006) Turbo product codes based on convolutional codes. ETRI J 28:453–460CrossRefGoogle Scholar
  17. Gracie K, Hamon MH (2007) Turbo and turbo-like codes: principles and applications in telecommunications. Proc IEEE 95:1228–1254CrossRefGoogle Scholar
  18. Hagenauer J, Hoeher P (1989) A Viterbi algorithm with soft-decision outputs and its applications. Ibn: Proceedings IEEE global telecommunications conference, Dallas, pp 1680–1686Google Scholar
  19. Hagenauer J, Papke L (1994) Decoding turbo codes with the soft-output Viterbi algorithm. In: Proceedings of international Symposium information theory, Trondheim (Norway):164Google Scholar
  20. Hagenauer J, Offer E, Papke L (1996) Iterative decoding of binary block and convolutional codes. IEEE Trans Inf Theory 42:429–445CrossRefzbMATHGoogle Scholar
  21. Kim MG (1997) On systematic punctured convolutional codes. IEEE Trans Inf Theory 45:133–139Google Scholar
  22. Lin S, Costello DJ (2004) Error control coding. Pearson/Prentice-Hall, Upper Saddle RiverGoogle Scholar
  23. Maunder RG, Hanzo L (2010) Iterative decoding convergence of serially concatenated codes. IEEE Trans Vehic Tech 59:216–224CrossRefGoogle Scholar
  24. Oppenheim AV, Schafer RW (1974) Digital signal processing. Prentice-Hall, Englewood CliffsGoogle Scholar
  25. Perez L, Seghers J, Costello DJ (1996) A distance spectrum interpretation of turbo codes. IEEE Trans Inf Theory 42:1698–1709CrossRefzbMATHMathSciNetGoogle Scholar
  26. Proakis JC (1983) Digital communications. McGraw Hill, TokyoGoogle Scholar
  27. Pyndiah R (1998) Near-optimum decoding of product codes: block turbo codes. IEEE Trans Commun 46:1003–1010CrossRefzbMATHGoogle Scholar
  28. Ryan WE, Acikel OF (1999) Punctured turbo-codes for BPSK/QPSK channels. IEEE Trans Commun 47:1315–1323CrossRefzbMATHGoogle Scholar
  29. Ryan WE, Lin S (2009) Channel codes: classical and modern. Cambridge University Press, CambridgeCrossRefGoogle Scholar
  30. Seshandri N, Hoeher P (1993) On post-decision symbol-reliability generation. In: Proceedings of IEEE international conference communications (ICC93), Geneva, pp 741–745Google Scholar
  31. Sidorenko V, Bossert M, Vatta F (2012) Properties and encoding aspects of direct product convolutional codes. In: Proceedings of IEEE international symposium informations theory, Cambridge (MA), pp 2351–2355Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.Information EngineeringPolytechnic University of MarcheAnconaItaly

Personalised recommendations