Search result: Catalogue data in Spring Semester 2021

Electrical Engineering and Information Technology Bachelor Information
Laboratory Courses, Projects, Seminars
A minimum of 18 cp must be obtained from the category "Laboratory Courses, Projects, Seminars".
Projects & Seminars
A maximum of 13 cp can be obtained from Projects & Seminars. Each course can be registered for only once.

Enrolment is only possible for students in the BSc Electrical Engineering and Information Technology from Friday before the start of the semester.
Places are allocated using the P&S application tool (https://psapp.ee.ethz.ch/).
Please only enrol for P&S for which you apply via the tool.
NumberTitleTypeECTSHoursLecturers
227-0085-01LProjects & Seminars: Amateurfunk-Kurs Restricted registration - show details
Does not take place this semester.
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W1.5 credits1PJ. Leuthold
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveDer Amateurfunk ermöglicht es, drahtlos über weite Distanzen zu kommunizieren.
Doch darf eine Amateurfunk-Station nicht ohne Weiteres betrieben werden.
Voraussetzung ist das Ablegen der Amateurfunkprüfung HB3 oder HB9 beim BAKOM.

In diesem Kurs werden wir einen Überblick über die wichtigsten Themengebiete des Amateurfunks bieten.
Im praktischen Teil werdet ihr unter anderem die Gelegenheit haben, das Funkgerät selbst in die Hand zu nehmen.
In einem Portabel-Ausflug (nicht testatpflichtig) werden wir zudem draussen eine mobile Funkstation aufbauen und bedienen.

Nach dem Kurs habt ihr die Möglichkeit, die HB9-Prüfung abzulegen.
Mit der Prüfung in der Tasche könnt ihr dann auch die Funkbude des AMIV auf dem ETZ-Dach verwenden oder auch eure eigene Anlage aufbauen und betreiben.

Voraussetzung für das Testat ist eine aktive Teilnahme am Kurs, nicht das Bestehen der BAKOM-Prüfung.
Eine erfolgreiche Funkverbindung zu einer anderen Station ist ebenfalls Teil der Testatbedingung.
Das Lernmaterial wird in der ersten Kursstunde ausgegeben.
227-0085-02LProjects & Seminars: Game Development with Unity Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PM. Magno
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveGame Development is a big field and is constantly growing. A powerful tool to create cross-platform games is Unity. Unity is a cross-platform real-time game engine that uses C# as its programming language (very similar to Java). This P&S is a
great chance for gaining practical experience, creating something from scratch and establishing a supporting community. Therefore, if you are eager to improve your coding skills as well as bring them to life by applying them to game development, this is the right P&S for you!
227-0085-03LProjects & Seminars: COMSOL Design Tool – Design of Optical Components Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PJ. Leuthold
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveSimulation tools are becoming an essential accessory for scientists and engineers for the development of new devices and study of physical phenomena. More and more disciplines rely on accurate simulation tools to get insight and also to accurately design novel devices.

COMSOL is a powerful multiphysics simulation tool. It is used for a wide range of fields, including electromagnetics, semiconductors, thermodynamics and mechanics. In this P&S we will focus on the rapidly growing field of integrated photonics.

During hands-on exercises, you will learn how to accurately model and simulate various optical devices, which enables high-speed optical communication. At the end of the course, students will gain practical experience in simulating photonic components by picking a small project in which certain photonic devices will be optimized to achieve required specifications. These simulated devices find applications in Photonic Integrated Circuits (PICs) on chip-scale.

Course website: https://blogs.ethz.ch/ps_comsol
Prerequisites / NoticeNo previous knowledge of simulation tools is required. A basic understanding of electromagnetics is helpful but not mandatory.
The course will be taught in English.
227-0085-04LProjects & Seminars: Microcontrollers for Sensors and Internet of Things Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W4 credits4PM. Magno
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveUltra Low Power Microcontroller (MCU) – Firmware Programming and Sensors Interfacing using an Arm Cortex-M (STM32) Microcontroller

Microprocessors are used to execute big and generic applications, while microcontrollers are low cost and low power embedded chips with program memory and data memory built onto the system which are used to execute simple tasks within one specific application (i.e. sensor devices, wearable systems, and IoT devices). Microcontrollers demand very precise and resource-saving programming, therefore it is necessary to know the processor core, and particular importance has the investigation of the microcontroller's hardware components (ADC, clocks, serial communication, timers, interrupts, etc.).

The STM32 from STMicroelectronics has gained in popularity in recent years due to its low power and ease of use. The goal of this course is the development of understanding the internal processes in the microcontroller chip from TI. This will enable you to conduct high-level-firmware-programming of microcontrollers, to learn about the STM32 MCU features, benefits, and programming and how they can be connected with sensors, acquire the data, processing them and send the information to other devices. The course will also include an introductive lecture on machine learning and artificial intelligence on the embedded system and in particular microcontrollers. The C language will be used to program the microcontroller.

The course will be taught in English.
227-0085-05LProjects & Seminars: Fast Signal Acquisition and Processing for Quantum Experiments using FPGA Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W2 credits2PM. Magno
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveFPGAs are used in wide range of applications including video processing, machine learning, cryptography and radar signal processing, thanks to their flexibility and massive parallel processing power. Recently FPGAs have become important in quantum signal processing where high amount of data should be analyzed in a short time to use quantum setups most efficiently. In addition, FPGAs are used for quantum state detection and feedback generation, which have to be performed in the scale of hundreds of nanoseconds. The goal of this course is to understand the FPGA based signal processing for superconducting circuits based quantum experiments. The course participants will learn the implementation techniques of the modules for fast quantum signal acquisition and processing, the electronics supporting quantum experiments, and FPGA programming. You will implement quantum signal processing and quantum state detection modules using Xilinx FPGA, Verilog HDL, and high speed ADC. The course will be taught in English. No prior knowledge in quantum physics or FPGA is required, still a good knowledge in any coding language (for example C or Java) is required.
227-0085-06LProjects & Seminars: Neural Network on Low Power FPGA: A Practical Approach Restricted registration - show details
Does not take place this semester.
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W2 credits2P
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveArtifical Intelligence and in particular neural networks are inspired by biological systems, such as the human brain. Through the combination of powerful computing resources and novel architectures for neurons, neural networks have achieved state-of-the-art results in many domains such as computer vision. FPGAs are one of the most powerful platform to implement neural networks as they can handle different algorithms in computing, logic, and memory resources in the same device. Faster performance comparing to competitive implementations as the user can hardcore operations into the hardware. This course will give to the student the basis of Machine Learning to understand how they work and how they can be trained and giving hand-on experiences with the training tools such as Keras. Moreover the course will focus in deploy algorithms in low power FPGA such as the Lattice sensAI platform to have energy efficient running algorithms. The course will provide to the students the tools and know-how to implement neural netwok on an FPGA, and the student will challenge theirself in a 5 weeks piratical project that they will present at the end of the course. Experience in FPGA programming is desirable but not mandatory.

The course will be taught in English.
227-0085-07LProjects & Seminars: Deep Learning for Smartphone Apps (DLSA) Restricted registration - show details
Does not take place this semester.
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PL. Van Gool
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveDeep Learning with Smartphone Sensors – Programming Android Phones – Neural Networks – Keras/TensorFlow -- Projects on Smartphones.

Latest smartphone generations are equipped with computational capabilities (CPU, GPU, NPU, DSP) matching common PCs from a decade ago. Moreover, smartphones have several sensors that can acquire many useful information beyond audio and visual data, for instance where we are, what we are doing, with whom we are together, what is our body constitution, what are our needs. Based on this information our smartphone offers us the appropriate computational power to process them in loco without sending the sensor data to the cloud. This course focuses on giving the bases of machine (deep) learning and embedded systems. Students will learn the tools to implement machine/deep learning algorithms in their Android phones to be smarter. The course will end with a 4 weeks project where the students can target a specific application scenario.

The course will be taught in English.
227-0085-08LProjects & Seminars: Bluetooth Low Energy Programming for IoT Sensing system Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PM. Magno
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveBluetooth Low Energy System on Chip – Firmware Programming and sensors Interfacing using an Arm Cortex-M (Nordic nrf52838) Microcontroller

With the introduction of the BLE 5.0 standard, Bluetooth has achieved high data bandwidth with low power consumption. This makes the technology an ideal match for many applications, i.e., IoT sensor application or audio streaming, by addressing two of the greatest bottlenecks of these devices. This course offers the chance for participants to do hands-on programming of microcontrollers. In particular, the focus will be laid on interfacing with sensors, acquisition of data, on-board event-driven data processing with ARM-Cortex-M4 processors and BLE or other wireless transmissions. The programming will be performed in C. Today’s microcontrollers offer a low power, efficient and cost-effective solution of tackling a nearly infinite number of task-specific applications. Ranging from IoT devices, wearable systems, sensor (mesh) devices, all the way to be integrated as submodules for the most complex system such as cars, planes, and rockets. Microcontrollers derive their advantages from the efficient use of resources and as such require very efficient and resource-saving programming. Therefore, it is mandatory to understand hardware components such as processor cores, ADC, clocks, serial communication, wireless communication, timers, interrupts, etc. The P&S includes five weeks project where the student will setup an IoT sensor node to monitor electric power transmission and distribution system.

The course will be taught in English by the ITET center for project based learning.
227-0085-09LProjects & Seminars: Spiking Neural Network on Neuromorphic Processors Restricted registration - show details
Does not take place this semester.
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PG. Indiveri
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveMachine Learning – Spiking Neural Network – DVS Cameras - Programming Neuromoripch processors – Intel Loihi - Final Project with a presentation.

Compared to the “traditional” artificial neural network, the spiking neural network (SNN) can provided both latency and energy efficiency. Moreover, SNN has demonstrated in previous works a better performance in processing physiological information of small sample size, and only the output layer of the spiking neural network needs to be trained, which results in a fast training rate. This couse focuses on giving the bases of spiking neural networks and neuromorphic processors. Students will learn the tools to implement SNN algorithm in both academic processors and Intel Loihi using data from Event-based Vision camera and biomedical sensors (i.e. ECG and EEG). The course will end with 4 weeks project
where the students can target a specif application scenario.

The course will be taught in English.
227-0085-11LProjects & Seminars: Deep Learning for Image Manipulation (DLIM) Restricted registration - show details
Does not take place this semester.
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PL. Van Gool
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveDeep Learning – Image Manipulation – Image Enhancement – Image Restoration – Style Transfer – Image to Image Translation – Generative Models – TensorFlow/PyTorch – Projects

With the advent of deep learning tremendous advances were achieved in numerous areas from computer vision, computer graphics, and image processing. Using these techniques, an image can be automatically manipulated in various ways with high-quality results, often fooling the human observer. Deep learning based image processing and manipulation are being applied in a vast number of emerging technologies, including image enhancement in smartphone cameras, automated image editing, image content creation, graphics, and autonomous driving. This course focuses on the fundamentals of deep learning and image manipulation. Students will learn the tools to implement and develop deep learning solutions for a variety of image manipulation tasks. The course will end with a 4 weeks project where the students can target a specific application scenario.

The course will be taught in English.
227-0085-12LProjects & Seminars: Electronic Circuits & Signals Exploration Laboratory Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W2 credits1PH.‑A. Loeliger
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveAs everyday electronic circuits have transitioned into integrated circuits, they have become increasingly difficult to examine and tinker with. As a result, students become less exposed to basic analog electronic circuits and their fundamental operating principles. At university level, bachelor classes in analog circuits and electronics provide rigorous theoretical insights but are typically focused on linearised operating behaviour.

The goal of this lab course is for the students to enhance their understanding on how basic analog electronic circuits work, or perhaps don't work, and provide enough practical experience for the students to feel at ease using transistors, resistors, capacitances, diodes etc., to create working circuits.

For example, students create circuits that make physical quantities audible. Students are encourage to realise their own circuit ideas.
227-0085-13LProjects & Seminars: Assembling and Controlling our Own Atomic Force Microscope Restricted registration - show details
Does not take place this semester.
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3.5 credits3.5PT. Zambelli
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveInvented in the 1980s in Zurich and awarded with a Nobel price, the atomic force microscope (AFM) has enabled us to visualize surfaces at the single atom level, and to measure single molecule and cell-cell interactions, deepening our understanding of material science and biology. This is enabled by controlling micromechanical piezo actuators with nanometer precision and processing noisy signals in order to achieve meaningful data.

In order to introduce you to the capabilities of modern AFMs in biomedical sensing, you will build your own setups in groups of two. You will be introduced to an AFM’s functionality, control, and signal read-out using LabView. A tuning fork signal will be used as the feedback for the self-built AFM. In order to better understand the working principle of a tuning fork, you will also build your own frequency sweeper and analyze it with self-built low-pass filters.
After you have implemented your own setup, you will have the chance to characterize different biomedical samples on state-of-the-art setups. This data will then be analyzed using Matlab.
The focus of this P&S seminar is to enable you to transfer your theoretical knowledge into practice and at the same time get to know how electrical engineering can be used in biomedical research.

The course requires active participation during the practical sessions, a 10-15 min presentation and a short written report on the acquired results. The course will be given in English.

Dates:
05.10, 08.10, 12.10, 15.10, , 26.10, 29.10, 9.11, 12.11
227-0085-14LProjects & Seminars: Technical and Economic Aspects of Renewable Energy Supply Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PG. Hug
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveMore and more sustainable and renewable energy technologies are used for electricity generation to cope with climate change. These distributed resources transform the electric power grid and impose major challenges.

In this seminar, students have the opportunity to glance at cutting-edge research in the field of power systems. Possible research questions might be:

- How to integrate distributed energy generation like PV plants and wind turbines into the electricity grid?
- What challenges does the increasing share of electric vehicles and batteries impose on the power grid?
- How to cope for the uncertain generation capacity of renewables and how to forecast it?
- How does the electricity market work and how do the new sources of flexibility transform it?

Students will prepare a presentation and a report on their individual research question, which is based on an assigned paper. The main objectives are to practice literature review, scientific writing and presenting. Students will learn to independently understand specific research results – a crucial skill for academic research including semester and master projects.

The language of instruction is English. Registrations for the seminar are binding.
227-0085-15LProjects & Seminars: Python for Engineers - Get Productive in the Classroom, in the Lab and at Home Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PJ. Leuthold
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectivePython is an interpreted high-level programming language which is becoming increasingly popular in the academic scientific community as well as in industry. The course will introduce the basics of the python programming language, and will cover some of the most useful Python modules, such as numpy, scipy and matplotlib. The classes will further cover simple GUIs, data analysis and linking with shared libraries or C code. They will further familiarize with the GIT version control system, with the linux shell and with the most common software licenses. Students are not required to have previous Python programming experience.
227-0085-16LProjects & Seminars: Machine Learning for Brain-Computer Interfaces Restricted registration - show details
Does not take place this semester.
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PL. Benini
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveA brain-computer interface (BCI) provides a communication and control channel based on the recognition of subject’s intention from spatiotemporal activity of the brain. A typical method to acquire neural activity signals is electroencephalograhy (EEG), which is often used in BCI. In order to make these data usable and get useful information out of them, signal processing techniques play a crucial role. Moreover, feature extraction and machine learning methods are applied to obtain a highly accurate BCI.
The aim of the Project and Seminars course is to give insights of signal processing and machine learning applied to brain-computer interfaces to undergraduate students, by having hands-on experience in brain signal acquisition, data processing, feature extraction, and machine learning.
227-0085-17LProjects & Seminars: Bau eines drahtlosen Infrarot-Kopfhörers Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W2 credits2PH. Bölcskei
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveInhalt ist der Aufbau eines optischen Infrarot-Audioübertragungssystems. Wir machen uns mit wichtigen Messgeräten (Oszilloskop, Spektrumanalyser) und Messmethoden (Frequenzgang aufnehmen, S/N Verhältnis, nichtlineare Störungen) vertraut. Der Einfluss der Modulation zur Unterdrückung von Störungen wird untersucht. Jeder Student baut für sich je einen Infrarot-Sender und -Empfänger und kann diese am Ende mit nach Hause nehmen. Beim Zusammenbau sammeln wir praktische Erfahrungen mit dem Löten von konventionellen und SMD Bauteilen. Die fertigen Schaltungen werden in Betrieb genommen, abgeglichen und ausgemessen.

Das Praktikum wird an fünf Nachmittagen in Zweiergruppen jeweils Donnerstags durchgeführt. Absenzen werden nur in begründeten Ausnahmefällen erlaubt.

Die Daten der Praktikumsnachmittage, weitere Informationen sowie die Unterlagen für die Vorbereitung können auf unserer Homepage gefunden werden.
227-0085-18LProjects & Seminars: Bits on Air Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W2 credits2PH. Bölcskei
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveTäglich sind wir mit digitaler Nachrichtenübertragung konfrontiert, sei es beim Fernsehen, beim Mobiltelefon oder bei der Internet-Nutzung. Um die Funktionsweise dieser Systeme kennenzulernen, sollen in diesem P&S-Kurs die Grundzüge der Digitalkommunikation vermittelt werden. Auf herkömmlichen PCs werden dazu selber geschriebene Software-Modems implementiert. Diese Modems bestehen genau wie die in der Wirklichkeit verwendeten digitalen Kommunikationssysteme aus einem Modulator, einem Demodulator und einem Algorithmus zur Synchronisation des Trägers der eintreffenden Nachricht. Einmal implementiert, können mit Hilfe dieser Modems akustisch beliebige Daten (z.B. kleine Textdateien) zwischen verschiedenen PCs übertragen werden.

Zum Programmieren wird MATLAB verwendet. MATLAB-Kenntnisse werden nicht vorausgesetzt. Vielmehr ist das Ziel dieses P&S-Kurses, neben dem Kennenlernen der Grundlagen der Digitalkommunikation auch das Programmieren mit MATLAB zu üben.

Die Daten der Nachmittage können der Bits on Air-Homepage entnommen werden.

Absenzen werden nur in begründeten Ausnahmefällen erlaubt. Der verpasste Stoff muss selbstständig nachgeholt und in einem kurzen Bericht zusammengefasst werden.
227-0085-19LProjects & Seminars: Software Defined Radio Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PH. Bölcskei
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveDrahtlose Übermittlung von Informationen über Funk ist heute allgegenwärtig. Je nach Anwendung und Frequenzbereich werden dabei verschiedene Modulationsarten benutzt, wobei digitale Verfahren weitgehend die alten analogen Verfahren abgelöst haben.
Tools für Software Defined Radio (SDR) ermöglichen es, mit relativ kleinem Aufwand in diese Welt einzutauchen und “auf den Wellen zu surfen”. Durch schnellere Computer wird es möglich, dass immer komplexere Signalverarbeitung in Sendern und Empfängern auf einem Rechner erfolgen können. Dabei können die Algorithmen sehr flexibel und schnell angepasst und verändert werden.

In diesem P&S werden wir uns näher anschauen, wie dies funktioniert und was dahintersteckt. Dazu erarbeiten wir uns in einem ersten Teil Grundlagen zu Frequenzen, Spektren, Modulationsarten, Signalverarbeitung, u.s.w.

Im zweiten Teil werden wir in Gruppen verschiedene Projekte mit SDR-Tools erarbeiten. Dabei können auch eigene Ideen eingebracht werden. Am Schluss werden die Projekte in einer Präsentation den anderen Teilnehmern vorgestellt.
227-0085-21LProjects & Seminars: Quad-Rotors: Control and Estimation Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W2 credits2PJ. Lygeros
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveThe objective of this P&S is to make a real-world quad-rotor fly autonomously by applying the control and estimation theory taught in class.
Details of this P&S course can be found at: http://www.dfall.ethz.ch/pands.php
A video showing highlights from HS2018 can be see here: http://www.youtube.com/watch?v=PEg-XHSXd58

In the first half of the P&S, we will introduce the physical model for a quad-rotor and use this to apply the control and estimation techniques that are taught in the 5th semester in the Control System 1 class. The students will then create their own control function for a quad-rotor and test these in simulation. The second half of the course will involve the students implementing the control and estimation algorithms they design in the real-world on our fleet of nano-quad-rotors. Once stable flight is achieved, the students will have the freedom to perform tasks with the quad-rotor. By implementing the control and estimation algorithms on a real-quadcopter, the students will gain experience with how decisions in the modelling and design stage affect real-world performance.

Important Information:
Students must be in the 6th semester.
The first class will be Monday, September 21 for all students.
Classes will then occur every second week. The students will be split into two groups and the classes for each group will occur on alternating weeks.
It is preferable to be taking the Control Systems 1 (CS1) course but not mandatory. Those students who are not taking CS1 will need to complete some extra reading to understand some aspects of this P&S.
Due to COVID-19, the course will be offered in an online setting with classes being held over Zoom. The students will be able to take a real-world quad-rotor to their homes in order to implement the control and estimation algorithms taught in the course.
227-0085-22LProjects & Seminars: Programmierung eines Blackfin DSP Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W4 credits4PH.‑A. Loeliger
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveDie Echtzeitverarbeitung von digitalen Signalen ist eine Herausforderung welche in der Praxis häufig auftritt (digitale Kommunikation, Audio- und Videovearbeitung, ...).

Es gibt eine Familie von Mikroprozessoren welche spezifisch für die Echtzeitverarbeitung von digitalen Signalen optimiert sind: Sogenannte "Digital Signal Processor" oder kurz DSP. In diesem Praktikum lernt ihr einige Grundlagen der digitalen Signalverarbeitung und deren Implementation auf einem DSP kennen.

In Zweiergruppen werdet ihr euch am Beispiel von akustischen Signalen Schritt für Schritt an die Theorie und die Programmierung in Assembler herantasten. In der zweiten Hälfte des Semesters könnt ihr ein kleines, selbst bestimmtes Audio-Projekt verwirklichen.

Für die Implementierung verwenden wir ein für dieses P&S entwickeltes Board mit Komponenten welche auch in der Industrie verwendet werden. Es ist bestückt mit Ein- und Ausgängen für analoge Audiosignale, einem Codec, welcher das analoge Signal in ein digitales und zurück umwandelt, einem DSP der Familie "Blackfin" von Analog Devices (BF532) und 32MB Arbeitsspeicher.
227-0085-23LProjects & Seminars: Phase Change Materials and Memories Restricted registration - show details
Does not take place this semester.
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W1 credit1PM. Yarema
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveYou will learn how to make and characterize phase change materials, which are being researched by companies like Intel and Micron for next generation transistor free memory, known as phase change memory (PCM). In the first laboratory session, you characterize the phase change of a PCM material using x-ray diffraction. In the second laboratory session, you will synthesize nanoparticles of the PCM material germanium telluride to understand the challenges and potential for addressing scaling issues in PCMs.

Important information:
In addition to the 8 hours of laboratory time, 6 hours of additional reading, preparation, and data analysis is expected. For the laboratory class, you must adhere to the safety rules introduced by the instructor and to the dress code (long pants and close-toed shoes must be worn, long hair must be pulled back, and no watches/jewelry on hands or wrists).

The course will be held in English. Minimum number of students is 3.
227-0085-24LProjects & Seminars: Vision and Control in RoboCup Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits1PJ. Lygeros, L. Van Gool
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveVision and Control in RoboCup is jointly offered by Prof. John Lygeros (IFA) and Prof. Luc Van Gool (CVL).

RoboCup is a tournament where teams of autonomous robots compete in soccer matches against each other. The ETH team NomadZ plays in the standard platform league with the humanoid NAO robot, where the focus lies on developing robust and efficient algorithms for vision, control and behavior. In this course, the basic challenges we encounter in RoboCup are presented and approached in practical exercises using MATLAB and Python. The topics cover visual localization, deep learning for object detection and reinforcement learning for control.

The course is offered to students of the 5th semester.
227-0085-25LProjects & Seminars: Magnetic Resonance: From Spectrum to Image Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W1 credit1PM. Weiger Senften
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveDas Phänomen der magnetischen Kernresonanz (NMR) und ihre Anwendung in der Spektroskopie und in der Bildgebung werden kennen gelernt. Der Kurs beginnt mit einer allgemeinen Einführung in die NMR. Danach werden Messungen an einem klinischen MRI-Gerät durchgeführt. Dabei werden die NMR-Experimente selbst entwickelt und programmiert. Vom einfachen spektroskopischen Experiment ausgehend werden schrittweise die Grundlagen der Bildgebung erarbeitet. So können schliesslich Schnittbilder von Testobjekten erstellt werden.

Aufgrund der Corona-Situation wir der Kurs nicht direkt am Scanner sondern per Remote-Verbindung in einem Seminarraum abgehalten. Bei Verbot von Präsenz-Unterricht muss die Veranstaltung entfallen.
Der Kurs kann erst ab einer Mindestteilnehmerzahl von 2 durchgeführt werden.

Kurstermine:
23.11., 30.11., 7.12., 14.12.2020
227-0085-26LProjects & Seminars: Biosignal Acquisition and Processing for IoT Wearable Devices Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PM. Magno
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveBiosignal acquisition and processing – Wearable sensor node design and analysis for bio-impedance sensor using an Arm Cortex-M (Nordic nrf52838) Microcontroller
Wearable smart sensor electronics has the potential to revolutionize the medical field. Various body conformal flexible sensors have been used to monitor motion and physiological electrical signals such as electrocardiography (ECG), electroencephalography (EEG) and body composition analysis via body bio-impedance measurements. Smart sensor nodes not only provide accurate and continuous data in time but also automate the process of maintaining medical records, thereby lowering the workload oft he health worker or clinician. This course offers an avenue for the students to understand the interdisciplinary principles that make it possible to interpret human physiology by utilizing discreet electronic components. Most importantly, participants will get a chance to do hands-on system design specific to electronically tracking a particular physiological phenomenon. In particular, the focus will be laid on programming of micro controllers, interfacing with sensors, acquisition of data and utilizing discreet analog elements for bio-signal processing. The programming will be performed in C.


The course will be taught in English and by the ITET center for project based learning.
227-0085-27LProjects & Seminars: Android Application Development (AAD) Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W4 credits3PM. Magno
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveAndroid Applications – Programming and development of Application - Android Studio – Smart Phone Sensors – GPS and Google Maps.

Although the App-Industry is dominated by the giant Apps right now, it is still crucial that one knows how those Apps function and how those Apps are communicating with their hardware. This course offers the opportunity for the participants to understand the development of application using Android Studio. Most importantly, participants will get a chance to do hands-on software design specific to Android smartphone and the data acquisition from sensors, GPS, google maps and other internal devices. The main goal of the course if providing the students with the basic principle and software programming for build up every android application. The course include 4-5 weeks project were the students alone or in group will build up a working demo of a target application. The course will conclude with the presentation of the students work. Previous experience in C/Java or other languages is preferable but not mandatory. The students will program their own Android Smartphone.

The course will be taught in English by the new Project-based learning centre.
227-0085-28LProjects & Seminars: iCEBreaker FPGA For IoT Sensing Systems Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PM. Magno
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveUltra Low Lattice FPGA – High Level Programming – Peripehrals Interfacing using an Lattice FPGA

Field-programmable gate array (FPGA) is an integrated circuit designed to be configured by a customer or a designer after manufacturing , so they are also "field-programmable". The FPGA configuration is generally specified using a hardware description language (HDL), similar to that used for an application-specific integrated circuit (ASIC). However more and more nowdays producers and open source community are providing higher level toolls to program them similary than processors. On the other side still it is important know the hardware architectures. This course will give to the students the opportunity to program FPGA in a high level way and use them to connect with external peripherals such as display, sensors, etc. In particular, the course will use the iCEBreaker FPGA boards that is specifically designed for students and engineers . They work out of the box with the latest open source FPGA development tools and next-generation open CPU architectures. The course will also iCEBreaker can be expandable through its Pmod connectors, so the students can make use of a large selection of third-party modules. The course will include a project where the students will learn how to build a full working system for the next generation of Internet of Things intelligent smart sensing.

The course will be taught in English by the new D-ITET center for Project-based learning.
227-0085-29LProjects & Seminars: Embedded Deep Learning with Huawei Atlas 200 AI Dev Kit Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PM. Magno
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveDeep neural networks (DNNs) have become the leading method for a wide range of data analytics tasks, after a series of major victories at the ImageNet Large Scale Visual Recognition Challenge (ILSVRC). For ILSVRC, the task was to classify images into 1000 different classes, many of which are difficult to distinguish (e.g. many classes are different breeds of dogs). All that was given were 1.2 million labelled images. Meanwhile, this recipe for success has taken over many more areas, from image-based tasks like segmenting objects in images, detecting objects, enhancing images using super-resolution and compression artifact reduction, to robotics and reinforcement learning, and a wide range of industrial applications.
DNNs and their subtype convolutional neural networks (CNNs) have not been new in the 2013 when the wave of success has started, but they got this huge boost through the new availability of large-scale dataset and—at least as importantly—the availability of the necessary compute resources by using GPUs to perform the computations required during training.
While GPUs were then also used to stem the high computation effort of DNNs during inference (e.g. classifying images directly using a trained DNN rather than training the DNN itself). The high demand, the need for cost efficiency, and the goal of deploying DNNs not just in data centers but pervasively in everyday devices, wearables, and low-latency industrial or interactive applications, has triggered the development of various application-specific processors which are much faster, vastly more energy efficient, and cheaper at the same time—such as the Google TPU, Graphcore, …, and Huawei’s Ascend/Atlas platforms.

In this course, you will learn:
1) the basics of deep neural networks, how they work, and what challenges there are for inference,
2) how platforms with specialized hardware accelerators, specifically the Huawei Atlas 200, can be used for running DNN inference and getting a practical application running, and
3) work on your own project using DNNs and hardware accelerators based on your own ideas or on some of our proposals.

The course will be taught in English by the new D-ITET center for Project-Based Learning and a special guest lecturer from Huawei. Individual interactions/help can also be in (Swiss) German.
Most sessions will be around 1 hour of lecture and 2 hours of practical computer exercises. We will start an introduction and then you will have ca. 8 weeks to work on your project, which will concluded with a final presentation of your results.
227-0085-31LProjects & Seminars: Vision Goes Vegas Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W2 credits2PL. Van Gool
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveComputer Vision beschäftigt sich unter anderem damit, Maschinen zu befähigen ihre Umwelt zu sehen und das wahrgenommene Bild zu verstehen. In unserem Projekt soll ein System entwickelt werden, das Spielkarten erkennen kann und, einer guten Strategie folgend, erfolgreich Black-Jack spielen kann. Die Teilnehmer des Projektes werden kleine Teams bilden und gemeinsam mit einem Assistenten die Aufgabe erarbeiten und eine Implementierung erstellen. Am Ende des Semesters sollen die Programme im öffentlichen Wettstreit gegeneinander antreten!

Ziel des Projektes ist es, aktuelle Methoden der Computer Vision kennen zu lernen. Spielkarten, die von einer Digitalkamera in beliebiger Orientierung aufgenommen werden, müssen registriert und erkannt werden. Ein Strategiemodul kontrolliert dann die Spieltaktik aufgrund allgemeiner Regeln und dem Wissen über schon gefallene Karten. Da sehr viele verschiedene Möglichkeiten bestehen, solch ein System zu realisieren, sind der Phantasie der Teilnehmer keine Grenzen gesetzt.

Als Voraussetzungen sollte Interesse an Computer Vision mitgebracht werden und die Bereitschaft, sich in einem Team von Mitstudierenden einzubringen. Kenntnisse in C++ sind notwendig.

Dieses P&S wird in englischer Sprache durchgeführt.
227-0085-32LProjects & Seminars: Magnetische Felder im Alltag Restricted registration - show details
Does not take place this semester.
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W2 credits2PJ. Leuthold
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveMagnetfelder sind überall zu finden aber selten direkt wahrnehmbar. Das führt auch zu teils irrationalen Ängsten wie beispielsweise vor Elektrosmog. Die Stromversorgung mit Gleichstrom, 16.67 Hz und 50 Hz Wechselstrom ist heute nicht mehr wegzudenken. Überall wo Strom fliesst, entstehen auch Magnetfelder. Deswegen sind Magnetfelder allgegenwärtig. Aber wo treten besonders hohe Felder auf? Wie hoch dürfen diese sein bevor gesundheitliche Schäden entstehen können? Damit haben sich schon viele Studien befasst und darauf basierend wurden landesspezifische Richtlinien definiert. Doch werden diese überhaupt eingehalten? Wo werden die gesetzlichen Grenzwerte überschritten? Was sind die Konsequenzen? Mit diesem Thema befasst sich das P&S und spricht ein eingeladener Gast.

