Skip to main content

EE 515

Course ID:
Course Code & Number
EE 515
Course Title
Coding Theory
Level
MS
Credit Hours/ ECTS Credits
(3+0+0) 3 TEDU Credits, 7.5 ECTS Credits
Year of Study:
Master
Semester:
Fall
Type of Course:
Elective
Mode of Delivery:
Face-to-face
Language of Instruction:
English
Pre-requisite / Co-requisite:
Pre-requisites: NONE
Co-requisites: NONE
Catalog Description
Channel models for digital communications. Linear block codes. Error detection and error correction techniques. Standard arrays and syndrome decoding. Decoding error probability analysis. Cyclic codes. Bose–Chaudhuri–Hocquenghem (BCH) and Reed-Solomon codes. Convolutional codes. Viterbi algorithm. Iterative decoding techniques. Graph-based codes and decoding. Low-density parity-check code (LDPC) codes. Turbo codes.
Course Objectives

This course introduces essential concepts of error detection and correction techniques, covering linear block codes including cyclic, Bose–Chaudhuri–Hocquenghem (BCH), Reed-Solomon, convolutional, and turbo codes. This course also enables students to learn practical decoding methods like array, syndrome, and Viterbi, as well as low-density parity-check code (LDPC) codes.

Software Usage

MATLAB

Course Learning Outcomes

Upon successful completion of this course, students will be able to:
(1) Describe the channel models used in digital communications such as binary erasure, binary symmetric, and additive white Gaussian noise,
(2) Explain linear block codes, error detection, and correction methods such as Hamming, array, and syndrome decoding techniques,
(3) Utilize probability theory to determine error probabilities for decoding and detection across various channel models and coding methods,
(4) Analyze non-cyclic and cyclic codes while classifying cyclic codes into BCH, Reed-Solomon, and cyclic redundancy check (CRC) categories,
(5) Assess convolutional codes and Viterbi decoding, while discussing their evolution into turbo codes and soft Viterbi decoding,
(6) Design decoding algorithms for graph-based codes in MATLAB.

Learning Activities and Teaching Methods:
Discussion/Debate Questioning Reading Problem Solving Collaborating Simulation & Games Oral Presentations/Reports Brainstorming Web Searching
Assessment Methods and Criteria:
Assessment Methods and Criteria Others:
Design Content
Recommended Reading
Required Reading

(1) Lin, S., & Costello, D. J. (2004). Error Control Coding (2nd ed.). Prentice-Hall.
(2) Richardson, T., & Urbanke R. (2008). Modern Coding Theory. Cambridge University Press.

Grading

Test/Exam (60%), Performance Project (Written, Oral) (20%), Quiz (10%), Case Studies / Homework (10%)

Learning Activities and Teaching Methods Others:
Course Coordinator:
Javad Haghighat
Student Workload:
Workload Hrs
Lectures 42
Course Readings 70
Exams/Quizzes 70
Report on a Topic 32
Case Study Analysis 11
Course & Program Learning Outcome Matching: