CS-438: Decentralized systems engineeringA decentralized system is one that works when no single party is in charge or fully trusted. This course teaches decentralized systems principles while guiding students through the engineering of their own decentralized system featuring messaging, file sha ...
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 ...
COM-490: Large-scale data science for real-world dataThis hands-on course covers tools and methods used by data scientists, from researching solutions to scaling prototypes on Spark clusters. Students engage with the full data engineering and data science pipeline, from data acquisition to extracting insight ...
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-208: Microcontrollers and digital systemsMicrocontrôleurs et conception de systèmes numériques couvre le fonctionnement interne d'un microcontrôleur, des notions de base d'architecture de processeur et de système informatique ainsi que les interfaces de microcontrôleurs, et protocoles de communic ...
MICRO-210: MicrocontrollersMicrocontrôleurs couvre le fonctionnement interne d'un microcontrôleur, des notions de base d'architecture de processeur et de système informatique ainsi que les interfaces de microcontrôleurs, et protocoles de communication série. ...
CS-202: Computer systemsThis course will teach operating systems and networks in an integrated fashion,emphasising the fundamental concepts and techniques that make their interaction possible/practical. Core lectures will be coupled with C programming lectures and assignments for ...
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. ...
BIO-207: Cellular and molecular biology IIThis course is aimed to familiarize students with the 3D organization of a eukaryotic cell, its compartmentalization, how cellular compartments communicate together and how a cell communicates with its environment. The related molecular mechanisms will be ...
MSE-433: Towards sustainable materialsThis course will address and model key sustainability issues through an engineering lens. It will examine emerging materials, hard to abate, and critical materials used to manufacture items in our economy during the transition to NetZero targets and their ...
AR-503: Digital design and making: A critical introductionThe course introduces digital design and fabrication methods by combining the transfer of technical skills with theoretical knowledge and critical reflection. Topics include: scripting/programming for design, mass customisation through digital fabrication ...
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 ...
MGT-555: Innovation & entrepreneurship in engineeringThis course is a joint initiative between the School of Engineering and the College of Management to encourage and promote entrepreneurship and management skills, engineering design, hands-on experience, teamwork, and awareness of social and ethical implic ...
CS-307: Introduction to multiprocessor architectureMultiprocessors are a core component in all types of computing infrastructure, from phones to datacenters. This course will build on the prerequisites of processor design and concurrency to introduce the essential technologies required to combine multiple ...
AR-501: Lives of the most excellent architectsThis courses presents a history of architecture not so much as a history of projects, buildings, movements or styles, but as a history of lives. In the process, it will argue for the relevance of biography, stories, anecdotes, jokes, truths, half-truths an ...
AR-454: Land use planningLe cours donne les bases de la compréhension de l'aménagement du territoire, de son rôle politique à ces outils. ...
HUM-284: The ethics of emerging technologiesThis course provides students with the tools to understand and address the ethical challenges of emerging technologies, empowering them to make responsible decisions that positively impact society and the environment. ...
AR-619: Designing cities in a changing worldThis course develops, within the urban domain, a critical review of challenges/opportunities of the One Health concept, based on the inexorable link between human, animal, and ecosystem health. ...