1 Introduction
1 Introduction
1 - Introduction
© Lothar Thiele
Computer Engineering and Networks Laboratory
Michele Magno
D-ITET Center for project-based Learning
Organization
WWW: https://pbl.ee.ethz.ch/education/embedded-systems.html
Lecture: Michele Magno <[email protected]>; Lothar Thiele,
[email protected];
Coordination: Seonyeong Heo (ETZ D97.7) <[email protected]>
References:
▪ P. Marwedel: Embedded System Design, Springer, ISBN 978-3-319-85812-8/978-3-030-
60909-2, 2018/2021. You can find it also as open access!
▪ 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.
Sources: The slides contain ideas and material of J. Rabaey, K. Keuzer, M. Wolf, P.
Marwedel, P. Koopman, E. Lee, P. Dutta, S. Seshia, and from the above cited books.
1-2
Organization Summary
▪ Lectures are held on Mondays from 14:15 to 16:00 in ETF C1 until further notice. Life streaming
and slides are available via the web page of the lecture from the previous year (some part will
be new!!). 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 the web page of the lecture.
▪ Exercises: The exercises are made available before the date of the exercise. During an exercise,
teaching assistants will summarize the lecture material required to solve the exercise questions,
give hints how to approach the solution, answer your questions and discuss the correct solution
at the end of the exercise. The electronic version of the exercise questions and solutions will be
placed online after the exercise has been conducted. Exercises will take place from 4pm - 6pm
on Wednesdays and Fridays as indicated in the timetable.
▪ Laboratory: Laboratory exercises will be conducted in teams of 2 people. Due to the large
number of students, there will be two successive ES-Lab sessions at the days of the ES-Lab (see
timetable): Session A from 4pm - 6pm on Wednesday and session B from 4pm - 6pm on Friday.
Both sessions will take place in rooms D61.1 and D96. If you still need to sign up you can do this
in the lecture (preferred) or via email to the lecture coordinator.
1-3
Lecture Organization
134
1-4
Further Material via the Web Page (under
development)
1-5
When and where?
1-6
What will you learn?
▪ Theoretical foundations and principles of the analysis and design of embedded
systems.
▪ Practical aspects of embedded system design, mainly software design.
1-7
Please read carfully!!
▪ https://pbl.ee.ethz.ch/education/embedded-systems.html
1-8
Practical part of this course.
•Discovery kit for IoT node with STM32U5 series
• Ultra-low-power STM32U585AII6Q microcontroller based on the Arm® Cortex®-M33 core with Arm® TrustZone®, 2 Mbytes of
Flash memory and 786 Kbytes of SRAM, and SMPS in UFBGA169 package
• 512-Mbit Quad-SPI Flash memory, 64-Mbit Octo-SPI PSRAM, 256-Kbit I2C EEPROM
• USB FS, Sink and Source power, 2.5 W power capability
• 802.11 b/g/n compliant Wi-Fi® module from MXCHIP
• Bluetooth® Low Energy from STMicroelectronics
• MEMS sensors from STMicroelectronics
• 2 digital microphones
• Relative humidity and temperature sensor
• 3-axis magnetometer
• 3D accelerometer and 3D gyroscope
• Pressure sensor, 260-1260 hPa absolute digital output barometer
• Time-of-flight and gesture-detection sensor
▪ Ambient-light sensor
▪ Authentication and security for peripherals and IoT devices from STMicroelectronics
▪ 2 user LEDs
▪ User push-button
▪ Reset push-button
▪ Board connectors
▪ USB Type-C®
▪ ARDUINO® Uno V3 expansion connectors
▪ Camera module expansion connector
▪ 2× STMod+ expansion connectors
▪ Pmod™ expansion connector
▪ Flexible power-supply options: ST-LINK USB VBUS, USB connector, or external sources
▪ On-board STLINK-V3E debugger/programmer with USB re-enumeration capability: mass storage, Virtual COM port, and debug
port
▪ Comprehensive free software libraries and examples available with the STM32CubeU5 MCU Package
▪ Support of a wide choice of Integrated Development Environments (IDEs) including IAR Embedded Workbench®, MDK-ARM,
and STM32CubeIDE
1-9
Be careful and please do not …
1 - 10
You have to return the board at the end!
1 - 11
Embedded Systems - Impact
1 - 12
Embedded Systems
Embedded systems (ES) = information processing systems
embedded into a larger product
•Examples:
© Edward Lee
1 - 15
Embedded System
Embedded System
CYBER Communication
WORLD
observing influencing
PHYSICAL
WORLD physical/biological/social
processes
Nature
Use feedback to influence the dynamics of the physical
world by taking smart decisions in the cyber world
1 - 19
Reactivity & Timing
Embedded systems are often reactive:
▪ Reactive systems must react to stimuli from the system environment :
1 - 20
Predictability & Dependability
1 - 22
Comparison
Embedded Systems: General Purpose Computing
▪ Few applications that are known at ▪ Broad class of applications.
design-time.
▪ Not programmable by end user. ▪ Programmable by end user.
1 - 23
Lecture Overview
1 - 24
Agenda Embedded Systems
DATE Topic
1 - 25
Components and Requirements by Example
1 - 26
1 - 27
1 - 28
1 - 29
Components and Requirements by Example
- Hardware System Architecture -
1 - 30
High-Level Block Diagram View
low power CPU higher performance CPU
• enabling power to the rest of the system • sensor reading and motor control
• battery charging and voltage • flight control
measurement • telemetry (including the battery voltage)
• wireless radio (boot and operate) • additional user development
• detect and check expansion boards • USB connection
UART:
• communication protocol (Universal
Asynchronous Receiver/Transmitter)
• exchange of data packets to and from
interfaces (wireless, USB)
1 - 31
EEPROM:
• electrically erasable programmable
High-Level Block Diagram View read-only memory
Acronyms: sensor board • used for firmware (part of data and
software that usually is not
• Wkup: Wakeup signal changed, configuration data)
• GPIO: General-purpose input/output • can not be easily overwritten in
signal comparison to Flash
• SPI: Serial Peripheral Interface Bus
• I2C: Inter-Integrated Circuit (Bus)
• PWM: Pulse-width modulated Signal
• VCC: power-supply
Flash memory:
• non-volatile random-access memory
for program and data
1 - 32
1 - 33
High-Level Physical View
1 - 34
High-Level Physical View
1 - 35
Low-Level Schematic Diagram View
LEDs
(1 page out of 3)
1 - 36
Low-Level Schematic Diagram View
1 - 38
High-Level Software View
▪ real-time tasks for motor control (gathering sensor values and pilot commands,
sensor fusion, automatic control, driving motors using PWM (pulse width
modulation, … ) but also
1 - 40
High-Level Software View
Block diagram of the stabilization system:
1 - 42
What can you do to increase performance?
1 - 43
From Computer Engineering
1 - 44
From Computer Engineering
iPhone Prozessor A12
• 2 processor cores
- high performance
• 4 processor cores - less
performant
• Acceleration for
Neural Networks
• Graphics processor
• Caches
1 - 47
What can you do to decrease power consumption?
1 - 48
Embedded Multicore Example
Trends:
▪ Specialize multicore processors towards real-time processing and low power
consumption (parallelism can decrease energy consumption)
▪ Target domains:
1 - 49
Why does higher parallelism help in reducing power?
1 - 50
System-on-Chip
Samsung Galaxy S6
– Exynos 7420 System on a Chip (SoC)
– 8 ARM Cortex processing cores
•Exynos 5422
(4 x A57, 4 x A53)
– 30 nanometer: transistor gate width
1 - 51
How to manage extreme workload variability?
1 - 52
System-on-Chip
Samsung Galaxy S6
– Exynos 7420 System on a Chip (SoC)
– 8 ARM Cortex processing cores
•Exynos 5422
(4 x A57, 4 x A53)
– 30 nanometer: transistor gate width
1 - 53
From Computer Engineering
iPhone Prozessor A12
• 2 processor cores
- high performance
• 4 processor cores - less
performant
• Acceleration for
Neural Networks
• Graphics processor
• Caches
1 - 54
Components and Requirements by Example
- Systems -
1 - 56
Zero Power Systems and Sensors
Streaming information to
and from the physical world:
• “Smart Dust”
• Sensor Networks
• Cyber-Physical Systems
• Internet-of-Things (IoT)
1 - 57
Zero Power Systems and Sensors
▪ Low power and energy constraints (portable or unattended devices) are increasingly important,
as well as temperature constraints (overheating).
▪ There is increasing interest in energy harvesting to achieve long term autonomous operation.
1 - 59
Learning objective of Today Class
▪ Where we are what we will do.
▪ What are Embedded Systems and CPS
▪ Both hardware and software are important and you will learn
▪ Processors and evolution of them
▪ Trends and topics
1 - 60
How we do learning at PBL?
1 - 61
Research focus: Embedded Systems and Wireless
Smart Sensors for a better and greener world
▪ 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.
•Smart devices
•for perpetual operation
1 - 63
You are kindly invited for the PBL OPEN day… right
now ☺
1 - 64
See you later or next week!
1 - 65