Course pages 2018–19
Digital Signal Processing
Principal lecturer: Dr Markus Kuhn
Taken by: Part II CST 50%
Past exam questions
No. of lectures: 16
Prerequisite courses: Mathematical Methods I and III from the NST Mathematics course (or equivalent), LaTeX and MATLAB (recommended).
Aims
This course teaches the basic signal-processing principles necessary to understand many modern high-tech systems, with application examples focussing on audio processing, audio and image coding, communication systems, and linear feed-back control. Students will gain practical experience from numerical experiments in programming assignments (in MATLAB, NumPy or Julia).
Lectures
Part 1 (about 8-10 lectures) focusses on basic theory and audio applications, and is a prerequisite for the Computer Music unit.
- Signals and systems. Discrete sequences and systems: types
  and properties. Amplitude, phase, frequency, modulation, decibels,
  root-mean square. Linear time-invariant systems, convolution. Some
  examples from electronics, optics and acoustics.
- Phasors and Fourier transform. Eigen functions of linear
  time-invariant systems. Review of complex arithmetic. Phasors as
  orthogonal base functions. Forms and properties of the Fourier
  transform. Convolution theorem. Rect and sinc.
- Dirac’s delta function. Fourier representation of sine
  waves, impulse combs in the time and frequency domain.
  Amplitude-modulation in the frequency domain.
- Discrete sequences and spectra. Sampling of continuous
  signals, periodic signals, aliasing, interpolation, sampling and
  reconstruction, sample-rate conversion, oversampling, spectral
  inversion.
- Discrete Fourier transform. Continuous versus
  discrete Fourier transform, symmetry, linearity, FFT, real-valued
  FFT, FFT-based convolution, zero padding, FFT-based resampling,
  deconvolution exercise.
- Spectral estimation. Short-time Fourier transform, leakage
  and scalloping phenomena, windowing, zero padding. Audio and voice
  examples. DTFM exercise.
- Finite impulse-response filters. Properties of filters,
  implementation forms, window-based FIR design, use of
  frequency-inversion to obtain high-pass filters, use of modulation
  to obtain band-pass filters.
- Infinite impulse-response filters. Sequences as
  polynomials, z-transform, zeros and poles, some analog IIR
  design techniques (Butterworth, Chebyshev I/II, elliptic filters,
  second-order cascade form). Subtractive synthesis exercise.
Part 2 (about 6-8 lectures) adds material on software-defined radio techniques, statistical signals, audio-visual signal compression and linear feedback control systems.
- Band-pass signals. Band-pass sampling and reconstruction,
  IQ up and down conversion, superheterodyne receivers,
  software-defined radio front-ends, IQ representation of AM and FM
  signals and their demodulation.
- Digital communication. Pulse-amplitude modulation.
  Matched-filter detector. Pulse shapes, inter-symbol interference,
  equalization. IQ representation of ASK, BSK, PSK, QAM and FSK
  signals. Clock recovery. Spectral characteristics of binary
  sequences. OFDM. [2 hours]
- Random sequences and noise. Random variables, stationary
  processes, autocorrelation, crosscorrelation, deterministic
  cross-correlation sequences, filtered random sequences, white noise,
  exponential averaging.
- Correlation coding. Random vectors, dependence     versus correlation, covariance, decorrelation, matrix
  diagonalization, eigen decomposition, Karhunen-Loève transform,
  principal component analysis. Relation to orthogonal transform
  coding using fixed basis vectors, such as DCT.
- Lossy versus lossless compression. What information is
  discarded by human senses and can be eliminated by encoders?
  Perceptual scales, audio masking, spatial resolution, colour
  coordinates, some demonstration experiments.
- Quantization, image coding standards. Uniform and
  logarithmic quantization, A/mu-law coding, dithering, delta coding,
  JPEG.
- Computer Music demonstrations.
Objectives
By the end of part 1 of the course students should be able to
- apply basic properties of time-invariant linear
  systems;
- understand sampling, aliasing, convolution, filtering, the
  pitfalls of spectral estimation;
- explain the above in time and frequency domain representations;
- use filter-design software;
- visualize and discuss digital filters in the z-domain;
- use the FFT for convolution, deconvolution, filtering;
- implement, apply and evaluate simple DSP applications;
By the end of part 2, students should be able to discuss and explain many fundamental concepts of techniques commonly used in digital communication and control systems in terms of the concepts introduced in part 1.
Recommended reading
* Lyons, R.G. (2010). Understanding digital signal processing. Prentice Hall (3rd ed.).
Oppenheim, A.V. & Schafer, R.W. (2007). Discrete-time digital signal processing. Prentice Hall (3rd ed.).
Stein, J. (2000). Digital signal processing - a computer science perspective. Wiley.