ECE 4522/5514: Digital Signal Processing

Course Syllabus

Contact Information:

  Lecture     W: 17:30 PM - 20:20 PM   (ENGR 309)
  Lecturer     Joseph Picone, Professor  
  Office: EA 703A  
  Office Hours: (M) 8 AM - 10 AM, (W) 8 AM - 11 AM, (F) 8 AM - 9 AM, (F) 11 AM - 12 PM  
  Phone: 215-204-4841  
  Email: picone@temple.edu  
  Skype: joseph.picone  
  Social Media     https://www.facebook.com/groups/temple.engineering.ece4522/  
  temple.engineering.ece4522@groups.facebook.com  
  Email     http://groups.google.com/group/temple-engineering-ece4522  
  temple-engineering-ece4522@googlegroups.com  
  Website     http://www.isip.piconepress.com/courses/temple/ece_4522  
  Textbook     S. Orfanidis
  Introduction to Signal Processing  
  URL: http://www.ece.rutgers.edu/~orfanidi/intro2sp/  
  Reference Textbooks     D. Manolakis and V. Ingle
  Applied Digital Signal Processing, 2nd Edition  
  Cambridge University Press (1st Edition)  
  November 21, 2011, 1008 pages  
  ISBN: 978-0521110020  
  URL: Applied Digital Signal Processing (1st Edition)  

  A. Oppenheim and R. Shaffer
  Discrete-time Signal Processing, 3rd Edition  
  Prentice-Hall  
  August 28, 2009, 1120 pages  
  ISBN: 978-0131988422  
  URL: Discrete-time Signal Processing (3rd Edition)  

  J. G. Proakis and D. G. Manolakis
  Digital Signal Processing: Principles, Algorithms, and Applications  
  Prentice-Hall  
  April 7, 2006, 1006 pages  
  URL: Digital Signal Processing: Principles, Algorithms, and Applications (4th Edition)  
Other Reference Materials   ECE 4773: Digital Signal Processing  
  MIT Open Courseware: Digital Signal Processing  
  dspGuru
  Prerequisites     D- or better in ECE 3522  


Lecture Grading Policies:

  Item  
  Weight  
  Exam No. 1     10%  
  Exam No. 2     10%  
  Exam No. 3     10%  
  Final Exam     20%  
  Computer Assignments     40%  
  Homework Assignments     10%  
  TOTAL:     100%  


In your undergraduate Signals and Systems course, you should have learned the basics of discrete-time systems (e.g., the Sampling Theorem, Fourier Analysis, digital filtering). In this course, we take a more advanced theoretical view of these topics and also reinforce them using C/C++ programming examples. Digital Signal Processing (DSP) is pervasive - any multimedia device or information source uses many aspects of DSP to achieve real-time information transmission. The goal of this course is to make you feel comfortable learning implementing new algorithms in run-time efficient systems. This requires a firm grasp of the theory and knowledge of how to efficiently implement that theory.

We will have three in-class exams in this course and a comprehensive final. Each in-class exam will be closed books and notes. You will be allowed one page (double-sided) of notes for the in-class exams. For the final exam you will be allowed four pages of notes, presumably the same notes you used for the in-class exams. The exams will resemble the homework problems, so it is important that you thoroughly study the homework problems.

Unannounced quizzes will be given periodically throughout the course to encourage you to attend lecture classes and keep up with the daily work. If you miss a quiz without a prior excuse from the instructor, you receive a zero for that quiz with no exception. Make-up quizzes will not be given. The same policy applies to in-class exams and the final exam as well.

Detailed homework solutions will be prepared in an 8.5"x11" notebook. You are required to use a three-ring binder with tab dividers labeled by the homework assignment number and type (e.g., "HW #7" or "CA #3"). These will be turned in during each exam and graded. Students are expected to prepare detailed solutions that include a problem statement and a well-documented step-by-step solution. Students can collaborate on homework solutions, but the solutions you provide must be unique. Grading will take into account the accuracy of your solution as well as the quality of your explanation. Simply providing answers with no explanations gets no credit.

There will be weekly computer assignments that involve C/C++ programming, and verification of your results in MATLAB. These will be based on real world data. A template for the solutions to be turned in is provided here: here. You must conform to the template provided. The easiest way to do this is to start an assignment by editing the template provided and to use the format painter tool in Word. Consult with your Technical Communications instructor if you have questions about how to do various things in Word or have questions about what is expected for content.

