Fundamentals of Digital Signal Processing (DSP)
A 3-day introductory digital signal processing course for engineers and scientists. Learn the maths behind DSP — convolution, FFT, z-transform — then model FIR and IIR filters, adaptive equalisers and Kalman filters in Sage or MATLAB, with ten hands-on practicals.
Synopsis
Digital signal processing (DSP) is the backbone of numerous technological fields, such as wired and wireless communication, military and intelligence gathering, industrial process control, medical science, cryptography and transportation, just to name a few. DSP algorithms such as spectral analysis and Kalman filtering -- traditionally executed with specialised digital signal processors -- are now increasingly carried out with FPGAs for their greater processing capabilities, increased chip-level integration and lower power consumption. The move towards FPGAs also mean DSP algorithms are now "coded" in hardware description languages rather than assembly, C, or C++.This course concentrates on DSP theory, with a heavy emphasis on mathematical modelling. To ease understanding, simple practical exercises on a few key mathematical fundamentals of DSP systems will also be carried out.
Course highlights
Participants will have practical design experience using mathematical modelling tools (e.g. Sage or Matlab).What You Will Learn
This course concentrates on the theoretical and practical knowledge to allow participants to achieve the following learning outcomes. Upon completing the course, participants would be able to:- Understand the theory and mathematics behind signal processing systems.
- Model DSP systems using Sage or Matlab.
Who Should Attend
This course is particularly suitable as an introductory-level course in digital signal processing (DSP) for engineers and scientists.Prerequisites
Participants should have a diploma/degree in electronics (and related) engineering with an understanding of digital systems. Working knowledge on DSP theory is encouraged, but not required.Course Methodology
This course is presented in a workshop style with example-led lectures interlaced with demonstrations and hands-on practical for maximum understanding.Course Duration
Three (3) days, 0900 to 1700.Course Structure
- Introduction
- Overview of digital signal processing.
- Discrete-time vs. continuous-time: Analogies and similarities.
- Applications of DSP
- Digital filtering and equalisation.
- Source coding: data compression, encryption, scrambling.
- Image/video processing, audio/speech processing.
- Digital communications systems.
- Digital control systems.
- DSP fundamentals
- Discrete-time (DT) vs. continuous-time (CT) systems and notations.
- Difference equations.
- Convolution sum: A widely-used concept for DSP designs.
- The unit impulse excitation and response for determining system characteristics.
- Concept of convolution.
- Similarities between the DT convolution sum and the CT convolution integral.
- Responses of systems to other standard impulse excitations.
- The Fourier series.
- Time-to-frequency transformations: the Laplace, Fourier, and z transforms.
- The Laplace transform.
- The Fourier transform.
- The discrete Fourier transform (DFT).
- The fast Fourier transform (FFT): a popular DFT algorithm.
- Hands-on Practical 1: Modelling the FFT algorithm.
- The z-transform.
- Similarities between the DT z-transform, and the CT transforms such as Laplace (s-domain) and Fourier transforms.
- Correlation, energy spectral density, power spectral density
- The correlation function.
- Autocorrelation.
- Cross correlation.
- Similarities and differences between correlation functions and convolution.
- Energy spectral density (ESD).
- Power spectral density (PSD).
- Relation of ESD and PSD to autocorrelation.
- Digital filter design techniques
- Revision of analogue (CT) filters: Butterworth, Chebyshev, and Bessel.
- Overview of digital filter design techniques: bilinear transform, matched z-transform, impulse invariance, step invariance, difference equation approximation.
- Infinite-impulse-response (IIR) versus finite-impulse-response (FIR) filters.
- Infinite impulse response filters
- Overview of infinite impulse response (IIR) filters.
- Bilinear transformation.
- Hands-on Practical 2: Modelling a DT Butterworth IIR filter using the bilinear transformation.
- Matched z-transform.
- Hands-on Practical 3: Modelling a DT Chebyshev IIR filter using the matched z-transform.
- Impulse-invariant and step-invariant design techniques.
- Hands-on Practical 4: Modelling a DT Chebyshev IIR filter using the impulse-invariant technique.
- Frequency transformation - high-pass, band-pass, band-stop.
- Finite impulse response filters
- Overview of finite impulse response (FIR) filters.
- Finite-duration impulse responses: truncation of infinite-duration impulse responses.
- A simple finite impulse response (FIR) filter: the averaging filter.
- Hands-on Practical 5: Modelling an averaging filter.
- FIR filter design: deriving filter coefficients from a given filter specification.
- Windowing method.
- Parks-McClellan method.
- Hands-on Practical 6: Modelling of a parameterisable FIR filter.
- Adaptive equalisation/filtering
- Overview of estimation theory
- Maximum-likelihood (ML) estimators.
- Hands-on Practical 7: Modelling an adaptive channel estimator using ML sequence detection.
- Adaptive linear equalisers
- Zero-forcing equaliser.
- Least-mean-square (LMS) equaliser: Mean-square-error minimisation.
- Wiener equaliser / filter.
- Hands-on Practical 8: Modelling a Wiener equaliser.
- Adaptive decision-feedback equaliser (DFE).
- Hands-on Practical 9: Modelling an adaptive DFE.
- Recursive least-squares (RLS) algorithms for adaptive equalisation
- Kalman equaliser / filter (Kalman algorithm).
- Lattice filter (linear prediction algorithm).
- Hands-on Practical 10: Modelling a Kalman equaliser.
- Blind equalisers.
- Overview of estimation theory
- [Optional]: Advanced topics.
- 2-D convolution.
- 2-D FIR: spatial filtering.
- Median filtering.
- 2-D DFT and 2-D FFT.
Continue Your DSP Design Journey
Once you've completed this theory foundation, put it into practice in our hands-on DSP design in VHDL course, where these mathematical models are implemented and synthesised as real FPGA hardware.Related DSP & VHDL Courses
- Digital Signal Processing (DSP) Techniques with VHDL
- VHDL Simulations and Testbenches
- Developing AMBA AXI-compliant Modules for System-On-Chip Designs
Frequently Asked Questions
- Is this DSP course suitable for beginners?
- Yes. Fundamentals of DSP is an introductory-level course for engineers and scientists. Working knowledge of DSP theory is encouraged, but not required.
- Which digital filters are covered in the course?
- The course covers IIR filters (Butterworth and Chebyshev, using the bilinear transform, matched z-transform and impulse invariance), FIR filters (windowing and Parks-McClellan methods), and adaptive filters including LMS, Wiener, decision-feedback and Kalman equalisers.
- Which software tools are used for the practicals?
- Participants model DSP systems using mathematical modelling tools such as Sage or Matlab, across up to ten hands-on practical sessions.
- How long is the Fundamentals of DSP course?
- The course runs for three days, from 0900 to 1700 each day.
- What should I take after this course?
- After learning the theory, continue with DSP Techniques with VHDL, where these DSP models are implemented and synthesised as real FPGA hardware.