Search course

Use the search function to find more information about the study programmes and courses available at Chalmers. When there is a course homepage, a house symbol is shown that leads to this page.

Graduate courses

Departments' graduate courses for PhD-students.


Syllabus for

Academic year
MCC150 - Implementation of digital signal processing systems  
Konstruktion av DSP-system
Syllabus adopted 2019-12-02 by Head of Programme (or corresponding)
Owner: MPEES
7,5 Credits
Grading: TH - Five, Four, Three, Fail
Education cycle: Second-cycle
Major subject: Computer Science and Engineering, Electrical Engineering

Few seats available
Teaching language: English
Application code: 15114
Open for exchange students: Yes
Block schedule: A
Maximum participants: 20

Module   Credit distribution   Examination dates
Sp1 Sp2 Sp3 Sp4 Summer course No Sp
0118 Project 4,0 c Grading: TH   4,0 c    
0218 Laboratory 3,5 c Grading: UG   3,5 c    

In programs



Zhongxia Simon He

  Go to Course Homepage


In order to be eligible for a second cycle course the applicant needs to fulfil the general and specific entry requirements of the programme that owns the course. (If the second cycle course is owned by a first cycle programme, second cycle entry requirements apply.)
Exemption from the eligibility requirement: Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling these requirements.

Course specific prerequisites

Recommended prerequisites or equivalent experience:
  • MATLAB and signal processing fundamentals such as transforms and filtering (for example, SSY130 Applied signal processing).
  • Basic knowledge on communication system (for example, Digital communication ESS140)
  • VHDL/Verilog and FPGA systems (for example, EDA322 Digital design or DAT093 Introduction to electronic system design).
  • Concepts related to analog to digital conversion (for example, DAT116 Mixed-signal system design)


We live in an era where more and more information is generated, stored and presented in a digital format: text, audio, pictures, video, well even currency. Digital signal processing (DSP) is a technology that supports not only our current lifestyle, but it will be even more essential in the future. By using different design approaches, DSP systems can be implemented on various platforms; from software inside a computer, to dedicated application-specific integrated circuits (ASICs) inside a cell phone. What implementation platform to use and what design approach to use, these choices depend on the DSP algorithm and the requirements of the application.

The first aim of this course is to introduce students to the implementation of DSP systems on different platforms, e.g., Field Programmable Gate Arrays (FPGAs), programmable signal processors, and ASICs. The second aim is to introduce design flows that allow designers to make trade-offs, e.g., between performance and power dissipation, as they carry out system implementation of DSP algorithm specifications. Specifically, we will address DSP implementation using mainstream FPGAs (e.g., Altera or Xilinx) in depth, for a few selected system applications (e.g., wireless communication, fiber communication, and radar). While the focus of the laboratory work and the design project is on FPGAs, DSP implementation using signal processors and ASICs will also be addressed and the three different DSP implementation platforms will be compared and contrasted.

Learning outcomes (after completion of the course the student should be able to)

- Describe a typical design flow for DSP systems, considering different DSP implementation platforms (for example, ASIC, FPGA, signal processor, and GPU) and implementation aspects such as parallelism, pipelining (folding), and fixed-point numbers
- Describe and analyze basic DSP building blocks, such as finite impulse response (FIR) filters, fast Fourier transform (FFT) blocks, direct digital synthesizers (DDSs), adaptive filters, equalizers, and carrier recovery blocks
- Describe how a DSP function can be implemented using different hardware resources and explain the trade-off between performance and resources
- In MATLAB, develop model components that are equivalent to hardware blocks, in order to simulate and optimize DSP circuits and systems
- Use professional design software tools for DSP design entry, simulation, implementation, debugging, and final deployment on an FPGA evaluation board to perform real-time DSP
- Evaluate DSP algorithms and their implementations with respect to, for example, silicon area utilization, data throughput, data latency, and power consumption
- Elaborate on advantages and limitations of implementing DSP using FPGAs, the main design trade-offs involved, and the performance that can be expected when using FPGAs versus signal processors versus ASICs


Review of basic concepts such as sampling, quantization and filtering. Number representation and arithmetic for DSP. Filter and FFT hardware structures. Hardware parallelism and pipelining to increase throughput. DSP implementation for FPGA architectures. DSP subsystems, such as direct digital synthesizers (DDS), equalizers and carrier recovery, and their FPGA implementations. Design considerations, including analog-digital conversion, for real-time communication systems on FPGA evaluation boards. Case studies/guest lectures on applications, which may include wireless systems, fiber-optic systems, and radar systems.


Lectures: These will describe where and how DSP is needed in different applications and exemplify such applications. They will also introduce the theoretical background needed for DSP implementation and provide DSP implementation examples.

Lab exercises: These offer hands-on training on industrially relevant design problems using DSP design software tools. Guided by a lab PM, the students will complete the design task and verify their DSP implementation using simulations and tests in hardware.

Design project: The students work in groups to design and implement a DSP system on an FPGA-platform, to achieve certain performance. The students will receive teacher support during the project period.


Beside hand-out material like the lab PM, the course literature will include chapters from these books:

- Uwe Meyer-Baese, Digital Signal Processing with FPGA, 4th ed., Springer 2014
- Dejan Markovic and Robert W. Brodersen, DSP Architecture Design Essentials, Springer 2012

Examination including compulsory elements

There are two elements in this course: lab exercises and design project.

Lab exercises (pass or fail): These include guided lab sessions and home assignments.

Design project (fail, 3, 4, or 5): The students will be working in groups to implement a DSP system for a certain application. The students need to design, verify, and demonstrate a working DSP system prototype, as well as present their work as a scientific report. Here, the grade will based on each student's individual performance as well as the performance as a member of the project group.

Page manager Published: Thu 04 Feb 2021.