Lecture Schedule:

Though this course is scheduled for a once-a-week lecture, we will split this into three 50-minute lectures. We will cover the following topics:

   

  Class  
  Date  
  Sections  
  Topic(s)  
1
01/13
  1.1 - 1.4  
  Sampling and Reconstruction:  
    Basic Components of a DSP System  
    Review of Analog Signals  
    The Sampling Theorem       Sampling of Sinusoids  
2
01/13
  1.5  
  The Spectra of Sampled Signals:  
    Discrete-Time Fourier Transform  
    Spectrum Replication  
    Antialiasing Filters  
3
01/13
  1.6 - 1.8  
  Analog Reconstruction:  
    Ideal Reconstruction  
    Ideal Interpolation and Sample Rate Conversion  
    Staircase Reconstructors and Postfiltering  
4
01/20
  2.1, 2.2  
  Quantization:  
    The Quantization Process  
    Oversampling and Noise-Shaping  
5
01/20
  2.4, 2.5  
  A/D Conversion:  
    Successive Approximation  
    Analog and Digital Dither  
6
01/20
  2.3  
  D/A Converters:  
    Unipolar Natural Binary Converter  
    Two's Complement Codes  
    Binary Data Files in Unix  
    Quiz  
7
01/27
  3.1 - 3.6  
  Discrete-Time Systems:  
    Linearity and Time-Invariance  
    Impulse Response  
    FIR and IIR Filters  
    Causality and Stability  
8
01/27
  4.1  
  FIR Filtering and Convolution:  
    Convolution  
    Direct Form  
    Graphical Convolution  
9
01/27
  4.2
  Real-Time Filtering:  
    Programming Considerations  
    Buffering  
    Hardware Realizations  
10
02/03
  5.1 - 5.3
  Z-Transforms:  
    Basic Properties  
    Region of Convergence  
    Causality and Stability  
11
02/03
  5.4, 5.5  
  Z-Transforms:  
    Frequency Spectrum  
    Inverse Z-Transforms  
12
02/03
  6.1 - 6.3  
  Transfer Functions:  
    Definitions  
    Sinusoidal Response  
13
02/10
  6.4  
  Pole/Zero Designs:  
    First-Order Filters  
    Parametric Resonators  
    Notch and Comb Filters  
14
02/10
  6.5  
  Deconvolution:  
    Inverse Filters  
    Stability  
15
02/10
  Exam No. 1  

  Chapters 1-4  

16
02/17
  7.1 - 7.4  
  Binary Representations:  
    ASCII and Binary Revisited  
    Finite Precision Filter Coefficients  
    Finite Precision Math  
17
02/17
  7.1 - 7.4  
  Digital Filter Realizations:  
    Direct Form  
    Canonical Form  
    Cascade Form  
18
02/17
  7.5, 7.6  
  Hardware Realizations:  
    DSP Architectures  
    Circular Buffers  
    Quantization Effects  
19
02/24
  8.1  
  Signal Processing Applications:  
    Waveform Generators  
    Table Lookups  
    Delays and Echoes  
20
02/24
  8.2  
  Digital Audio Effects:  
    Flanging, Chorusing and Phasing  
    Reverberation  
    Compressors and Expanders  
21
02/24
  8.3  
  Noise Reduction and Signal Enhancement:  
    Noise Reduction Filters  
    Notch and Comb Filters  
--
03/02
 
Spring Break
 
--
03/02
 
Spring Break
 
--
03/02
 
Spring Break
 
22
03/09
  8.3  
  Noise Reduction and Signal Enhancement:  
    Signal Averaging  
    Golay Filters  
23
03/09
  9.1 - 9.3  
  DFT / FFT Algorithms:  
    Frequency Resolution and Windowing  
    DTFT Computation  
    Resolution Revisitied  
24
03/09
  9.4 - 9.7  
  DFT / FFT Algorithms:  
    The Matrix Form  
    Modulo-N Reduction  
    Inverse DFT  
25
03/16
  9.8, 9.9  
  DFT / FFT Algorithms:  
    The Fast Fourier Transform (FFT)  
    Radix 2 Transforms  
    Bit Reversal and Shuffling  
    Fast Convolution  
