ECE 420
Digital Signal Processing Laboratory

Section Type Times Days Location Instructor
AB1 LAB 1430 - 1620 T   5072 ECE Building  Raymond Yeh
Trong Nguyen
AB2 LAB 1400 - 1550 W   5072 ECE Building  Trong Nguyen
Tianyilin Zhu
AB3 LAB 0900 - 1050 W   5072 ECE Building  Raymond Yeh
Tianyilin Zhu
AL1 LEC 1400 - 1450 M   4070 ECE Building  Stephen Levinson
Web Page
Official Description Development of real-time digital signal processing (DSP) systems using a DSP microprocessor; several structured laboratory exercises, such as sampling and digital filtering; followed by an extensive DSP project of the student's choice. Course Information: 2 undergraduate hours. 2 graduate hours. Prerequisite: ECE 310.
Subject Area Signal Processing
Course Prerequisites Credit in ECE 310
Course Directors Minh N Do
Detailed Description and Outline

To familiarize students with the fundamentals of operating and analyzing real time digital signal processing systems, including the required theory, the hardware used to sample and process the signals, and real time software development environments. An extensive project emphasis develops system-level design skills in a complex, unstructured problem context.


  • Using DSP microprocessor development system
  • Assembly-language programming of DSP microprocessor
  • Audio-rate sampling of analog signals
  • Design and implementation of FIR filters
  • Design and implementation of IIR filters
  • Digital modulation for communications
  • Application of the discrete Fourier transform
  • Projects
Computer Usage

IBM-PC with Windows NT DSP 56300 microprocessor systems Software: Matlab DSP 56300 development tools

Topical Prerequisities
  • Digital signal processing
  • Assembly language programming recommended

A DSP Laboratory using the TMS320 CS49, on-line.


Conference papers describing the ECE 420 course design, goals, methods, and philosophies have been published in:

1. D.L. Jones, "Effective DSP Laboratory Course Design," DSPSFest'99, Houston, Texas, August 4-6, 1999.

2. M.L. Kramer, M. Haun, S. Appadwedula, D.L. Sachs, and D.L. Jones, "Effective Use of Projects in DSP Laboratory Instruction," Proceedings of the First IEEE Signal Processing Education Workshop, Hunt, Texas, October 15-18, 2000.

Assignments and materials for the current semester can be found at the ECE 420 Web site.

ABET Category

Engineering Design: 2 hours

Course Goals

ECE 420 serves several primary and a number of secondary educational goals. Primary goals include:

1. developing a thorough understanding of the central elements of digital signal processing theory (including sampling theory, FIR and IIR filter theory, and spectral analysis) and the ability to apply this theory to real-world signal processing applications,

2. learning real-time signal processing implementation relevant to current industrial practice, and

3. obtaining a significant open-ended engineering design experience through learning, applying, and implementing advanced signal processing methods.

Secondary goals include learning or additional experience in

1. advanced signal processing methods and applications,

2. microprocessor systems and assembly-language programming,

3. software design and development,

4. design project organization and management,

5. oral and written presentation,

6. teamwork, and

7. professionalism

Instructional Objectives

The course can be divided roughly into two halves (a uniform component with weekly laboratory exercises and oral examinations, and a design project phase) each of which addresses somewhat different subsets of primary and secondary course goals.

By the completion of the uniform weekly laboratory assignments (after about eight weeks), the students should be able to do the following:

1. Use a modern real-time DSP hardware system and development environment to implement, debug, and test real-time signal processing algorithms. (a,k)

2. Understand basic DSP microprocessor architecture. (k)

3. Program a DSP microprocessor in assembly language. (a,k)

4. Understand and explain sampling and filter theory, including basic multirate theory, and recognize and analyze artifacts such as aliasing. (a,g,m)

5. Design and implement real-time FIR filters using several different methods, and explain the advantages and disadvantages of the various approaches. (a,c,g,k)

6. Design and implement real-time, fixed-point IIR filters with minimal quantization error and appropriate scaling to prevent saturation and overflow. (a,c,k)

7. Implement a real-time FFT-based spectrum analyzer and identify, understand, and explain the various artifacts introduced by such an implementation. (a,c,g,k,m)

8. Perform basic optimization of handcrafted real-time DSP code. (a,k)

9. Work with, and move seamlessly between, signal processing theory, a high-level signal processing design and simulation environment (e.g., Matlab, high-level language implementations), and a real-time signal processor system (e.g., a TMS320C549 EVM and its accompanying development environment). (b,c,k,m)

10. Work jointly with peers in developing, debugging, and testing code and in completing laboratory assignments. (d)

11. Orally explain technical concepts and observations to other engineers. (g)

By the completion of the course, students should in addition be able to do the following:

1. Use multiple technical information resources (including library resources such as the research literature, the World Wide Web, and consultation with local experts) to independently learn about advanced topics. (e,i,j)

2. Learn and explain key methods and ideas in a signal processing application area. (g,i,j)

3. Develop, refine, defend, implement, and test a significant design for a real-time signal processing application. (a,b,c,d,e,g,k,m)

4. Recognize and evaluate design tradeoffs. (c,e)

5. Professonally present, explain, justify, and defend a proposed design at a formal design review. (f,g)

6. Practice and apply good multi-level software development processes. (k)

7. Complete and demonstrate a successful implementation of a signal processing design project. (c,f,g)

8. Document a signal processing design project, including the principles, procedure, implementation, and testing. (b,f,g)

Last updated: 7/18/2014