Real Time Digital Signal Processing - ECE 4703

About the course

This ECEDHA webinar, sponsored by Texas Instruments, describes how we handled online teaching of this lab-oriented course.

Useful links:

Course Summary

This course provides an introduction to the principles of real-time digital signal processing (DSP). The focus of this course is hands-on development of real-time signal processing algorithms using audio-based DSP kits in a laboratory environment. Basic concepts of DSP systems including sampling and quantization of continuous time signals are discussed. Trade-offs between fixed-point and floating-point processing are exposed. Real-time considerations are discussed and efiicient programming techniques leveraging the pipelined and parallel processing architecture of modern DSPs are developed. Using the audio-based DSP kits, students will implement real-time algorithms for various ltering structures and compare experimental results to theoretical predictions. Recommended background: ECE 2312, some prior experience in C programming.

Expected Outcomes

Students who successfully complete this course should be able to:
  • describe the architecture and basic operation of fixed-point and floating-point DSPs.
  • perform worst-case timing analysis and measure execution time on real-time DSP systems.
  • develop and realize computationally efficient algorithms on the DSP platform (e.g. FFT, fast convolution).
  • optimize DSP code (e.g. software pipelining).
  • draw block diagrams of FIR and IIR filters under various realization structures and describe the advantages and disadvantages of each realization structure.
  • realize real-time FIR and IIR filter designs on the DSP platform, compare experimental results to theoretical expectations, and identify the source of performance discrepancies.

Expected Background

Students taking ECE4703 should have a basic understanding of discrete time signals and systems (ECE2312 or equivalent) including a working knowledge of sampling theory, basic filter design techniques, and frequency domain analysis. Students should also have an understanding of computer architecture as well as basic C and assembly language programming skills. Finally, students in ECE4703 are expected to have some experience programming in Matlab and an understanding of basic matrix/vector operations in Matlab.