26
03/16
  10.1 - 10.4  
  FIR Filter Design:  
    The Window Method  
    The Kaiser Window Method  
    Frequency Sampling Methods  
27
03/16
  11.1, 11.2  
  IIR Filter Design:  
    Bilinear Transform  
    First-Order Lowpass Filters  
    First-Order Highpass Filters  
28
03/23
  11.3, 11.4  
  IIR Filter Design Using Analog Prototypes:  
    Derivatives  
    Impulse Invariance  
    Bilinear Transform  
    Notch Filters  
    Equalizers  
29
03/23
  11.5, 11.6  
  IIR Filter Design Using Analog Prototypes:  
    Butterworth  
    Chebyshev  
    Elliptic Filters  
    Transformations  
30
03/23

  Exam No. 2  

  Chapters 5-8  
31
03/30
  12.1 - 12.4  
  Interpolation:  
    Sinc Functions (Review)  
    Linear Filtering  
    Polyphase Filters  
32
03/30
  12.5 - 12.7  
  Oversampling:  
    Noise Shaping  
    Differential Sampling  
    Sigma Delta Converters  
33
03/30
  N/A  
  Multirate Signal Processing:  
    Filter Banks  
    Downsampling  
    Quadrature Mirror Filters  
34
04/06
  N/A  
  Random Signals and Systems:  
    Random Processes  
    Correlation and Covariance  
    Gaussian Distributions  
35
04/06
  N/A  
  Linear Prediction:  
    Derivation  
36
04/06
  N/A  
  Linear Prediction:  
    The Autocorrelation Method  
    Prediction Error  
37
04/13
  N/A  
  Linear Prediction:  
    Digital Filter Interpretation  
    Lattice Methods  
    Coefficient Transformations  
    Quantization  
38
04/13
  N/A  
  Homomorphic Processing:  
    Transformations  
    The Complex Cepstrum  
    Relationship to Linear Prediction  
    Blind Source Separation  
39
04/13

  Exam No. 3  

  Chapters 9-12  
40
04/20
  N/A  
  Review:  
    Linear Systems  
    Z-Transforms  
    Fourier Transforms  
    Filters  
41
04/20
  N/A  
  Pattern Recognition and Machine Learning:  
    Introduction  
    Speech Recognition  
    Image Recognition  
42
04/20
  N/A  
  EEG Processing:  
    Feature Extraction  
    Event Detection  
    Spatial and Temporal Postprocessing  
43
05/04

  Final Exam  

  17:45 PM - 19:45 PM (Comprehensive)


Please note that the dates above are fixed since they have been arranged to optimize a number of constraints. If you have conflicts with other classes, such as too many exams within the same week, we need to resolve that the first week of classes.

Homework:

The textbook homework schedule is as follows:

  HW  
  Due Date  
  Item(s)  
1
01/20
  1.2, 1.6, 1.7, 1.10  
2
01/27
  2.1, 2.3, 2.4, 2.6, 2.9, 2.10  
3
02/03
  3.1, 3.2, 3.3, 3.4  
4
02/03
  4.1, 4.3, 4.5, 4.15  
5
02/10
  5.2, 5.3, 5.8, 5.9  
6
02/17
  6.1, 6.2, 6.5, 6.13  
7
02/24
  7.1, 7.3, 7.4, 7.5  
8
03/09
  8.1, 8.2, 8.9, 8.17  
9
03/16
  9.1, 9.2, 9.3, 9.9  
10
03/23
  10.1, 10.5, 10.11, 10.15  
11
03/30
  11.1, 11.3, 11.11, 11.12  
12
TBD
  TBD  
13
TBD
  TBD  


The computer assignment schedule is as follows:

  CA  
  Due Date  
  Item(s)  
1
01/20
  Real-Time Audio  
2
01/27
  Signal Interpolation  
3
02/03
  Real-Time Filtering  
4
02/10
  Transfer Functions  
5
02/17
  Digital Filter Realizations  
6
02/24
  Digital Audio Effects  
7
03/09
  Spectral Analysis  
8
03/16
  Digital Filter Design  
9
TBD
  TBD  
10
TBD
  TBD  
11
TBD
  TBD  
12
TBD
  TBD  


University Policy Statements: