Embedded Systems - TEC - Computer Engineering Group - ETH Zurich
Embedded Systems - TEC - Computer Engineering Group - ETH Zurich
chevron_right Education
chevron_right Lectures
chevron_right Embedded Systems
Embedded Systems
Autumn Semester 2021
chevron_right Schedule chevron_right Exercises and Labs
– Lectures are held on Mondays from 14:15 to 16:00 in ETF C1 until further notice. Life streaming is available
at: Life Streaming. Slides are available on this web page at: Slides. In addition, you find audio and video
recordings of most of the slides as well as recordings of this years and last years life streams on this web page
at: Lecture Recordings .
– Exercises take place on Wednesdays and Fridays from 16:15 to 17:00 via Zoom. On Wednesdays the lecture
material is summarized, hints on how to approach the solution are given and a sample question is solved. On
Fridays, the correct solutions are discussed.
– Laboratories take place on Wednesdays or Fridays from 16:15 to 18:00. On Wednesdays the session starts with
a short introduction via Zoom and then questions can be asked via Zoom. Fridays are reserved for questions via
Zoom
– Forum can be found on Moodle. We'll be conducting all class-related discussion there this term. The quicker
you begin asking questions on Moodle (rather than via emails), the quicker you'll benefit from the collective
knowledge of your classmates and instructors. We encourage you to ask (and answer) questions when you're
struggling to understand a concept.
Schedule
When Where
Contents
An embedded system is some combination of computer hardware and software, either fixed in capability or
programmable, that is designed for a specific function or for specific functions within a larger system. For
example, they are part of industrial machines, agricultural and process industry devices, automobiles, medical
equipment, cameras, household appliances, airplanes, sensor networks, internet-of-things, as well as mobile
devices.
The focus of this lecture is on the design of embedded systems using formal models and methods as well as
computer-based synthesis methods. Besides, the lecture is complemented by laboratory sessions where students
learn to program in C, to base their design on the embedded operating systems FreeRTOS, to use a commercial
embedded system platform including sensors, and to edit/debug via an integrated development environment.
Specifically the following topics will be covered in the course: Embedded system architectures and components,
hardware-software interfaces and memory architecture, software design methodology, communication, embedded
operating systems, real-time scheduling, shared resources, low-power and low-energy design, hardware
architecture synthesis.
Learning Goals
Understanding specific requirements and problems arising in embedded system applications.
Understanding architectures and components, their hardware-software interfaces, the memory architecture,
communication between components, embedded operating systems, real-time scheduling theory, shared
resources, low-power and low-energy design as well as hardware architecture synthesis.
Using the formal models and methods in embedded system design in practical applications using the
programming language C, the operating system FreeRTOS, a commercial embedded system platform and the
associated design environment.
Overview of Lecture Contents
Laboratory (ES-Lab)
Apart from a set of lectures and theoretical exercises, the course features a number of demonstrations of
computer-aided tools and methods for the design of software and hardware.
The ES-Lab adds to the general understanding of the material covered in the lecture and allows you to gain
experience with the development environment and tools for modern embedded systems. The labs are based on the
call_made
ARM-based TI MSP432 Launchpad , a state-of-the-art embedded system development kit featuring a high-
performance low-power microcontroller. The software development is based on a state-of-the-art integrated
development environment.
Timetable
Date Lecture Exercise Lab
27.09.2021 1. Introduction
2. Software
Development
04.10.2021 3. Hardware-Software
Interface
06.10.2021 3. Hardware-Software
Interface
01.11.2021 NO LECTURE
Lecture Slides
All lecture slides are available for download as a bundle:
– Embedded Systems lecture slides [single page format] vertical_align_bottom
– Embedded Systems lecture slides [4on1 page format] vertical_align_bottom
Lecture Recordings
Life Recordings Autumn 2021
The life recordings of the lectures in Autumn Semester are available at the following link: Embedded Systems Life
Recordings AS 2021.
11. Lecture 11: Chapters 9. Power and Energy and 10. Architecture Synthesis
– 2. Software Development
– 4. Programming Paradigms
– 5. Operating Systems
– 7. Shared Resources
– 8. Hardware Components
If you miss those dates or signed up for the course after the semester has started, please contact the lecture
coordinator via email.
We urgently ask all students to do the laboratory on their own hardware. For this, we provide you with a virtual
machine that has all the necessary software already pre-installed. You can find the installation instructions on
GitLab. We have tested this setup on PCs and Laptops with an USB port that run Windows 10, macOS Catalina, as
well as Linux Mint and Linux Ubuntu 18.04 and 20.04; in general, all platforms which can run VirtualBox should
work. In exceptional circumstances where this is not possible, students are allowed to use the computers in ETZ
D61.1 or ETZ D96.1 during the regular laboratory hours (Wednesday or Friday 16.15 – 18.00). In such a case, please
send an email with your name and Legi number to the lecture coordinator. You will receive a time slot and room
allocation that guarantees that the maximum occupation of the computer rooms is respected. You are not allowed
to enter ETZ D61.1 or ETZ D96.1 during the laboratory hours if you do not have an allocated slot.
Collection of the personal LaunchPad will be conducted at the exam in the winter examination session. After the
exam ends, please put any hardware we lent you (i.e. both the TI LaunchPad (including the microUSB cable) as well
as the TI Sensors BoosterPack) on your table. In case you will not be attending the exam, we will announce an
opportunity to return the Launchpad to our offices in February.
Generic Documents
Handout Solution
Handout Solution
Handout Solution
Generic Documents
Handout Solution
Handout Solution
Handout Solution
Handout Solution
Handout Solution
Exam
There will be a written 2-hour exam in English.
Supporting Materials
Printouts, handwritten note, and calculators are allowed. No devices that can be used for communication.
Material for Exam Preparation
English
Sample exam - 2015 (3 hours)
Sample exam - 2016 (2 hours)
Sample exam with solution- 2015 (3 hours)
Sample exam with solution - 2016 (2 hours)
Sample exam with solutions - 2010 (3 hours)
Sample exam - 2020 (2 hours)
Sample exam with solution - 2020 (2 hours)
German
Sample problem Synthesis - Solution Synthesis
Sample problem Aperiodic RT - Solution Aperiodic RT
Sample problem Periodic RT - Solution Periodic RT
Sample problem Dynamic Power Management - Solution Dynamic Power Management
Sample problem Scheduling - Solution Scheduling
Literature
Related Literature - Online book orders at ETHbib call_made
– P. Marwedel: Embedded System Design, Springer, ISBN 978-3-319-85812-8/978-3-030-60909-2, 2018/2021.
– G.C. Buttazzo: Hard Real-Time Computing Systems. Springer Verlag, ISBN 978-1-4614-0676-1, 2011.
– Edward A. Lee and Sanjit A. Seshia: Introduction to Embedded Systems, A Cyber-Physical Systems Approach,
Second Edition, MIT Press, ISBN 978-0-262-53381-2, 2017.
Teaching Assistants
If you have a general question on the lecture, exercises, or labs, please contact the coordinator. For specific
questions regarding an exercise or lab, please contact the respective assistants directly.
Coordinator
– Seonyeong Heo, ETZ D97.7, [email protected] [SH]
Assistants
– Filippo Spinelli, [email protected] [FS]
Contact
location_on ETZ G 88
phone +41 44 632 70 31
email Email
add Show more
Related Content
Computer Engineering chevron_right
Discrete Event Systems chevron_right
Seminar: Advanced Topics in Networked Embedded Systems chevron_right
chevron_left Lectures