The solutions of the dry run exam will be discussed on 18.-19.07. in the exercise time slots.
Cyber-Physical System Fundamentals (CPSF)
The aim of this course is to provide an overview over fundamental techniques of designing embedded systems (information processing systems embedded into products such as telecommunication systems, vehicles or robots). At the end of the course, the student will be able to put the different areas of embedded systems into perspective and to understand more specialized topics, such as timing predictability, modeling, scheduling, or performance evaluation.
Time | Room | Lecturer | |
Sessions | Wednesdays, 12:15-13:45 | E.003, Otto-Hahn-Str. 12 | Prof. Dr. Jian-Jia Chen (first part) and Dr. Anas Toma (second part) |
Fridays, 12:15-13:45 | |||
Labs | Wednesdays, 10:15-11:45 (Group CPSF1) | CILAB, U08 Otto-Hahn-Str. 16 |
Lea Schönberger, Nick Pietrass |
Thursdays, 12:15-13:45 (Group CPSF2) | |||
Thursdays, 14:15-15:45 (Group CPSF3) | |||
Fridays, 10:15-11:45 (Group CPSF4) |
Date |
Content |
Book Section |
Videos |
Slides |
Simulators |
Lecturer |
Lectures |
---|---|---|---|---|---|---|---|
08.05.19 | Preface: Embedded and Cyber-Physical Systems (definitions), motivation | Preface | 01.1 |
es-marw-1.1.pptx es-marw-1.1.pdf |
Prof. Dr. Jian-Jia Chen | 1 | |
Introduction: application areas, examples, educational concept | 1.1, preface | 01.2 | 1 | ||||
10.05.19 | Introduction: Common characteristics (Part of the videos for the discussions on May 10th) | 1.2 | 01.3 | 2 | |||
Introduction: Challenges in embedded system design | 1.3 | 02.1 | 2 | ||||
Introduction: design flows | 1.4 | 02.2 | 2 | ||||
Specifications and Modeling: Requirements, models of computation | 2.1-2.2 | 02.3 | 2 | ||||
15.05.19 | Specifications and Modeling: The oberver pattern, a case against imperative specifications (based on E. Lee) | 2.1 | 03.1 | 3 | |||
Specifications and Modeling: Early design phases: text, use cases, time-distance charts, sequence charts | 2.3 | 03.2 | Time-Distance Charts - Animation | 3 | |||
Specifications and Modeling: Communicating finite state machines (CFSMs): Timed automata | 2.4.1 | 03.3 | 3 | ||||
17.05.19 | No lecture | ||||||
22.05.19 | Specifications and Modeling: State charts: implicit shared memory communication, modelling of hierarchy | 2.4.2.1 | 04.1 | Dr. Anas Toma | 4 | ||
Specifications and Modeling: State charts timers and semantics, synchronous languages | 2.4.2.2, 2.4.2.3, 2.4.3 | 04.2 | 4 | ||||
24.05.19 | Specifications and Modeling: SDL: A case of message passing | 2.4.4 | 05.1 | es-marw-2.04-sdl-df.ppt es-marw-2.04-sdl-df.pdf |
Prof. Dr. Jian-Jia Chen | 5 | |
Specifications and Modeling: dataflow: scope, Kahn process networks (KPN) | 2.5.1-2.5.2 | 05.2 | Animation | 5 | |||
Specifications and Modeling: dataflow: synchronous (or "static") data flow, SDF, Simulink, RTW, Labview | 2.5.3 | 05.3 | 5 | ||||
29.05.19 | Specifications and Modeling: Petri nets: Introduction | 2.6.1 | 06.1 | es-marw-2.05-petri.ppt es-marw-2.05-petri.pdf |
6 | ||
Specifications and Modeling: Petri nets: condition/event nets | 2.6.2 | 06.2 | 6 | ||||
Specifications and Modeling: Petri nets: place transition nets | 2.6.3 | 06.3 | 6 | ||||
Specifications and Modeling: Petri nets: predicate/transition nets, evaluation | 2.6.4, 2.6.5 | 06.4 | 6 | ||||
31.05.19 |
Specifications and Modeling: Discrete Event Modelling, VHDL | 2.7.1.1-2.7.1.4 | 07.1 | es-marw-2.06-discrete-event.ppt es-marw-2.06-discrete-event.pdf |
7 | ||
Specifications and Modeling: Discrete Event Modelling, IEEE 1164 | 2.7.1.5 | 07.2 | 7 | ||||
05.06.19 (SRG1, Friedrich-Wöhler-Weg 6, room 2.010) |
Specifications and Modeling: Imperative (or von Neumann) model of computation, Comparison of models | 2.8 | 08.1 | es-marw-2.07-imperative-wrap.ppt es-marw-2.07-imperative-wrap.pdf |
Dr. Anas Toma | 8 | |
Specifications and Modeling: comparison of models of computation | 2.10 | 08.2 | 8 | ||||
07.06.19 |
ES-Hardware: Sensors | 3.2.1 | 09.1 | es-marw-3.1-sensors-ad.ppt es-marw-3.1-sensors-ad.pdf |
9 | ||
ES-Hardware: discretization of time: sample-and-hold circuits | 3.2.2 | 09.2 | 9 | ||||
ES-Hardware: discretization of values: A/D-converters | 3.2.2 | 09.3 | 9 | ||||
ES-Hardware: discretization: quantization noise, aliasing | 09.4 | Java program available | 9 | ||||
12.06.19 | ES-Hardware: Processing, code-size efficiency | 3.3.1, 3.3.2, 3.3.3 | 10.1 | es-marw-3.2-processing.ppt es-marw-3.2-processing.pdf |
10 | ||
ES-Hardware: Run-time efficiency, DSP, Multimedia processors, SIMD | 3.3.3.0-3.3.3.2 | 10.2 | 10 | ||||
14.06.19 | ES-Hardware: very long instruction word (VLIW) machines, microcontrollers, Multiprocessor systems on a chip (MPSoCs), | 3.3.3.3, 3.3.3.4, 3.3.3.5 | 11.1 | 11 | |||
ES-Hardware: Reconfigurable logic, Field programmable gate arrays (FPGAs) | 3.3.4 | 11.2 | 11 | ||||
ES-Hardware: Memories | 3.4 | 11.3 | 11 | ||||
19.06.19 | ES-Hardware: Communication | 3.5 | 12.1 | es-marw-3.4-comm-da-actuator.ppt es-marw-3.4-comm-da-actuator.pdf |
Animation | 12 | |
ES-Hardware: Output: D/A-Converter | 3.6.1 | 12.2 | 12 | ||||
ES-Hardware: Sampling theorem, actuators, secure hardware | 3.6.2, 3.6.3, 3.7 | 12.3 | 12 | ||||
21.06.19 | System Software: Embedded operating systems, real-time operating systems | 4.1.1, 4.1.2 | 13.1 | es-marw-4.1-rtos.ppt es-marw-4.1-rtos.pdf |
13 | ||
System Software: Virtual machines | - | - | - | ||||
System Software: Resource access protocols (Priority inversion and inheritance) | 4.1.4 | 13.2 | es-marw-4.1-rtos.ppt es-marw-4.1-rtos.pdf |
Animation | 13 | ||
System Software: Resource access protocols (Priority ceiling, stack resource policy) | - | - | es-marw-4.2-rtos.ppt es-marw-4.2-rtos.pdf |
||||
26.06.19 | System Software: ERIKA, hardware abstraction layers, middleware, real-time data bases | 4.2, 4.3, 4.4, 4.5 | 14.1 | 14 | |||
Evaluation and Validation: Scope, multi-objective optimization, relevant objectives | 5.1 | 14.2 | 14 | ||||
Evaluation and Validation: performance evaluation (early estimation & worst case execution time analysis), prerequisite: integer linear programming | 5.2.1, 5.2.2 | 14 | |||||
28.06.19 | Evaluation and Validation: real-time calculus | 5.2.3 | 15.1 | es-marw-5.2-evaluation.ppt es-marw-5.2-evaluation.pdf |
15 | ||
Evaluation and Validation: Energy and power models, thermal models | 5.3, 5.4 | 15.2 | 15 | ||||
03.07.19 | Evaluation and Validation: Risk- and dependability analysis | 5.5 | 16.1 | es-marw-5.3-evaluation.ppt es-marw-5.3-evaluation.pdf |
16 | ||
Evaluation and Validation: Simulation, rapid prototyping and emulation, formal verification (briefly) | 5.6, 5.7, 5.8 | 16.2 | 16 | ||||
05.07.19 | Application mapping: problem definition, classification of scheduling systems | 6.1, 6.2.1 | 17.1 | es-marw-6.1-aperiodic.ppt es-marw-6.1-aperiodic.pdf |
17 | ||
Application mapping: Aperiodic scheduling without precedence constraints | 6.2.2 | 17.2 | Animation | 17 | |||
Application mapping: Aperiodic scheduling with precedence constraints | 6.2.3 | es-marw-6.2-hls-scheduling.ppt es-marw-6.2-hls-scheduling.pdf |
17 | ||||
10.07.19 | Application mapping: Periodic scheduling without precendence constraints | 6.2.4 | 18.1 | es-marw-6.3-periodic.ppt es-marw-6.3-periodic.pdf |
Animation | 18 | |
Application mapping: Periodic scheduling with precendence constraints, sporadic events | 6.2.5, 6.2.6 | 18 | |||||
Application mapping: Hardware/Software Partitioning | 6.3 | 18.2 | es-marw-6.4-cool.ppt es-marw-6.4-cool.pdf |
18 | |||
12.07.19 | Exam dry run | 19 |
In the lab exercises, we will solve practical problems related to the lecture to provide you with a deeper understanding of the respective topics. The assignments must not be solved alone but in teams of 2-3 people (teams will be formed during the first exercise sessions). Please note that although we offer three different time slots for the exercises, you need to attend only one of them. Please register for your time slot of choice via the AsSESS system (registration will be open from 08.05.2019). If you have any problems with the registration, please contact us.
Attention: Due to technical issues, we kindly ask you to bring your own laptop and install VirtualBox as well as the VM provided here.
Relevant information at a glance:
Please always write your group number on your solution, so that it is clearly visible.
Exercise Sheet | Published On | Discussion | Deadline | Notes |
1 | 07.05.2019 | 15.-16.05.2019 | 13.05.2019 12:00 | OSEK, OIL, ev3osek.zip, collisiondetect.zip |
2 | 14.05.2019 | 22.-23.05.2019 | 20.05.2019 12:00 | oilexercise.zip |
3 | 20.05.2019 | 05.-06.06.2019 | 03.06.2019 12:00 | assignment 1 updated, periodicrealtimescheduling.zip |
4 | 31.05.2019 | 12.-13.06.2019 | 11.06.2019 12:00 | advancedcollisiondetect.zip |
5 | 11.06.2019 | 26.-27.06.2019 | 24.06.2019 12:00 | |
6 | 24.06.2019 | 10.-11.07.2019 | 08.07.2019 12:00 |
Information for ISP students: