Courses Paolo Ienne Advanced computer architecture (EN)This course explores techniques for exploiting instruction-level parallelism both statically and dynamically. It also addresses the generation of hardware accelerators from programming languages and investigates security issues related to microarchitectural features, including side-channel attacks.Computer architecture (EN)This course completes the overview of computer architecture started on the first year (CS-173 DSD). Theo Kluter System programming for Systems-on-chip (EN)To efficiently program embedded systems an understanding of their architectures is required. After following this course students will be able to take an existing SoC, understand its architecture, and efficiently program it.Embedded system design (EN)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.