CS-476 / 6 credits

Teacher: Kluter Ties Jan Henderikus

Language: English


Summary

Hardware-software co-design is a well known concept in embedded system design.It is also a concept required in designing FPGA-accelerators in data-centers.This course teaches how to transform algorithms in smart hardware-software solutions.

Content

Learning Prerequisites

Required courses

Recommended courses

  • Architecture-aware programming
  • Computer Architecture I and II

Important concepts to start the course

  • C/C++ programming skills
  • Verilog/VHDL description skills

Learning Outcomes

By the end of the course, the student must be able to:

  • Design buffers to account for different read and write behaviors
  • Understand the concept of FSM-D's and use this concept to design accelerators
  • Understand the concept of stream processing and be able to implement a stream processor
  • Design and optimize an embedded system on FPGA given a set of prerequisites

Teaching methods

  • First 9 weeks : theory with small projects and reports
  • Last 5 weeks : mini project in groups of 2 students with final demonstration and presentation

Expected student activities

  • Perform in groups of two students small projects to put the theory into practice
  • Optimize a real world problem in a final project, explain the choices made, and present the results

Assessment methods

  • Moodle quizzes : 10%
  • Lab reports : 40%
  • Final mini-project : 50%

Supervision

Office hours No
Assistants Yes
Others Electronic forum and Moodle

Resources

Moodle Link

In the programs

  • Semester: Spring
  • Exam form: During the semester (summer session)
  • Subject examined: Embedded system design
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Practical work: 2 Hour(s) per week x 14 weeks
  • Semester: Spring
  • Exam form: During the semester (summer session)
  • Subject examined: Embedded system design
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Practical work: 2 Hour(s) per week x 14 weeks
  • Semester: Spring
  • Exam form: During the semester (summer session)
  • Subject examined: Embedded system design
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Practical work: 2 Hour(s) per week x 14 weeks
  • Semester: Spring
  • Exam form: During the semester (summer session)
  • Subject examined: Embedded system design
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Practical work: 2 Hour(s) per week x 14 weeks
  • Semester: Spring
  • Exam form: During the semester (summer session)
  • Subject examined: Embedded system design
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Practical work: 2 Hour(s) per week x 14 weeks
  • Semester: Spring
  • Exam form: During the semester (summer session)
  • Subject examined: Embedded system design
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Practical work: 2 Hour(s) per week x 14 weeks
  • Semester: Spring
  • Exam form: During the semester (summer session)
  • Subject examined: Embedded system design
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Practical work: 2 Hour(s) per week x 14 weeks
  • Semester: Spring
  • Exam form: During the semester (summer session)
  • Subject examined: Embedded system design
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Practical work: 2 Hour(s) per week x 14 weeks
  • Semester: Spring
  • Exam form: During the semester (summer session)
  • Subject examined: Embedded system design
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Practical work: 2 Hour(s) per week x 14 weeks
  • Semester: Spring
  • Exam form: During the semester (summer session)
  • Subject examined: Embedded system design
  • Lecture: 2 Hour(s) per week x 14 weeks
  • Practical work: 2 Hour(s) per week x 14 weeks

Reference week

 MoTuWeThFr
8-9     
9-10     
10-11     
11-12     
12-13     
13-14     
14-15     
15-16     
16-17     
17-18     
18-19     
19-20     
20-21     
21-22