UNIVERSITY OF ILLINOIS AT URBANA-CHAMPAIGN

Department of Electrical and Computer Engineering

ECE 310: Digital Signal Processing (Spring 2023)

Course Description:

Introduction to discrete-time systems and discrete-time signal processing with an emphasis on causal systems; discrete-time linear systems, difference equations, z-transforms, discrete convolution, stability, discrete-time Fourier transforms, analog-to-digital and digital-to-analog conversion, digital filter design, discrete Fourier transforms, fast Fourier transforms, spectral analysis, and applications of digital signal processing.

 

Course Prerequisite:

ECE 210: Analog Signal Processing

I. Teaching Staff

1. Instructors:

Prof. Zhi-Pei Liang (Sec. D) Prof. Thomas Moon (Sec. E) Corey Snyder (Sec. G)
Office: 4257 Beckman Institute Office: 3060 ECEB Office: 111 CSL
Email: z-liang@illinois.edu Email: tmoon@illinois.edu Email:cesnyde2@illinois.edu

2. Teaching Assistants:

Will Cai (Head TA) Shilan He Ziyang Xu Chuanyi Zhang
Email: wycai2@illinois.edu  Email: shilanh2@illinois.edu  Email: ziyangx2@illinois.edu  Email: chuanyi5@illinois.edu 

II. Schedule

1. Lectures:

Lecture Time Day Location
Section D 9:00 a.m. - 9:50 a.m. M W F
1015 ECEB
Section E 12:00 p.m. - 12:50 p.m. M W F 1013 ECEB
Section G 3:00 p.m. - 3:50 p.m. M W F 1015 ECEB

 

2. Office Hours:

Note:

  • Thomas' online office hour: link 
Time Monday Tuesday Wednesday Thursday Friday
9:00 a.m. - 10:00 a.m.          
10:00 a.m. - 11:00 a.m. Shilan
ECEB-4036
Shilan
ECEB-4036
Chuanyi
ECEB-4036
Chuanyi
ECEB-4036
 
11:00 a.m. - 12:00 p.m. Shilan
ECEB-4036
Shilan
ECEB-4036
Chuanyi
ECEB-4036
Chuanyi
ECEB-4036
 
12:00 p.m. - 1:00 p.m.          
1:00 p.m. - 2:00 p.m.  Will
ECEB-4036
  Will
ECEB-4036
Corey
ECEB-4036
Will
ECEB-4036
2:00 p.m. - 3:00 p.m.     Will
ECEB-4036
   
3:00 p.m. - 4:00 p.m.   Thomas
Online
     
4:00 p.m. - 5:00 p.m.   Ziyang
ECEB-4036
     
5:00 p.m. - 6:00 p.m.   Ziyang
ECEB-4036
     
6:00 p.m. - 7:00 p.m.     Weekly Recitation
ECEB-3015
   

III. Resources

1. Recommended Textbook:

2. Campuswire:

3. Associated Lab Course (Strongly recommended):

4. Additional Resources

The following additional resources cover much of the same material as the lectures and textbook. The syllabus below provides references to these resources as well as the Manolakis and Ingle textbook.

  • SM: ECE 310 Course Notes by Prof. Andrew C. Singer and Prof. David C. Munson Jr. (PDF download)
  • OS: Discrete-Time Signal Processing by Alan V. Oppenheim and Ronald W. Schafer (on reserve at the library)
  • PM: Digital Signal Processing: Principles, Algorithms, and Applications by John G. Proakis and Dimitris G. Manolakis (on reserve at the library)
  • FK: DSP lecture videos from ECE 410, Fall 2003, by Prof. Farzad Kamalabadi. These cover more advanced material than ECE 310.
  • ECE 310 Notation Table: Chart of notation used in lecture, the textbook, and the other resources listed above
  • ECE 310 Course Summary: A brief list of basic concepts.
  • Common transform pairs and properties

IV. Syllabus

Time Topics Reading Assignment Lecture Notes Additional Resources Assessment Due

Week 1:
1/16 - 1/20

No class on 1/16 (MLK)


Course introduction
Continuous-time (CT) and discrete-time (DT) signals
Review of complex numbers
Discrete-time systems
Linear and time-invariant (LTI) systems

Chapter 1: 1.1 - 1.4
Chapter 2: 2.1 - 2.3

