DSP Course Syllabus

 

1. General Description

1.1 Course Objectives

After completing the course the student will:

1.   Understand techniques for sampling, filtering and reconstruction of signals.

2.   Program a real DSP.

1.2 Prerequisite

·        Knowledge of a high-programming language.

·        Knowledge of digital design.

·        Experience with a μProcessor system

1.3 Course Organization

The course is composed of:

·        Lectures in which the theory is given.

·        Workshops in which the process of analyzing given designs and understanding their semantics, is performed.

·        Practical exercising.

This document describes: The subjects and the exercises to be given course.

2. Course Subjects

2.1 Introduction to DSP

2.1.1 Lecture

·        DSP and its applications.

·        Motivation

·        Processing a signal

·        Sampling theorem

·        Mathematical representation of analog Signals

·        Mathematical representation of digital signals.

·        Periodic sampling.

·        Ambiguity.

2.1.2 Workshop

·        Graphical versus mathematical presentation of signals.

·        Continuous versus sampled signals.

2.1.3 Practical Exercising

·        Mathematical equations.

·        Graphical presentation.

·        Programming behavior of signals.

2.2 Signal Analysis

2.2.1 Lecture

·        Time domain analysis

·        Linear Time Invariant (LTI) systems

·        System’s response.

·        Convolution.

2.2.2 Workshop

·        Impulse and step response of a system.

·        Response for sinusoidal input.

·        Algorithms to calculate the Convolution.

·        Casual, Stability

 

2.2.3 Practical Exercising

·        Mathematical equations.

·        Programming the behavior of signals.

 

2.3 Frequency Domain Analysis

2.3.1 Lecture

·        Fourier Series.

·        Spectrum analysis

·        Discrete Fourier Series

2.3.2 Workshop

·        Periodic functions.

·        Fourier series of Odd and Even functions.

 

2.3.3 Practical Exercising

·        Graphical presentation of Spectrum

·        Programming DFT.

2.4 Z Transform

2.4.1 Lecture

·        Definition of z-transform.

·        Properties.

·        Relations between frequency and time domain convolutions.

·        Transfer function.

·        Poles and Zeros

·        The relation to Fourier Transform.

 

2.4.2 Workshop

·        Mathematical exercising.

·        Convolution.

·        Spectral analysis

 

2.4.3 Practical Exercising

·        Programming transfer functions.

·        Spectral analysis of transfer functions and processed signals.

 

2.5 Fast Fourier transform (FFT)

2.5.1 Lecture

·        Introduction

·        Spectral analysis.

·        Digital filtering by fast convolution

2.5.2 Workshop

·        Windowing.

·        Convolution.

·        Investigating LTI systems.

·        Signal segmentation.

 

2.5.3 Practical Exercising

Programming FFT.

 

2.6 Digital Filters

2.6.1 Lecture

·        Filters: Round-off noise in digital filters.

·        Infinite Impulse Response filter (IIR).

·        Finite Impulse Response filter (FIR).

·        Infinite Impulse Response filter (IIR), Basic structures of IIR systems,

·        Zero input limit cycle in IIR, Design of IIR from continuous-time filters

 

2.6.2 Workshop

·        Analyzing frequency response.

·        Spectral analysis.

 

2.6.3 Practical Exercising

Programming various filters.

 

2.7 DSP architecture

2.7.1 Lecture

·        Motivation for DSP architecture.

·        Software/Hardware interface.

·        Memory organization.

2.7.2 Workshop

·        Operating SW tools.

·        Running a sample program

 

2.7.3 Practical Exercising

·        Running a filter on a PC.

·        Running the same filter on DSP architecture.

 

2.8 Instruction Set

2.8.1 Lecture

·        Addressing modes.

·        Basic instruction set: Arithmetical/Logical, move, and Jumps.

·        Loop instructions.

2.8.2 Workshop

·        Calculating physical addresses.

·        Special register usage.

·        Programming using C++ and embedded assembly lines.

2.8.3 Practical Exercising

·        Debugging C++ and embedded assembly programs.

·        Exercises from the text-book.

 

2.9 Stack and Interrupts

2.9.1 Lecture

·        Hardware/Software interface:

·        Calling a Procedures/Function.

·        Stack instructions related for Procedures/Function. 

·        Passing parameters via the stack. 

2.9.2 Workshop

·        How a real program runs: Procedure/Function calling, Stack usage.

·        Reading the processor’s data-sheet.

2.9.3 Practical Exercising

Exercises from the text-book.


 

3. Hours Allocation

 

Subject

Lecture

Workshop

Practical Exercising

Total

Introduction to DSP

2

2

2

6

Signal Analysis

2

2

2

6

Frequency Domain Analysis

3

3

2

8

Z Transform

3

2

2

7

Fast Fourier transform(FFT)

4

2

2

8

Digital Filters

4

4

2

10

DSP architecture

2

0

0

2

Instruction Set

2

2

3

7

Stack and Interrupts

2

2

2

6

Defense of the Final Project

4

 

 

4

Total

28

19

17

64

 

 

 

4. Bibliography

1.                        [P94] Pual A. Lynn. And Wolfgang Fuerst. Introductory Digital Signal Processing with Computer Applications. John Wiley & Sons, ISBN 0-471-94374-6, 1994.

2.                        [RG75] Rabiner, L.R. and Gold, B., Theory and Application of Digital Signal Processing. Englewood Cliffs: Prentice-Hall 1975.

3.                        [OS75] Oppenheim, A.V. and Schafer, R.W. Digital Signal Processing. Englewood Cliffs: Prentice-Hall 1975.

4.                        [S2000]  Jonathan (Y) Stein, Digital Signal processing: A computer Science Perspective. John Wiley & Sons, ISBN 0-471-29546-9, 2000.