Course syllabus
Course-PM
EEN090 Embedded control systems lp4 VT23 (7.5 hp)
The course is offered by the Department of Electrical Engineering
Contact details
Examiner and lecturer
Bengt Lennartson, phone: 031-772 3722, bengt.lennartson@chalmers.se
Teaching Assistant
Wenhao Lu, wenhaol@chalmers.se
Exam Office
Room EDIT 3342, studadm.e2@chalmers.se
Course purpose:
The aim of the course is to introduce modeling, specification, and analysis of embedded control systems. Embedded control systems are usually distributed systems and consist of different components interacting with each other. Moreover, they are usually complex and safety-critical. Thus, it is important to establish that system works correctly during the design phase.
After this course, the student should be able to:
1. Describe the general characterization of embedded and distributed systems.
2. Explain the concept related to distributed real-time systems, including concurrency and multi-tasking and multi threads and shared resource.
3. Describe the challenges in the real-time system including deadlock and starvation and the possible solutions including scheduling, mutual exclusion, and critical section.
4. Explain communication protocols for embedded systems.
The following concepts will be described at different levels in the course: task, critical regions, mutual exclusion and synchronization, deadlock, timing constraints ("soft/hard" systems), schedulability analysis for systems with static and dynamic task priorities, discrete event systems including verification, synthesis, and optimization.
Lecture Program
Lecture nr/
|
Date, Room | Content |
L1, Pw 1 |
Tuesday, March 21, 10-12, Jupiter122 |
Introduction, RTS Ch 1. |
L2, Pw 1 |
Wednesday, March 22, 13-16, Svea118 |
Discrete event systems. DES Ch 3, pp.53-67, Ch 8 pp. 119-125. |
L3, Pw 1 |
Friday, March 24, 10-12, Jupiter122 |
Microcontrollers, RTS Ch 3. |
L4, Pw 2 |
Monday, March 27, 13-16, Jupiter122 |
Multithreading, RTS Ch 6, Scheduling, RTS Ch 7. |
L5, Pw 3 |
Monday, April 17, 13-15, Zoom |
Scheduling, RTS Ch 7. |
L6, Pw 3 |
Thursday, April 20, 10-12, Svea130 |
Worst-case execution time (WCET) analysis |
L7, Pw 4 |
Monday, April 24, 13-15, Svea130 |
Petri nets, synchronization |
L8, Pw4 |
Friday, April 28, 8-10, Delta |
Mutual exclusion, semaphores |
L9, Pw5 |
Tuesday, May 2, 8-10, Jupiter121 |
Formal verification |
L10, Pw5 |
Wednesday, May 3, 13-15, Gamma |
Optimization |
L11, Pw6 |
Monday, May 8, 13-16, Svea118 |
Supervisory control |
L12, Pw6 |
Wednesday, May 10, 13-15, Svea118 |
Real-time operating system (RTOS) |
L13, Pw7 |
Tuesday, May 16, 10-12, Jupiter122 |
Inputs & outputs, bus communication |
L14, Pw8 |
Monday, May 22, 13-15, Jupiter243 |
Summary |
Exercise Program
Exercise nr/
|
Date, Room | Content |
E1, Pw 1 |
Thursday, March 23, 10-12, Jupiter122 |
Discrete event systems |
E2, Pw 2 |
Tuesday, March 28, 10-12, Jupiter122 |
Posix and multithreading |
E3, Pw 3 |
Tuesday, April 18, 8-10, Jupiter121 |
Scheduling |
E4, Pw 3 |
Wednesday, April 19, 10-12, Jupiter121 |
Support Assignment 1 |
E5, Pw 4 |
Tuesday, April 25, 08-10, Jupiter122 |
Worst-case execution time (WCET) analysis |
E6, Pw 5 |
Wednesday, May 3, 15-17, Gamma |
Synchronization and input-output |
E7, Pw5 |
Thursday, May 4, 10-12, Jupiter122 |
Canceled |
E8, Pw6 |
Tuesday, May 9, 10-12, Jupiter122 |
Formal verification and supervisory control |
E9, Pw7 |
Monday, May 15, 10-12, Jupiter121 |
Support Assignment 3 |
E10, Pw8 |
Monday, May 22, 15-17, Jupiter 243 |
Old exam |
Home Assignments
Submission date | Content | |
A1, Pw 3 |
Friday, April 21 |
Posix and multithreading |
A2, Pw 6 |
Wednesday, May 10 |
Optimization |
A3, Pw 7 |
Wednesday, May 17 |
Kernel and FreeRTOS |
Course literature
D.W. Harder, J. Zarnett, V. Montaghami, and A. Giannikouris
A practical introduction to real-time systems for undergraduate engineering (RTS), see Files Literature.
E. A. Lee and S. A. Seshia
Introduction to Embedded Systems (IES), see Files Literature.
K. Tindell
Real-Time Systems and Fixed Priority Scheduling (FPS), see Files Literature
B. Lennartson
Discrete Event Systems (DES), see Files Literature.
Changes made since the last occasion
A new assignment on optimal scheduling will replace last year's first robot assignment.
Learning objectives and syllabus
Learning objectives:
- Describe the general characterization of embedded and distributed systems.
- Explain the concept related to distributed real-time systems, including concurrency and multi-tasking and multi threads and shared resource.
- Describe the challenges in real-time systems including deadlock and starvation and the possible solutions including scheduling, mutual exclusion, and critical section.
- Explain communication protocol for embedded systems.
Link to the syllabus on Studieportalen Study plan
Examination form
The students are evaluated through a final written exam (4.5 hec) and a compulsory laboratory assignment (3.0 hec).
The final grade, according to the scale Fail (U) or Pass (3, 4, 5), is given based on the individual grades for the written exam.
There are three individual assignments in the course. Additional information regarding these assignments will later be found on the Assignment page.
Course summary:
Date | Details | Due |
---|---|---|