This course introduces fundamental concepts, algorithms and applications of digital signal processing.  Starting from a description of how signals can be represented as digital waveforms and how systems may be modelled as digital filters, the course investigates the processing and analysis of signals using the most common approaches and algorithms.




            The course is structured into 8 'Units' each of which covers a well-defined sub-topic of digital signal processing, from basic concepts to modern applications.  These units are presented over approximately 10 'Sessions' of class work.  Each session of class work involves a lecture, a practical class and a homework assignment.




            MRes students:


            The course is assessed partially by coursework and partially by written examination.  There is one piece of coursework, which involves the design and implementation of a signal processing application and the explanation of how it works.  The written examination will be taken as part of other examinations in the Spring term.


            MSc students


            The course is assessed entirely by coursework.  The coursework involves the design and implementation of a signal processing project application and the explanation of how it works.




            The course is not centred on a mathematical description of digital signal processing but rather on algorithms.  Mathematics is used to support and to explain the algorithm rather than as an end in itself.  Each unit is presented firstly in terms of the physical concepts, using models and graphical representations as far as possible.  Secondly, the unit is presented in terms of computer code (in a modern programming language) which provides a basic implementation of the concepts, supported where necessary by a mathematical description.  Thirdly, the student has an opportunity to implement a small application of the technique using a mixture of his/her own code and the algorithm as presented.




            The digital signal processing course is supported by considerable computational resources: a specially-implemented set of C++ classes for signal processing; all algorithms on-line for student use; a collection of signals for analysis; utility software for signal display, annotation and analysis.  Networked computer work-stations each with graphics and sound replay provide a productive working environment.  Each student will be given their own account on the Departmental computer system and may use the computer facilities outside class time.


Recommended Texts




M.L.Meade & C.R.Dillon, “Signals and Systems: Models and Behaviour”, Chapman Hall, 1991.




            *P.A. Lynn, W. Fuerst, B.Thomas, "Introductory Digital Signal Processing with Computer Applications", John Wiley, 1997.


            M.H.Hayes, "Digital Signal Processing", Schaum's Outline Series, McGraw Hill, 1999.




            S.J.Orfanidis, “Introduction to Signal Processing”, Prentice Hall, 1996.



            *It is strongly recommended that all students should buy the Lynn and Fuerst book.










Unit 1

Unit 2

Programming environment

Mathematical environment

Exercise 1

Exercise 2


Unit 3

Digital waveforms

Exercises 3

3, 4

Unit 4

Digital system models

Exercises 4.1
Exercises 4.2


Unit 5

Unit 6

Discrete Fourier transform


Exercises 5 Coursework set
Exercises 6


Unit 7


Digital filter design


Exercises 7.1
Exercises 7.2


Unit 8

Linear prediction

Exercises 8.1
Coursework due