VVZ API is not affiliated with ETH Zurich. Data might be outdated or incorrect. Please view the official ETHZ Vorlesungsverzeichnis for binding information.

227-0128-00L 6 Credits MSC D-ITET , D-INFK , D-PHYS

Synthesis of Digital Circuits

Lecturers & Examiners: Prof. Dr. Lana Josipovic
VVZ CR 3.8

Last Updated: 2026-06-03 00:14:20

Abstract

This course covers theoretical and practical aspects of hardware compilation and synthesis. It provides a comprehensive view into the design flow of digital circuits and presents algorithms, tools, and methods to generate digital circuits from high-level descriptions. It discusses recent advancements and current challenges of high-level synthesis (HLS) for FPGAs.

Objective

The goal of this course is to provide students with an in-depth understanding of the hardware design process and hardware compilation techniques. The students will learn how to differentiate software and hardware design models. They will be able to apply high-level synthesis (HLS) concepts to design hardware from software specifications. They will be able to contrast various HLS methods, assess the area-performance tradeoffs of different HLS solutions, and identify challenges and limitations of current FPGA-oriented HLS approaches.

Content

The course will cover the following topics: - Hardware design flow and introduction to high-level synthesis (HLS) - Static code analysis and optimization - Classic scheduling algorithms (e.g., ASAP, ALAP, List scheduling) - Classic sharing and binding algorithms (e.g., Left-edge algorithm) - Pipelining and SDC modulo scheduling - Polyhedral code analysis and optimization - FPGA logic synthesis, placement, and routing - Applications of HLS for FPGAs - Challenges of modern HLS for FPGAs - Recent HLS advancements and alternative HLS approaches The course will be divided into two main blocks. The first block will consist of classical lectures, accompanied by exercises. The second block will interleave lectures with: (1) practical work that will introduce students to a standard HLS flow for FPGAs and (2) student presentations of recent research topics on HLS and FPGA design.

Resources

Lecture Notes

Lecture notes will be provided on the course website.

Literature

Literature will be provided on the course website.

General Information

Language
English
Levels
MSC
Frequency
Yearly recurring

Examination

Type
graded semester performance
The grade is composed out of:- a written midterm exam, covering the theoretical topics of the first course block- individual practical assignments, graded based on the correctness of the produced results and an oral discussion of the solution- paper review and presentation, graded based on review quality (e.g., clarity of the paper summary, critical analysis of its advantages and shortcomings), presentation quality (e.g., language, writing style), and oral discussionCourse deregistration. In case you do NOT plan to take part in the elements above and you do NOT want to obtain a grade, please deregister in myStudies by the end of the fifth week of the semester. If you remain registered, you will obtain a grade for the course ('no show' if you do not show up for any of the elements listed above).

Course Components

Type Title Time & Place Hours
lecture Synthesis of Digital Circuits
  • Wed 14:15-16:00 (NO C 60)
  • 25.02 Date 14:15-16:00 (CAB G 11)
2 h weekly
exercise Synthesis of Digital Circuits
  • Wed 16:15-18:00 (NO C 60)
  • 25.02 Date 16:15-18:00 (CAB G 51)
2 h weekly

Offered In

      • Track: Communication (The core courses and specialization courses below are a selection for students who wish to specialize in the area of "Communication", see . The individual study plan is subject to the tutor's approval.)
        • Specialization Courses (These specialization courses are particularly recommended for the area of "Communication", but you are free to choose courses from any other field in agreement with your tutor. Semester / Research Projects are not allowed in this category. A minimum of 40 credits must be obtained from specialization courses during the Master's Programme.)
      • Track: Computers and Networks (The core courses and specialization courses below are a selection for students who wish to specialize in the area of "Computers and Networks", see . The individual study plan is subject to the tutor's approval.)
        • Specialization Courses (These specialization courses are particularly recommended for the area of "Computers and Networks", but you are free to choose courses from any other field in agreement with your tutor. Semester / Research Projects are not allowed in this category. A minimum of 40 credits must be obtained from specialization courses during the Master's Programme.)
    • Electives (This is a selection of courses particularly suitable for the MSc QE. In agreement with the tutor, students may choose other courses from the ETH course catalogue.)