ECE: Electrical & Computer Engineering

ECE 5684 Error Control Coding

Spring 2016 textbook list

The Spring 2016 ECE textbook list is available online for students.

Current Prerequisites & Course Offering

For current prerequisites for a particular course, and to view course offerings for a particular semester, see the Virginia Tech Course Timetables.

Return to course list

ECE 5684 Error Control Coding (3C)

Use of error control codes to improve the reliability of digital communication and storage systems in the presence of noise. Algebraic structure of codes over finite fields. Error detecting and correcting codes. Block codes and convolutional codes, including Reed Solomon codes, LDPC codes, and turbo codes.

What is the reason for this course?

Electrical and computer engineering graduate students who wish to pursue research or careers in the communications field use material taught in this course. Modern communications research and the design and analysis of practical digital communications systems, such as those commonly applied in computer networking and mobile computing, requires the application of the techniques taught in the course. Other courses in the curriculum on digital communications reference techniques taught in this course, and the application of these techniques is necessary to design a modern communication system to perform near theoretical limits.

Program Area: Communications.

Prerequisites: Graduate Standing.

Why are these prerequisites or corequisites required?

The course is a graduate course because understanding of the course material is enhanced by familiarity with communication systems, such as would be acquired in senior-level undergraduate courses in communications and networking.

Department Syllabus Information:

Major Measurable Learning Objectives:
  • Perform numerical operations in finite fields by using both the exponential (power of a primitive element) and polynomial representations of finite field elements.
  • Calculate the reliability of coded data transmission over noisy channels.
  • Design error control schemes for noisy channels given the noise characteristics and the desired degree of reliability.
  • Implement error control encoders and decoders in software for common error control codes, including efficient encoders and decoders for cyclic codes and turbo decoders for convolutional codes.

Course Topics
Topic Percentage
1. Groups, Vector Spaces, and Finite Fields 10%
2. Theory of Linear Block Codes and Cyclic Codes 20%
3. BCH and Reed-Solomon Codes 10%
4. Analysis and Bounds on Code Performance in Noisy Channels 15%
5. Convolutional Codes 15%
6. Turbo Codes 10%
7. Low-Density Parity-Check Codes 10%
8. Coding for Bursty Channels, Fading Channels, and Channels with Feedback 10%

Return to course list