Section E: Lec1, Lec2

Section G: Lec1, Lec2

SM: Ch 1, Appendix D, Appendix A, 3.1, 3.3-3.6
OS: 1, 2.1-2.2
PM: 1.1-1.2, 2.1-2.2
FK: 1, 5, 2, 9
Python Demo
What is DSP? - Video by IEEE
DSP at UIUC - 1
DSP at UIUC - 2
 
Week 2:
1/23 - 1/27
Impulse response
Convolution
Difference equations
Chapter 2: 2.4 - 2.7; 2.10

Section E: Lec3, Lec4, Lec5

Section G: Lec3, Lec4, Lec5

SM: 3.7-3.9
OS: 2.3-2.5
PM: 2.3-2.5
FK: 9, 10, 3
Convolution Python Demo
Difference Equations Python Demo
HW1
 
Week 3:
1/30 - 2/3
z-transform
Poles and zeros
Inverse z-transform
Chapter 3: 3.1 - 3.4

 

SM: 4.1-4.5
OS: Ch 3
PM: 3.1-3.5
FK: 6, 7, 8 13
Partial Fractions Python Demo
 
 
HW2
 
Week 4:
2/6 - 2/10
System analysis via z-transform
System transfer function
Stability
Chapter 3: 3.5 - 3.7

 

SM: 4.10-4.14
OS: 5.2
PM: 3.6
FK: 14, 15, 16
Stability Python Demo

 

HW3
 
Week 5:
2/13 - 2/17

Applications of linear system models
Sinusoidal signals
Fourier transforms
Discrete-time Fourier transform (DTFT)

Chapter 4: 4.1 - 4.3

 

SM: 2.1-2.4
OS: 2.6-2.7 PM: 1.3, 4.1
FK: 17
DTFT Python Demo

 


HW4
Week 6:
2/20 - 2/24
Properties of the DTFT
Fourier analysis of LTI systems
Chapter 4: 4.3 - 4.5
Chapter 5: 5.1 - 5.2

 

SM: 2.4, 5.1
OS: 2.8-2.9, 5.1
PM: 4.2-4.4
FK: 18, 19
Filtering Python Demo

 


HW5

Week 7:
2/27 - 3/3

No class on 3/1, Wednesday

Frequency response (magnitude and phase responses)
Ideal filters
Sampling of continuous-time signals

Midterm 1: 3/1, Wednesday

Chapter 5: 5.3 - 5.6
Chapter 6: 6.1

 

SM: 5.2, 3.2
OS: 5.3-5.4, 4.1-4.2
PM: 4.4-4.5, 1.4
FK: 20, 21

 

HW6
 
Week 8:
3/6 - 3/10

Ideal C/D and D/C conversion
Aliasing effect
Discrete Fourier transform (DFT)

Chapter 6: 6.2 - 6.3
Chapter 7: 7.1 - 7.2

 

SM: 3.2, 2.5
OS: 4.2-4.3
PM: 1.4, 4.2.9, 5.1
FK: 22, 34

 


HW7

3/11 - 3/19 Spring break

         
Week 9:
3/20 - 3/24

Discrete Fourier transform (DFT)
Continuous-time frequency response of a DSP system
DFT spectral analysis

Chapter 7: 7.2 - 7.4; 7.6
Chapter 6: 6.4

 

SM: 2.5-2.6
OS: 8.1-8.6, 10.1-10.2
PM: 5.2, 5.4
FK: 34, 36
DFT Python Demo

 

HW8
 
Week 10:
3/27 - 3/31

DFT spectral analysis
Convolution using the DFT
Fast Fourier transform (FFT)

Chapter 7: 7.5
Chapter 8: 8.1; 8.3

 

SM: Ch 14, 6.3
OS: 8.7, 9.3, 6.1-6.2
PM: 5.3, 6.1-6.2, 7.1
FK: 37, 38

 

HW9

Week 11:
4/3 - 4/7

No class on 4/5, Wednesday

Fast Fourier transform (FFT)
FFT-based Fast Convolution and Block Convolution
Block Diagrams and Flow Graphs

Midterm 2: 4/5, Wednesday

Chapter 8: 8.1-8.3 Chapter 9: 9.1

 

SM: 6.3
OS: 6.3-6.5
PM: 7.1-7.2, 8.1
FK: 27, 33

 


