Coding Theory and Applications


CMPE Degree: This course is Not Applicable for the CMPE degree.

EE Degree: This course is Not Applicable for the EE degree.

Lab Hours: 0 supervised lab hours and 0 unsupervised lab hours.

Technical Interest Group(s) / Course Type(s): Telecommunications

Course Coordinator:

Prerequisites: ECE 3075

Corequisites: None.

Catalog Description

To introduce the theory and practice of error control coding, with emphasis
on linear, cyclic, convolutional, and parallel concatenated codes

Course Outcomes

Not Applicable

Student Outcomes

In the parentheses for each Student Outcome:
"P" for primary indicates the outcome is a major focus of the entire course.
“M” for moderate indicates the outcome is the focus of at least one component of the course, but not majority of course material.
“LN” for “little to none” indicates that the course does not contribute significantly to this outcome.

1. ( Not Applicable ) An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics

2. ( Not Applicable ) An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors

3. ( Not Applicable ) An ability to communicate effectively with a range of audiences

4. ( Not Applicable ) An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts

5. ( Not Applicable ) An ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives

6. ( Not Applicable ) An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions

7. ( Not Applicable ) An ability to acquire and apply new knowledge as needed, using appropriate learning strategies.

Strategic Performance Indicators (SPIs)

Not Applicable

Course Objectives

Topical Outline

1. Introduction to Linear Block Codes
a. -Linear vector spaces
b. -Generator and parity-check matrices
c. -Syndrome decoding, standard arrays
2. Finite field fundamentals
a. -Groups, fields, rings, elementary Galois fields
b. -Irreducible, minimal and primitive polynomials
c. -Extension fields
d. -Conjugacy classes, minimal polynomials, factorization of
e. -Ideals and generator polynomials
3. General Cyclic codes
a. -General theory of linear cyclic codes
b. -Shift register encoders and decoders
4. BCH and Reed-Solomon codes
a. -Generator polynomial approach to encoding BCH codes
b. -The BCH bound
c. -Basic properties of Reed Solomon Codes
d. -Decoding BCH codes: Peterson's and Berlekamp’s algorithms
e. -Decoding RS codes: Berlekamp-Massey and Euclid’s algorithm
5. Convolutional Codes
a. -Shift register encoding
b. -Viterbi decoding
6. Turbo Codes
a. Serial- vs parallel-concatenated codes
b. -Parallel concatenation encoder
c. -Interleaving
d. APP decoding, SOVA
e. -Turbo decoding
f. EXIT charts
7. Low-Density Parity-Check codes
a. Gallager A algorithm
b. Belief propagation algorithm
c. Density evolution
8. Polar codes
a. Polar transform
b. Construction of polar codes
c. Decoding of polar codes