eduXchange Logo

Coding for reliable and secure communications

5LSF0EUROTEQ alliance
Electrical Engineering

About this course

Module 1: Channel coding theorem, definition of a forward error correction code (channel code), channel codes main parameters, capacity of soft and hard decision decoding.
Module 2: Linear block codes, generator matrix, parity check matrix, main properties. Decoding in the binary symmetric channel: syndrome decoding. Main coding bounds.
Module 3: Algebraic codes, bounded distance decoders, product codes.
Module 4: Convolutional codes. Viterbi decoder. BCJR decoder. The turbo principle and turbo codes.
Module 5: Low-density parity check codes: graph representation, properties, construction. Belief propagation. Min-sum decoder.
Module 6: Polar codes, conservation of capacity, polarization, LLR computation, frozen bit selection, successive cancelation decoding.
Module 7: Coded Modulation. Geometric constellation shaping. Probabilistic constellation shaping.
Module 8: Coding for security applications.
Course Plan
Structure: Two weekly teaching blocks (2 hours each). One block is dedicated to lectures, while the other combines lectures with in-class tutorials.
Tutorials: Designed to deepen theoretical understanding through student-led exercises or programming sessions.
Assignments: Weekly assignments covering both theory and implementation.
Support: Weekly office hours available for additional guidance.

Learning outcomes

The course focuses on the principles of coding theory for reliable and secure transmission over digital communication channels. The course introduces the state-of-the-art codes used in today's communication systems such as product codes, LDPC codes, polar codes, and turbo codes. An emphasis is given to the software implementation aspects of such codes.

To successfully complete the course the student is expected to:1. Explain key concepts of coding theory, including channel capacity, coding gain, linear block code structures, and decoding strategies (hard vs. soft decision).
2. Compare and evaluate the performance of different code classes and decoders, benchmarking them against theoretical limits such as channel capacity.
3. Apply abstract coding theory principles to algorithmic implementations of encoders and decoders.
4. Implement key encoding and decoding algorithms in software (e.g., MATLAB) and simulate their transmission performance.
5. Analyze and critically assess numerical simulation results, interpreting them using theoretical foundations from the course.

Examination

Individual MATLAB programming assignments (written reports with code): 50% of the final grade; oral examination: 50% of the final grade.

Course requirements

Prior knowledge of probability theory, linear algebra and basic digital communications is expected. Experience with MATLAB (or similar programming) is highly advisable. Without such experience, the course can be followed, but it will take more effort than is represented by 5 EC.

Resources

  • Lecture slides provided during the course
  • Channel Codes: Classical and Modern

Activities

Lectures, tutorial sessions (exercises and simulation), and individual MATLAB programming assignments.

Additional information

  • Electrical Engineering
course
5 ECTS
  • Level
    Master
  • Contact hours per week
    1
  • Instructors
    Alexios Balatsoukas Stimming, Gabriele Liga, Kadir Gumus, Kaiquan Wu, Roel Maes
  • Mode of delivery
    Hybrid

Starting dates

  • 19 Apr 2027

    ends 20 Jun 2027

    LocationEindhoven
    LanguageEnglish
    TermBlock GS4
    E1 - Tu 5-6, Th 1-2
    Enrolment starts 23 Oct
    Register between 23 Oct - 21 Mar 2027
These offerings are valid for students of TalTech (Estonia)