CS-476: Embedded system designHardware-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. ...
EE-334: Digital systems designStudents will acquire basic knowledge about methodologies and tools for the design, optimization, and verification of custom digital systems/hardware.
They learn how to design synchronous digital circuits on register transfer level, analyse their timing a ...
CS-470: Advanced computer architectureThis 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 microarchitectura ...
CS-471: Advanced multiprocessor architectureMultiprocessors are basic building blocks for all computer systems. This course covers the architecture and organization of modern multiprocessors, prevalent accelerators (e.g., GPU, TPU), and datacenters. It includes a research project on multiprocessors ...
EE-390(a): Lab on hardware-software digital systems codesignThis course explores hardware-software co-design techniques to develop heterogeneous multi-core embedded systems running Linux on FPGAs. The course explores high-level synthesis tools (HLS) to design hardware accelerators that reduce total execution time a ...
PHYS-743: Parallel programmingLearn the concepts, tools and API's that are needed to debug, test, optimize and parallelize a scientific application on a cluster from an existing code or from scratch. Both OpenMP (shared memory) and MPI (distributed memory) paradigms are presented and ...
EE-733: Design and Optimization of Internet-of-Things SystemsThis course provides a complete overview of the most relevant subfields related to Internet of Things (IoT) systems, it presents the perspectives and the underlying technologies, with a particular focus on edge AI architectures and software (AI and TinyML ...
PHYS-751: Advanced concepts in particle acceleratorsAccelerator physics covers a wide range of very exciting topics. This course presents basic physics ideas and the technologies underlying the workings of modern accelerators. An overview of the new ideas and challenges of the possible paths towards the nex ...
CS-472: Design technologies for integrated systemsHardware compilation is the process of transforming specialized hardware description languages into circuit descriptions, which are iteratively refined, detailed and optimized. The course presents algorithms, tools and methods for hardware compilation an ...
MSE-806: Spin-based devices for neuromorphic computingThe course entails a 5-days-program with lectures and exercises about spin-based computing and novel spin texture-based computing devices. An additional round table discussion and journal club session provide further knowledge about recent trends and chall ...
ENG-807: Open Science Summer schoolIn this summer school, we target to provide an overview of the different principles and practices that can be found under the umbrella term of Open Science. These practices span the research cycle starting from idea to outcomes including the development of ...
BIOENG-450: In silico neuroscience"In silico Neuroscience" introduces students to a synthesis of modern neuroscience and state-of-the-art data management, modelling and computing technologies. ...