HW10

Week 12:
4/10 - 4/14

Downsampling and upsampling

Multirate signal processing

Chapter 12: 12.1 - 12.2  

Multirate Python Demo
Audio for Multirate Python Demo
Image for Multirate Python Demo

HW11

Week 13:
4/17 - 4/21

FIR and IIR filters
Digital filter structures

Chapter 9: 9.1-9.3
Chapter 11: 11.1; 11.3

 

SM: 6.4, Ch 11, Ch 12
OS: 5.7, Ch 7
PM: Ch 8 
FK: 28, 29, 30
Filter Design Demo

 


HW12
Week 14:
4/24 - 4/28
Generalized linear phase
FIR filter design by windowing
Chapter 10: 10.1 - 10.3

 

SM: 5.3, Ch 13
OS: 4.4, 4.6
PM: 9.1, 10.1-10.4
FK: 24, 26


HW13
Week 15:
5/1 - 5/5
Practical A/D and D/A conversion
Oversampling A/D and D/A converters
Applications of DSP
Advanced topics
Chapter 6: 6.5
Chapter 15: 15.3.1
Chapter 15: 15.3

 

SM: Ch 13
OS: 4.8-4.9
PM: 9.2-9.3
FK: 23, 25

 

HW14
 

V. Grading

  1. Weekly Homework: 20% of Final Grade
    • Grading: Homework grade is computed by dropping the two lowest scores and then computing the average; this implies that each student may omit two homeworks in case of extenuating circumstances. Since the solutions will be posted immediately after the submission deadline, no late submission will be accepted.
    • Submission: Homework should be uploaded as a PDF file to gradescope in which we have added each student enrolled, please refer to the following link and video for questions on submission. You can create a gradescope account using your university email ID. Please email Will Cai (wycai2@illinois.edu) if "ECE310" is not shown in your courses.
    • Assigned and due dates: Homework is assigned each Friday, due the following Friday at 5:00 p.m. The corresponding solution will be posted on the due date at 5:00 p.m. Note: On the weeks of midterm exams, the homeworks will be due on the corresponding Sunday.
    • Write neatly: Please box the equations you will be solving and the final answer. If we cannot read it we cannot grade it!
    • Regrade requests must be submitted on gradescope within one week of grades being posted. All regrade requests must have a brief justification.
    • Again, late homework submissions will not be accepted!

  2. Exams (will be held in-person): 80% of Final Course Grade
    • Midterm Exam 1: 22% of Final Course Grade
      • Date: Wednesday, 3/1
      • Location: ECEB 1002
      • Coverage: Material from weeks 1-6, through HW5. 
      • Allow 1 sheet (two-sided) of handwritten notes (no printed notes) on 8.5x11 paper. No calculator allowed.
      • Regrade requests must be emailed to TAs with a scan of your work and a brief justification, by TBD
    • Midterm Exam 2: 22% of Final Course Grade
      • Date: Wednesday, 4/5
      • Location: ECEB 1002
      • Coverage: Materials corresponding HWs from  HW6 to HW9.
      • Allow 2 sheets (two-sided) of handwritten notes (no printed notes) on 8.5x11 paper. No calculator allowed.
      • Regrade requests must be emailed to all TAs with a scan of your work and a brief justification, by TBD
    • Final Exam: 36% of Final Course Grade
      • Date: TBD.
      • Conflict exam date: TBD.
      • Coverage: Material from the whole semester.
      • Allow 3 sheets (two-sided) of handwritten notes (no printed notes) on 8.5x11 paper. No calculator allowed.

VI. Integrity

This course will operate under the following honor code: All exams and homework assignments are to be worked out independently without any aid from any person or device. Copying from any source is not permitted and will be considered cheating, hence subject to the stipulated university policies. By enrolling in this course and submitting exams and homework assignments for grading, each student implicitly accepts this honor code.

VII. Homework Material

Exercises Due Date Solution
HW1 01/27 5:00 p.m.  Solution
HW2 02/03 5:00 p.m.  

VIII. Past Exams

Exam Exercise List
Midterm 1

Fall 2021(with solution)

Spring 2021

Fall 2019

Midterm 2

Fall 2021(with solution)

Spring 2021(with solution)

Fall 2019

Final 

Spring 2021

Spring 2018

Spring 2016