332:346 Digital Signal Processing

Course Catalog Description: 

14:332:346 – Digital Signal Processing (3)
Introduction to digital signal processing, sampling and quantization, A/D and D/A converters, discrete time systems, convolution, z-transforms, transfer functions, digital filter realizations, fast Fourier transforms, analog & digital filter design, digital audio applications.

Pre-Requisite Courses: 

14:332:345 (and 347) - Linear Systems and Signals (and Lab). C or MATLAB programming experience is required.

Co-Requisite Courses: 

14:332:348 (mandatory associated DSP lab)

Pre-Requisite by Topic: 

1. Complex numbers and trigonometry
2. Differential and integral calculus
3. Linear time-invariant systems
4. Convolution and transfer functions
5. Laplace transforms and z-transforms
6. Difference equations

Textbook & Materials: 

S. K. Mitra, Digital Signal Processing, 4th ed., McGraw-Hill, 2011, or equivalent.
S.J. Orfanidis, Introduction to Signal Processing, Prentice-Hall, 1996, and available freely online from: http://www.ece.rutgers.edu/~orfanidi/intro2sp/


MatLab: Student Version, Current Edition, The MathWorks, Inc.

Overall Educational Objective: 

To introduce the basic principles, methods, and applications of digital signal processing, emphasizing its algorithmic, computational, and programming aspects.

Course Learning Outcomes: 

A student who successfully fulfills the course requirements will have demonstrated:
1. Understanding of the two key DSP concepts of sampling and quantization, and the practical issues involved in sampling, aliasing, and analog reconstruction of signals, and in choosing and defining specifications for anti-aliasing pre-filters and anti-image post-filters.
2. Understanding of the quantization process and some practical implementations of A/D and D/A converters such as the conversion algorithm for bipolar two's complement successive approximation converters.
3. Understanding of basic discrete-time systems concepts, such as linearity, time-invariance, impulse response, convolution, FIR and IIR filters, causality, stability, z-transforms, transfer functions, frequency response, time constants, transient and steady-state response.
4. Understanding of how to implement digital filters in software and hardware, using block processing methods based on convolution, or real-time sample-by-sample processing methods based on block diagram realizations that are implemented with linear or circular delay-line buffers.
5. Ability to translate a filter’s transfer function into block-diagram realizations, such as direct, canonical, transposed, and cascade forms. And conversely, the ability to start with a given block diagram, determine its transfer function, and translate it into a real-time processing algorithm implementable in software or hardware.
6. Understanding of various digital filter design methods meeting prescribed specifications, such as pole/zero placement or bilinear transformation methods, and appreciating design tradeoffs between the specifications and filter order, time constant, and pole locations.
7. Understanding of the discrete Fourier transform and the fast Fourier transform and their use in spectral analysis, data compression, and fast convolution. Understanding of the tradeoffs between frequency resolution and signal duration and the use of windows for reducing frequency leakage. Ability to perform short FFTs by hand.

How Course Outcomes are Assessed: 



N = none S = Supportive H = highly related



Proficiency assessed by

(a) an ability to apply knowledge of Mathematics, science, and engineering


HW Problems, Exams

(b) an ability to design and conduct experiments and interpret data



(c) an ability to design a system, component or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability


Digital filter design examples meeting prescribed specifications

(d) an ability to function as part of a multi-disciplinary team



(e) an ability to identify, formulate, and solve ECE problems


HW Problems, Exams

(f) an understanding of professional and ethical responsibility



(g) an ability to communicate in written and oral form


HW Problems, exams

(h) the broad education necessary to understand the impact of electrical and computer engineering solutions in a global, economic, environmental, and societal context



(i) a recognition of the need for, and an ability to engage in life-long learning


Home-work, emphasized during lectures

(j) a knowledge of contemporary issues



(k) an ability to use the techniques, skills, and modern engineering tools necessary for electrical and computer engineering practice


HW Problems, Exams

Basic disciplines in Electrical Engineering


HW Problems, Exams

Depth in Electrical Engineering


HW Problems, Exams

Basic disciplines in Computer Engineering


Programming DSP algorithms in C, MATLAB, and assembly language for DSP chips

Depth in Computer Engineering


Software and hardware programming

Laboratory equipment and software tools


Analog Devices DSP-2181 digital signal processor. Programming in C, MATLAB, and DSP software development environment

Variety of instruction formats


Lecture, office hour discussions

  • Pre-requisite Quiz (ABET): 3%
  • Homeworks (3% each): 12%
  • Random attendance: 10%
  • Midterm 1: 20%
  • Midterm 2: 20%
  • Final Exam (cumulative): 35%


Topics Covered week by week: 





Signal and Signal Processing



Closed book



Discrete-Time Signals and Systems



First Recitation



Discrete-Time Fourier Transform



Second Recitation

HW1 due


Closed book

MIDTERM 1 (20%)


Digital Processing of Continuous-Time Signals



Finite-Length Discrete Transform



Third Recitation

HW2 due





Fourth Recitation

HW3 due


Closed book

MIDTERM 2 (20%)

24, 25

LTI Discrete-Time Systems in the Transform Domain


26, 27

Digital Filter Structure



Fifth Recitation

HW4 due


Closed book


Computer Usage: 

DSP algorithm programming in C, MATLAB, and Assembly Language.

Laboratory Experiences: 

14:332:348 Digital Signal Processing Laboratory (mandatory)

Design Experiences: 

HW problems in designing digital filters using various techniques. In conjunction with 332:348, designing and programming real-time audio signal processing algorithms on DSP hardware.

Independent Learning Experiences : 

1. Homework, 2.MATLAB programming, 3.Testing (Quizzes, Exams)

Contribution to the Professional Component: 

(a) College-level Mathematics and Basic Sciences: 0.5 credit hours
(b) Engineering Topics (Science and/or Design): 2.5 credit hours
(c) General Education: 0.0 credit hours
Total credits: 3

Prepared by: 
 Profs. Sophocles Orfanidis and Dario Pompili
 April, 2011