Skip to main content

Unit information: Advanced DSP & FPGA Implementation in 2020/21

Unit name Advanced DSP & FPGA Implementation
Unit code EENGM4120
Credit points 10
Level of study M/7
Teaching block(s) Teaching Block 2 (weeks 13 - 24)
Unit director Dr. Nunez-Yanez
Open unit status Not open

EENG20400 Digital Systems and knowledge of C programming



School/department Department of Electrical & Electronic Engineering
Faculty Faculty of Engineering


The unit covers the topics of FPGA and DSP design as follows:

FPGA: This module extends the knowledge in digital systems with advanced topics in the emergent area of reconfigurable computing and FPGA design. The course will cover state-of-the-art features available in modern FPGAs exploring their fine-grained internal architecture and embedded macro blocks such as DSP slices and hardwired processors. A design language based on C++ will be presented as an alternative to traditional RTL design (VHDL, Verilog). High level synthesis tools will be used to map compute intensive kernels in signal processing applications from a generic DSP core to the FPGA device and the performance advantages will be evaluated.

DSP: This module extends knowledge of signal processing techniques and gives students practical experience of using the state-of-the-art DSPs. The course covers generic techniques for developing design solutions for all DSP devices as well as focussing specifically on the TMS320C6000 DSP processor which is the flagship of Texas Instruments DSPs and also the Davinci DSP processor which is a system on chip with a C6000 DSP and an Arm Processor. It also covers the use of operating systems. This module provides practical experience.

Intended learning outcomes

  1. Develop optimal DSP programs (Exam/Report).
  2. Implement real-time DSP algorithms for communications applications (Exam/Report).
  3. Analyse DSP device architectures and the interfacing with DSP microprocessors (Exam/Report).
  4. Describe general purpose processors and be able to compare them with Digital Signal processors (Exam/Report.
  5. List the features of modern FPGA architectures and their configuration process (Exam/Quiz).
  6. Implement hardware designs in FPGA devices (Exam/Quiz).
  7. Learn to develop C-based programs for hardware design (Exam/Assignment)
  8. Compare FPGA and DSP features and their suitability for different algorithms (Exam/Assignment).

Teaching details

Teaching will be delivered through a combination of synchronous and asynchronous sessions, including lectures, practical activities supported by drop-in sessions, problem sheets and self-directed exercises.

Assessment Details

DSP assignment 50% (ILOs 1,2,3,4,5, 6,7,8)

FPGA assignment 50% (ILOs 1,2,3,4,5, 6,7,8)

The unit has two parts that deal with FPGA and DSP technology and have a weight of 50% each and are taught by different academics. The DSP and FPGA components are assessed with labs completed during class and covered all the learning outcomes.

Reading and References


  • Reference material available in Blackboard


  • Chassaing, R., DSP Applications using C and the TMS320C6x DSK, J. Wiley, ISBN:0-471-20754-3
  • Dahnoun, N., Digital Signal Processing Implementation using the TMS320C6000 Platform, Prentice Hall Pearson Education Ltd, ISBN:0/201/61916/4
  • Dahnoun, N., DSP Implementation using the TMDS320C6711, at