Die Teilnehmer des P&S werden kleine eigene Forschungsprojekte verfolgen. Dafür werden sie mobilen Messgeräten ausgerüstet, welches sich mit einem Smartphone verbinden lassen, um verschiedene Magnetfeldquellen zu suchen und zu charakterisieren. Wie stark sind die Magnetfelder in unserem Umfeld wirklich? Können sie eine Gefahr darstellen? Wie können sie abgeschirmt werden? Diese Fragen sollen systematisch untersucht werden.

Zum Abschluss des P&S präsentieren die einzelnen Gruppen die Erkenntnisse aus ihren Messungen fassen diese in einem kurzen Bericht zusammen.
227-0085-33LProjects & Seminars: Accelerating Genome Analysis with FPGAs, GPUs, and New Execution Paradigms Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PM. H. K. Alser, J. Gómez Luna
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveA genome encodes a set of instructions for performing some functions within our cells. Analyzing our genomes helps, for example, to determine differences in these instructions (known as genetic variations) from human to human that may cause diseases or different traits. One benefit of knowing the genetic variations is better understanding and diagnosis of diseases and the development of efficient drugs.

Computers are widely used to perform genome analysis using dedicated algorithms and data structures. However, timely analysis of genomic data remains a daunting challenge, due to the complex algorithms and large datasets used for the analysis. Increasing the number of processing cores used for genome analysis decreases the overall analysis time, but significantly escalates the cost of building, maintaining, and cooling such a computing cluster, as well as the power/energy consumed by the cluster. This is a critical shortcoming with respect to both energy production and environmental friendliness. Cloud computing platforms can be used as an alternative to distribute the workload, but transferring the data between the clinic and the cloud poses new privacy and legal concerns.

In this course, we will cover the basics of genome analysis to understand the computational steps of the entire pipeline and find the computational bottlenecks. Students will learn about the existing efforts for accelerating one or more of these steps and will have the chance to carry out a hands-on project to improve these efforts.

Prerequisites of the course:
- No prior knowledge in bioinformatics or genome analysis is required.
- Digital Design and Computer Architecture (or equivalent course)
- A good knowledge in C programming language is required.
- Experience in at least one of the following is highly desirable:
FPGA implementation and GPU programming.
- Interest in making things efficient and solving problems

The course is conducted in English.

Course website: https://safari.ethz.ch/projects_and_seminars/doku.php?id=bioinformatics

Learning Materials
===============
1. A survey on accelerating genome analysis: https://arxiv.org/pdf/2008.00961
2. A detailed survey on the state-of-the-art algorithms for sequencing data: https://arxiv.org/pdf/2003.00110
3. An example of how to accelerate genomic sequence matching by two orders of magnitude with the help of FPGAs or GPUs: https://arxiv.org/abs/1910.09020
4. An example of how to accelerate read mapping step by an order of magnitude and without using hardware acceleration: https://arxiv.org/pdf/1912.08735
5. An example of using a different computing paradigm for accelerating read mapping step and improving its energy consumption: https://arxiv.org/pdf/1708.04329
6. Two examples on using software/hardware co-design to accelerate genomic sequence matching by two orders of magnitude: https://arxiv.org/abs/1604.01789 https://arxiv.org/abs/1809.07858
227-0085-34LProjects & Seminars: Exploring Future Memory Systems with RAMulator Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PO. Mutlu
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveDRAM is predominantly used to build the main memory systems of modern computing devices. Simulation-based experimental studies are key for understanding the complex interactions between DRAM and modern applications.

Ramulator is an extensible DRAM simulator providing cycle-accurate performance models for a variety of commercial DRAM standards (e.g., DDR3/4, LPDDR3/4, GDDR5, HBM) and academic proposals. Ramulator has a modular design that enables easy integration of additional DRAM standards and mechanisms. Ramulator is written in C++11 and can be easily integrated to full-system simulators such as gem5.

In this P&S, you will design new DRAM and memory controller mechanisms for improving overall system performance, energy consumption, and reliability. You will extend Ramulator with these new designs and evaluate their performance, energy consumption, and reliability using modern applications. This will be the right P&S for you if you would like to learn about the state-of-the-art memory controller and DRAM designs and their interaction with modern applications. This P&S will also enable you to hands-on simulate and understand the memory system behavior of modern workloads such as machine learning, graph analytics, genome analysis.

Prerequisites of the course:
- Digital Design and Computer Architecture (or equivalent course)
- A good knowledge in C/C++ programming language.
- Interest in making things efficient and solving problems.
- Interest in understanding software development and hardware design, and their interactions.

The course is conducted in English.

Course website: https://safari.ethz.ch/projects_and_seminars/doku.php?id=ramulator
227-0085-35LProjects & Seminars: Enabling Secure, Reliable and Fast Memory with Hands-On FPGA Experiments Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PO. Mutlu
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveDRAM is predominantly used to build the main memory systems of modern computing devices. To improve the performance, reliability, and security of DRAM, it is critical to perform experimental characterization and analysis of existing cutting-edge DRAM chips.

SoftMC is an FPGA-based DRAM testing infrastructure that enables the programmer to perform all low-level DRAM operations (i.e., DDR commands) in a cycle-accurate manner. SoftMC provides a simple and intuitive high-level programming interface (in C++) that completely hides the low-level details of the FPGA from programmers. Programmers implement test routines in C++, and the test routines automatically get translated into the low-level SoftMC memory controller operations in the FPGA. SoftMC developers write low-level hardware description language code to enable new and faster studies.

In this P&S, you will have the chance to learn how DRAM is organized and operates in a low-level and gain practical experience in using SoftMC while developing SoftMC programs for new DRAM characterization studies related to performance, reliability and security. You may also improve the SoftMC infrastructure itself to enable new studies. And, who knows, you might discover new security vulnerabilities like RowHammer.

This will be the right P&S for you if you are interested in DRAM technology and would like to learn more about it as well as FPGA technology and how it can be used for practical purposes such as understanding and mitigating RowHammer attacks, generating true random numbers, reducing memory latency, fingerprinting and identifying devices, and improving reliability.

Prerequisites of the course:
- Digital Design and Computer Architecture (or equivalent course)
- Familiarity with FPGA programming
- Interest in low-level hacking and memory
- Interest in discovering why things do or do not work and solving problems

The course is conducted in English.

Course website: https://safari.ethz.ch/projects_and_seminars/doku.php?id=softmc
227-0085-36LProjects & Seminars: Genome Sequencing on Mobile Devices Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PM. H. K. Alser, J. Gómez Luna
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveGenome analysis is the foundation of many scientific and medical discoveries, and serves as a key enabler of personalized medicine. This analysis is currently limited by the inability of existing technologies to read an organism’s complete genome. Instead, a dedicated machine (called sequencer) extracts a large number of shorter random fragments of an organism’s DNA sequence, known as reads. Small, handheld sequencers such as ONT MinION and Flongle make it possible to sequence bacterial and viral genomes in the field, thus facilitating disease outbreak analyses such as COVID-19, Ebola, and Zika. However, large, capable computers are still needed to perform genome assembly, which tries to reassemble read fragments back into an entire genome sequence. This limits the benefits of mobile sequencing and may pose problems in rapid diagnosis of infectious diseases, tracking outbreaks, and near-patient testing. The problem is exacerbated in developing countries and during crises where access to the internet network, cloud services, or data centers is even more limited.

In this course, we will cover the basics of genome analysis to understand the speed-accuracy tradeoff in using computationally-lightweight heuristics versus accurate computationally-expensive algorithms. Such heuristic algorithms typically operate on a smaller dataset that can fit in the memory of today’s mobile device. Students will experimentally evaluate different heuristic algorithms and observe their effect on the end results. This evaluation will give the students the chance to carry out a hands-on project to implement one or more of these heuristic algorithms in their smartphones and help the society by enabling on-site analysis of genomic data.

Prerequisites of the course:
- No prior knowledge in bioinformatics or genome analysis is required.
- A good knowledge in C programming language and programming is required.
- Interest in making things efficient and solving problems

The course is conducted in English.

Course website: https://safari.ethz.ch/projects_and_seminars/doku.php?id=genome_seq_mobile

Learning Materials
===============
1. A survey on accelerating genome analysis: https://arxiv.org/pdf/2008.00961

2. A detailed survey on the state-of-the-art algorithms for sequencing data: https://arxiv.org/pdf/2003.00110

3. An example of how to accelerate genomic sequence matching by two orders of magnitude with the help of FPGAs or GPUs: https://arxiv.org/abs/1910.09020

4. An example of how to accelerate read mapping step by an order of magnitude and without using hardware acceleration: https://arxiv.org/pdf/1912.08735

5. An example of using a different computing paradigm for accelerating read mapping step and improving its energy consumption: https://arxiv.org/pdf/1708.04329

6. Two examples on using software/hardware co-design to accelerate genomic sequence matching by two orders of magnitude: https://arxiv.org/abs/1604.01789 https://arxiv.org/abs/1809.07858

7. An example of a purely software method for fast genome sequence analysis: http://www.biomedcentral.com/content/pdf/1471-2164-14-S1-S13.pdf
227-0085-37LProjects & Seminars: Exploring the Processing-in-Memory Paradigm for Future Computing Systems Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
W3 credits3PJ. Gómez Luna
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveData movement between the memory units and the compute units of current computing systems is a major performance and energy bottleneck. From large-scale servers to mobile devices, data movement costs dominate computation costs in terms of both performance and energy consumption. For example, data movement between the main memory and the processing cores accounts for 62% of the total system energy in consumer applications. As a result, the data movement bottleneck is a huge burden that greatly limits the energy efficiency and performance of modern computing systems. This phenomenon is an undesired effect of the dichotomy between memory and the processor, which leads to the data movement bottleneck.

Many modern and important workloads such as machine learning, computational biology, graph processing, databases, video analytics, and real-time data analytics suffer greatly from the data movement bottleneck. These workloads are exemplified by irregular memory accesses, relatively low data reuse, low cache line utilization, low arithmetic intensity (i.e., ratio of operations per accessed byte), and large datasets that greatly exceed the main memory size. The computation in these workloads cannot usually compensate for the data movement costs. In order to alleviate this data movement bottleneck, we need a paradigm shift from the traditional processor-centric design, where all computation takes place in the compute units, to a more data centric design where processing elements are placed closer to or inside where the data resides. This paradigm of computing is known as Processing-in Memory (PIM).

This is your perfect P&S if you want to become familiar with the main PIM technologies, which represent "the next big thing" in Computer Architecture. You will work hands-on with the first real-world PIM architecture, will explore different PIM architecture designs for important workloads, and will develop tools to enable research of future PIM systems. Projects in this course span software and hardware as well as the software/hardware interface. You can potentially work on developing and optimizing new workloads for the first real world PIM hardware or explore new PIM designs in simulators, or do something else that can forward our understanding of the PIM paradigm.

Prerequisites of the course:
- Digital Design and Computer Architecture (or equivalent course).
- Familiarity with C/C++ programming.
- Interest in future computer architectures and computing paradigms.
- Interest in discovering why things do or do not work and solving problems
- Interest in making systems efficient and usable

The course is conducted in English.

Course website: https://safari.ethz.ch/projects_and_seminars/doku.php?id=processing_in_memory

Learning materials
===============

1. Summary papers about recent research in PIM.
Link
Link

2. Ramulator-PIM: A version of Ramulator simulator for PIM.
https://github.com/CMU-SAFARI/ramulator-pim

3. UPMEM SDK documentation: The first real-world PIM architecture.
https://sdk.upmem.com/2020.3.0/

4. An example recent study of 3D-stacked PIM for consumer workloads.
Link

5. An example recent study of lightweight PIM functionality on 3D-stacked memory:
Link

6. An example recent study of a PIM accelerator for graph processing.
Link

7. An example recent study of a Processing-using-Memory system.
https://people.inf.ethz.ch/omutlu/pub/ambit-bulk-bitwise-dram_micro17.pdf
https://arxiv.org/pdf/1905.09822.pdf
227-0085-38LProjects & Seminars: Controlling Biological Neuronal Networks Using Machine Learning Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

Course can only be registered for once. A repeatedly registration in a later semester is not chargeable.
W3 credits2PJ. Vörös
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveThe way memory and learning is achieved in the brain is an unsolved problem. Due to its relative simplicity, in-vitro neuroscience can help us discover the fundamentals of information processing in the brain. For this we can simulate a small number of biological neurons on top of an array of microelectrodes. Such an approach allows us to simulate the electrical activity of the neurons when they get stimulated.

Following this approach, we can investigate biological neural networks, that have about 5-50 neurons and a controlled network architecture. Still, their behavior remains highly unpredictable. Therefore, it is not yet clear how such networks need to be stimulated electrically in order to control their behavior. However, we can use machine learning to find a mapping between a stimulus and a desired response. More specifically, we can use reinforcement learning, since finding the right stimulation pattern is an instance of the so called multi-armed bandit problem.

This P&S consists of two parts. In the first part we will introduce you to the way neurons can be simulated. You will learn how neurons work and how they communicate. The second part will be about machine learning. We will discuss the basics of both artificial neural networks (ANN) and reinforcement learning. As homework exercises you will implement a reward function for a provided reinforcement learner, which will control your biological networks. In addition you will
implement an ANN, that replaces unsatisfactorily performing stimulation patterns with new patterns, that this network evaluates to perform better.

If the current situation will allow, the developed ANNs will be tested on real neurons in our laboratory.

This P&S will be given in English. In total, the P&S takes 8 afternoons and about 50 hours of homework (ANN implementation).
227-0085-39LProjects & Seminars: Python for Science & Machine Learning Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

Course can only be registered for once. A repeatedly registration in a later semester is not chargeable.
W3 credits3PM. Magno
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveThis beginner course to programming with Python - with a focus on applications in science and technology - is an ideal starting point for later courses. We will start with an introduction to the dev environment and tools for effective development to get you started. Then we will learn the basics of Python with exercises, and discover popular modules for data processing and visualisation that will be useful for your later studies and career. We conclude with an introduction to popular machine learning techniques and some time for you to implement your own small free-style projects.

By the end of the semester, you will
- be familiar with your PC’s command-line interface and know how to use available dev environments effectively.
- have learned the basics of Python and be able to write basic programs that do what you want (most of the time) with the help of modules.
- be able to process, visualize and analyze numerical data, e.g. lab measurements, images, etc.
- have first experience with machine learning techniques
- maintain your first git repository and know how to collaborate with others on coding projects.

Language: English / German (if necessary)
227-0085-41LProjects & Seminars: Basic Memory Design Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

Course can only be registered for once. A repeatedly registration in a later semester is not chargeable.
W3 credits3PM. Luisier
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveSpeicher sind wichtige Komponenten in allen modernen elektronischen Geräten (Beispiele: Computer, Smartphone, Tablet). Je nach Spezialisierungsrichtung und Aufgabenbereich betrachtet ein Ingenieur den Speicher aus unterschiedlichen Perspektiven. Dieses P&S gibt einen Überblick dieser verschiedenen Perspektiven und zeigt die Zusammenhänge auf. Da es diese verschiedenen Perspektiven nicht nur für Speicher sondern generell für alle integrierten Schaltungen gibt, wird dieses P&S dir helfen, weiteres spezialisiertes Wissen in einen breiteren Kontext einzuordnen. Während des Praktikums wirst du mit verschiedenen Simulationsprogrammen arbeiten. Darunter sind hoch entwickelte Programme, die von Ingenieuren in Forschung und Entwicklung eingesetzt werden. Du lernst also professionelle Software kennen, und im Rahmen von Simulationen (Praktikum Teil) und Gruppenarbeit/Vorträgen (Seminar Teil) erarbeitest du Grundwissen, das du später in spezialisierten Vorlesungen vertiefen kannst.

Entsprechend den verschiedenen Perspektiven besteht das P&S "Basic Memory Design" aus drei etwa gleich langen Teilen:

1. System Design: In diesem Teil lernst du verschiedene aktuellen Speichertypen aus der Sicht des System-Entwicklers kennen. Was können sie? Wie werden sie in Schaltungen eingebaut um ein Speichersystem zu erhalten, das die richtige Grösse und Geschwindigkeit bei akzeptierbarem Energieverbrauch bietet? Mit einem einfachen Cache-Simulator wird der Einfluss von Design Parametern in einer Speicher Hierarchie untersucht. Im Seminar-Teil werden die Teilnehmer in kleinen Gruppen spezifische Speichertypen studieren und diese mit den P&S Partnern im Rahmen eines Referats diskutieren.

2. Circuit Design: In diesem Teil lernst du die Speicher als elektronische Schaltung kennen. Wie müssen Transistoren verschaltet werden um Daten schreiben, speichern und wieder auslesen zu können? Wie sollen diese Transistoren dimensioniert werden, um die gewünschte Geschwindigkeit oder Energieeffizienz zu erreichen? Mit Simulationen wirst Du erleben, wie der Ingenieur solche Schaltungen untersucht und optimiert.

3. Physical Design: Dieser Teil geht noch tiefer. Millionen von Transistoren auf einem kleinen Silizium Plättchen bilden einen modernen Speicher Chip. Wie werden die Speicherzellen auf dem Chip hergestellt? Wie sieht eine Speicherzelle aus? Wie wird die Speicherzelle optimiert? Du lernst mit Hilfe moderner Simulationswerkzeuge die Entwurfspraktiken kennen,
die heutzutage in der Entwicklung angewendet werden. Ausserdem lernst du die Methoden und Technologien kennen, mit denen moderne integrierte Schaltungen hergestellt werden.


Das Seminar wir erst ab 12 Teilnehmern durchgeführt! Die Anmeldung verpflichtet zur Kursteilnahme.
227-0085-42LProjects & Seminars: Bau einer Empfangsspule für die Magnetresonanzbildgebung Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

Course can only be registered for once. A repeatedly registration in a later semester is not chargeable.
W1.5 credits1.5PK. P. Prüssmann
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveGegenstand dieses Praktikums ist die Signaldetektion in der Kernspintomographie, einem Verfahren der medizinischen Bildgebung. Das Verfahren beruht auf der magnetischen Resonanz (MR) von Atomkernen mit Frequenzen im Bereich der Radiowellen. Für die MR-Detektion werden abgestimmte HF-Spulen mit einer Vorverstärkerstufe eingesetzt. Ein solcher elementarer MR-Detektor wird im Rahmen des Praktikums entworfen, gebaut und getestet. Erfolgreiche Teams können ihren Detektor am Ende des Praktikums an einem 7-Tesla Tomographen erproben und Schnittbilder eines biologischen Objekts (z.B. einer Orange oder Kiwi) erzeugen. Zur Lösung der Aufgabe müssen Grundkenntnisse der Schaltungstechnik angewendet werden. Vorkenntnisse im Bereich der Hochfrequenztechnik sind von Vorteil.
227-0085-43LProjects & Seminars: Clean Room Technology – Fabrication and Characterization of Photonic Materials Restricted registration - show details
Does not take place this semester.
Only for Electrical Engineering and Information Technology BSc.

Course can only be registered for once. A repeatedly registration in a later semester is not chargeable.
W3 credits3P
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveIn der Nanophotonik wird die Wechselwirkung von Licht mit nanometergroßen Strukturen untersucht. So entstehen beispielsweise winzige und zugleich ultraschnelle optische Schaltkreise für eine neue Generation von Supercomputern.

Im P&S „Clean Room Technology“ erhalten die Teilnehmer einen ersten Einblick in das BRNC Hightech-Forschungslabor der ETH und IBM Zürich („Binnig and Rohrer Nanotechnology Center“). Nach einer allgemeinen Einführung in die Nanotechnologie und das Arbeiten im Reinraum, werden verschiedene nanophotonische Materialien abgeschieden. Im Anschluss werden mit Hilfe der sogenannte Ellipsometrie die optischen Eigenschaften der Materialien gemessen und anhand von Modellen am Computer analysiert. Abschluss des P&S ist eine Präsentation der Resultate und eine kurze schriftliche Zusammenfassung.

Das P&S wird für drei Gruppen à drei Teilnehmer an zehn Nachmittagen verteilt über das Semester angeboten.
Wir empfehlen das P&S für Studenten im dritten Studienjahr. MATLAB Vorkenntnisse sind vorteilhaft, aber keine Voraussetzung.
Das P&S findet teilweise in englischer Sprache statt.
227-0085-44LProjects & Seminars: Understanding and Designing Modern Solid-State Drives (SSDs) Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

Course can only be registered for once. A repeatedly registration in a later semester is not chargeable.
W3 credits3PO. Mutlu
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveNAND flash memory is the de facto standard in architecting a storage device in modern computing systems. As modern computing systems process a large amount of data at an unprecedented scale, a storage device needs to meet high requirements on storage capacity and I/O performance. A NAND flash-based SSD can provide an order(s) of magnitude higher I/O performance compared to traditional hard-disk drives (HDDs), with a much lower cost-per-bit value over any other SSDs based on emerging non-volatile memory (NVM) technologies.

NAND flash memory has several unique characteristics, such as the erase-before write property (i.e., a flash cell needs to be first erased before programming it), limited lifetime (i.e., a cell can reliably store data for a certain number of program/erase cycles), and large operation units (e.g., a NAND flash chip reads/writes data in a page (e.g., 16 KiB) granularity). To achieve high performance and large capacity of the storage system while hiding the unique characteristics of NAND flash memory, it is critical to design efficient SSD firmware, commonly called Flash-Translation Layer (FTL). An FTL is responsible for many critical management tasks, such as address translation, garbage collection, wear-leveling, and I/O scheduling, that significantly affect the performance, reliability, and lifetime of the SSD.

In this P&S, we will cover how a modern NAND flash-based SSD is organized and operates, from the basics of underlying NAND flash devices and various SSD-management tasks at the FTL-level. You will build a practical SSD simulator by refactoring MQSim, a state-of-the-art simulator for high-end SSDs, to support advanced features of modern NAND flash chips and essential SSD-management tasks. This will allow you to have the chance to obtain a comprehensive background of modern storage systems and research experience on system optimization with rigorous evaluation.

Prerequisites of the course:
• No prior knowledge in NAND flash-based storage systems is required.
• Digital Design and Computer Architecture (or equivalent course)
• Good knowledge in C/C++ programming language is required.
• Interest in system optimizations

The course is conducted in English.
227-0085-45LProjects & Seminars: Robotic Maze Solving with a TI-RSLK Robot (RMaze) Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

Course can only be registered for once. A repeatedly registration in a later semester is not chargeable.
W3 credits3PM. Magno
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveMicrocontroller programming (C) – Peripherals Interfacing using a MSP433 MCU – Control of a Robot in a maze

The course will focus on teaching how to build and program a Texas Instrument robotic system learning kit (TI-RSLK). It is a robot kit, which includes a 2 wheeled robot, a line sensor to determine lines on the floor as well as sensors to recognize walls. The robot is driven by a MSP432 state of the art ARM Cortex M4 processor.

This course will give the students the opportunity to learn how to program the microcontroller of this robot to navigate in a small maze. For this, the students will learn how to control the motors and, consequently the movement of the robot with the peripherals of the microcontroller. Next to the movement, also the control and readout of the attached sensors will be part of the P&S course.

Once the students are able to read sensor values and control the motors of the robot, this course will conclude with a 4-week project. Within this project the students will design their own algorithm, such that the robot can navigate autonomously within a maze. A small competition at the end of the P&S will find the fastest robot of the group.

The course will be taught in English by the new D-ITET center for Project-based learning, the programming toolchain will be installed on the student’s own laptop. Experience with microcontroller programming (C) is an advantage, however not required. A short introduction will be given during the course.

This course will be taught in English or in German if necessary.
227-0085-46LProjects & Seminars: Embedded Systems With Drones Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

Course can only be registered for once. A repeatedly registration in a later semester is not chargeable.
W4 credits4PM. Magno
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveMicrocontrollers - Programming in C – Drones – Autonomous Drones – Embedded System – Sensors.


Drones can be fun to use but understanding the hardware and software and building and programming them to be intelligent and autonomous is even better. This course gives the basis of the embedded systems having the drones as the primary target. The course will introduce embedded systems and, in particular, the microcontroller ARM Cortex-M, focusing on all the crucial blocks such as Interrupts, GPIO, ADC's, Timers, and Serial communication protocols. Apart from the core topics, real-time and power-efficient algorithms for attitude and motor control are also discussed, making the drone efficient. Finally, exciting drone exercises are supported in the course to experiment with the development kit. The course will end with a 4-5 weeks project where the students will make the drone fly with some specific goal. It is not required any previous knowledge except C language.
The course will be taught in English and organized by the new Project-Based Learning center.
227-0085-47LProjects & Seminars: Machine Learning on Smart Phone Restricted registration - show details
Does not take place this semester.
Only for Electrical Engineering and Information Technology BSc.

Course can only be registered for once. A repeatedly registration in a later semester is not chargeable.
W3 credits3P
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveMachine Learning with Smart Phone Sensors –Programming Android Phones – Neural Networks – Keras/Tensor Flow- Projects and App on smartphones

Smartphones have several sensors that can acquire much useful information, for instance where we are, what we are doing, with whom we are together, what is our constitution, what are our needs. Based on this information our 'smartphone' offers us the appropriate computational power to process them in loco without sending the sensor data to the cloud. This course focus on giving the bases of machine learning and embedded systems. The student will learn the tools to implement a machine learning algorithm, such as Tensor Flow and others in their android phones to have an advanced smartphone. The course will end with 4 weeks project where the students can target a specific application scenario. It is not required any previous experience In machine learning. Phyton is a plus but the basis of phyton will be given in the course to be able to complete the project.
The course will be taught in English and organized by the new Project-based Learning center.
227-0085-48LProjects & Seminars: Introduction to Program Nao Robots for Robocup Competition Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

Course can only be registered for once. A repeatedly registration in a later semester is not chargeable.
W4 credits4PM. Magno
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveProgramming Robots – Sensors- Humanoid Robot.

NAO robots from Softbank are the leading humanoid robot being used in research and education worldwide. Robotics is the fastest growing and most advanced technology used in education and research. The main goal of this course is to introduce and allowing the students to learn how to program an NAO humanoid robot to make him walk, talking, watching objects understanding the human, and reacting to external input. The Nao Robots used in this course are equipped with many sensors: Tactile Sensors, Ultrasonic sensors, A Gyro, An Accelerometer, Force Sensors, Infrared sensors, 2 HD Cameras, 4 Microphones, and high accuracy digital encoders on each joint. It has two processors on board: an Intel Atom 1.6Ghz (The main computer includes SSD drive, WiFi, Bluetooth, and wired network) and an additional ARM-9 processor in its chest.
The course will introduce the software package and the full SDK and API. The students will learn how to program ( mainly in C and Phyton) the robot to access the full functionality. To improve the hands-on skills of students the course will end with a 5 weeks project where the students in the group will compete in a small soccer game where the robots will play the game following and kicking a red ball. It is not requested any previous knowledge but programming skills are a plus.
The course will be taught in English and organized by the new Project-based Learning center.
227-0085-49LProjects & Seminars: Smart Patch Projects Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

Course can only be registered for once. A repeatedly registration in a later semester is not chargeable.
W4 credits4PM. Magno
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveWearable devices, PCB Design, Firmware developing, multi-sensors, Communication.

The Smart Patch project will design autonomous, low power and mesh enabled multi-sensor wearable smart patches. They will be based on the always-on smart sensing paradigm to continuously acquire process and stream physiological data in real-time. They can be trained to autonomously detect illness symptoms or other physical conditions, such as stress. The students will work in a team to design a sub-block of the smart patch. According to the students' background, they will be associated swith designing the hardware or the firmware. Together in a team, they will learn how to structure problems and identify solutions, system analysis, and simulation, as well as presentation and documentation techniques. They will get access to D-ITET labs and state-of-the-art engineering tools (Matlab, Simulink, Firmware development IDE, PCB Design, etc.) The course will be done in coollaboartion with DZ Center at D-ITET.

The projects will be done under the Smart Patches: a flagship project for D-ITET students. (pbl.ee.ethz.ch)
227-0085-51LProjects & Seminars: Hands-on Acceleration on Heterogeneous Computing Systems Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

Course can only be registered for once. A repeatedly registration in a later semester is not chargeable.
W3 credits3PO. Mutlu, J. Gómez Luna
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveThe increasing difficulty of scaling the performance and efficiency of CPUs every year has created the need for turning computers into heterogeneous systems, i.e., systems composed of multiple types of processors that can suit better different types of workloads or parts of them. More than a decade ago, Graphics Processing Units (GPUs) became general-purpose parallel processors, in order to make
their outstanding processing capabilities available to many workloads beyond graphics. GPUs have been critical key to the recent rise of Machine Learning and Artificial Intelligence, which took
unrealistic training times before the use of GPUs. Field-Programmable Gate Arrays (FPGAs) are another example computing device that can deliver impressive benefits in terms of performance and energy efficiency. More specific examples are (1) a plethora of specialized accelerators (e.g., Tensor Processing Units for neural networks), and (2) near-data processing architectures (i.e., placing compute capabilities near or inside memory/storage).
Despite the great advances in the adoption of heterogeneous systems in recent years, there are still many challenges to tackle, for example:
- Heterogeneous implementations (using GPUs, FPGAs, TPUs) of modern applications from important fields such as bioinformatics, machine learning, graph processing, medical imaging, personalized medicine, robotics, virtual reality, etc.
- Scheduling techniques for heterogeneous systems with different general-purpose processors and accelerators, e.g., kernel offloading, memory scheduling, etc.
- Workload characterization and programming tools that enable easier and more efficient use of heterogeneous systems.

If you are enthusiastic about working hands-on with different software, hardware, and architecture projects for heterogeneous systems, this is your P&S. You will have the opportunity to program
heterogeneous systems with different types of devices (CPUs, GPUs, FPGAs, TPUs), propose algorithmic changes to important applications to better leverage the compute power of heterogeneous systems, understand different workloads and identify the most suitable device for their execution, design optimized scheduling techniques, etc. In general, the goal will be to reach the highest performance reported for a given important application.
Prerequisites of the course:
- Digital Design and Computer Architecture (or equivalent course).
- Familiarity with C/C++ programming and strong coding skills.
- Interest in future computer architectures and computing paradigms.
- Interest in discovering why things do or do not work and solving problems
- Interest in making systems efficient and usable

The course is conducted in English.
227-0085-52LProjekte & Seminare: Satellite Communications Restricted registration - show details
Only for Electrical Engineering and Information Technology BSc.

Course can only be registered for once. A repeatedly registration in a later semester is not chargeable.
W1 credit1PU. Koch
AbstractThe category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.
ObjectiveIn the P&S „Satellite Communication“, the participants will gain first insights into wireless communications. The topics link budget and antenna design are discussed. A particular focus lies thereby on applications.
ContentThe students learn how they have to build a wireless link for satellite communications in order to fulfil the technical requirements. Furthermore, the students will learn how to design antennas with the help of practical examples and create their own antenna design.

A quiz at the end will allow the students to check the gained know-how.

The P&S is offered for 12 participants on four afternoon within the semester.

The P&S takes place online and in English language.
Prerequisites / NoticeWe recommend the P&S for students of the third year.