Channel Coding



The first lecture will be October 18.
The first exercise will be on October 26.

Learning Lounge (CT)

The Learning Lounge is available for Communications Technology students (room 47.2.102 on Thursdays, 10-12am). The Learning Lounge is an optional tutorial-style offer by UULM PRO MINT & MED, which helps students to improve their learning strategies and offers help in subject-related questions (with a focus on mandatory subjects within the CT MSc program). For questions, please contact Dr. Ulrich Galster.


Channel coding has become an essential part in communication and storage systems. Block and convolutional codes are used in all digital standards. The aim of channel coding is to protect the information against disturbances during transmission or write/read. Thereby redundancy is added for error correction and for error detection. This course is about the basic methods in channel coding and gives an introduction to the more advanced methods of coded modulation.

The course is intended for Master students in electrical engineering with major in communication engineering. In addition it may be suited for students in computer science and mathematics.


Linear block-codes

  • Generator and parity-check matrix
  • Cosets
  • Principles of decoding
  • Hamming codes
  • Bounds for code parameters (Hamming-, Singleton-, Gilbert-Varshamov-Bounds)
  • Trellis representation of block-codes
  • Plotkin construction, Reed-Muller (RM) codes (relationship to binary PN- and Walsh-Hadamard sequences)
  • APP and ML decoding (sequence and symbol based)

Algebraic coding

  • Prime fields, primitive elements, component- and exponent representation
  • Reed-Solomon (RS) codes as cyclic codes with generator- and check-polynomials
  • Algebraic error and erasure correction with the Euclidean algorithm
  • BCH codes (as subfield subcodes of RS codes)
  • The perfect Golay-code as non-primitive BCH-code
  • Decoding of algebraic codes (key equation, Euclidean- and Berlekamp-Massey algorithm)

Convolutional codes

  • Algebraic properties
  • State Diagram
  • Trellis representation
  • Error correction capabilities of convolutional codes
  • Viterbi- and BCJR algorithm (flow in graphs)

Further coding and decoding techniques

  • LDPC codes
  • Permutations-, Majority- and Information-Set decoding
  • Dorsch algorithm (ordered statistics decoding)
  • Parallel (Turbo)- and serial concatenated codes and their iterative decoding

Introduction to generalized code concatenation and coded modulation



  • Main book of the course (German/English)
    • Bossert M., Kanalcodierung, 3. Auflage, Oldenbourg, 2013
    • Bossert M., Channel Coding for Telecommunications, John Wiley & Sons, 1999
    • Johannesson, Zigangirov: Fundamentals of Convolutional Coding , IEEE Press
    • Lin, Costello: Error Control Coding, 2nd Edition, Prentice Hall, 2004
  • Further reading Coding Theory
    • Blahut R. E., Algebraic Codes for Data Transmission, Cambridge University Press, 2003
    • Roth R., Introduction to Coding Theory, Cambridge University Press, 2006
    • Justesen J. and Hoeholdt, T., A Course In Error Correcting Codes, EMS Publishing House, 2004
    • MacWilliams F. J. and Sloane N. J. A., The Theory of Error-Correcting Codes, Elsevier, 1977
  • Further reading Finite Fields/Algebra
    • McEliece R. J., Finite Fields for Computer Scientists and Engineers, Kluwer, 1987
    • Lidl R. and Niederreiter H., Introduction to Finite Fields and their Applications, Cambridge, 2002
    • Menezes A. and Blake I. F., Applications of Finite Fields, Kluwer, 1993
    • Lipson J. D., Elements of Algebra and Algebraic Computing, Addison-Wesley, 1981
  • Further reading Stochastics and Probability
    • Gubner J. A., Probability and Random Processes for Electrical and Computer Engineers, Cambridge, 2006


Additionally, the "Semesterapparat" to this Lecture may be of interest.

Winter Term 2017/18

Lecture:Wednesday, 10:00 - 13:00,
Exercise:Thursday, 17:00 - 19:00,






Usually oral exam, otherwise written exam of 120min duration.

Further Information

Hours per Week:  3V + 2Ü + 1P
8 ECTS Credits
LSF - ENGJ 7004