Complex Embedded Systems (2nd part, RCSE)
Course offered by the System and Software Engineering group together with the Computer Architecture and Embedded Systems Group, Summer semester 2013 through Winter semester 2013/14.
This page describes the winter semester part for participants that have already taken part in the summer semester 2013.
Credits
- Master "Research in Computer & Systems Engineering": compulsory optional subject for second and third semester (Module "Computer Engineering & Architecture" of Advanced Studies)
- 2+2 SWS distributed over two semesters, 10 LP (credit points)
Contents
Introduction to Embedded Systems Design
News
- Topics for student talks are handed out on Thursday, October 24 at 09:00 in room Z2086. (time has been updated on Oct 9!) If you are unable to attend this meeting, ask one of your classmates to register you, or send an email after the meeting to register for one of the open topics.
- Students not having registered for a talk topic must select an open topic and register for it by email to Prof. Zimmermann after Oct 24!
- The talk date will be scheduled at the end of the winter semester.
News
- Appointments for the oral exam can be scheduled with the secetary of the group, Franziska Katzki. The exam is the final step, it cannot be done before lab and talk have been finished.
- Presentations of student talks are scheduled for
- Tuesday, January 28 8:30 - 11:00 (room t.b.d.)
- Wednesday, February 12 9:00 - 11:30 (room t.b.d.)
- Please contact Franziska Katzki to schedule your presentation! When doing so, inform her if you are a group or individual in the talk, because of the different available times.
- All CES students should attend the presentations.
Organization
- Lecturer: Prof. Dr.-Ing. Armin Zimmermann and Prof. Dr.-Ing. Wolfgang Fengler
- (Remaining) parts of the course
- Lab projects (starting in the summer semester and continuing until the end of winter semester)
- Talks prepared individually and given by students, students work together in groups of two (during the winter semester)
- Oral exam (end of winter semester)
- There are no lectures in the winter semester, although the Vorlesungsverzeichnis mentions some!
- Grading: individual oral exam at the end of the second semester, ~20 minutes. The results of lab and talks are also taken into account.
- All parts of the course will be held in English
Lab Assignment
This describes the lab tasks that are part of the CES class, there is an additional "Lab Training" class offered by the SSE group outside of CES.
The lab is a digitally controlled Märklin model railroad with two engines, that have to be reliably controlled following a train schedule even in the case of errors (fault-tolerance). Real-time requirements have to be met by the controlling software, which is programmed in Real-Time Java running in a Real-Time Linux environment on a PC. The full functionality is implemented incrementally during the solution of subsequent tasks. Model train lab and development computers are located in Zuse building room Z2045. Students work together in groups of up to three. When a group has finished programming a task, the result must be presented to work correctly. The lab already started in the previous summer semester and can not be only attended in the winter semester.
Continuing last semester, all information and assignments for the lab are presented in the dedicated moodle course.
Student Talks
At the end of the winter semester, there will be a few seminar-style meetings with talks given by the students (dates see News above) about selected topics in embedded system design. Two students will get one topic, and have to jointly prepare and give the talk. Topics are based on books from the course collection in the library and others that can be borrowed from Prof. Zimmermann.
Each talk must not exceed 12 minutes (15 minutes for talks prepared by two students), discussion time is extra. Dont try to squeeze all of the contents of your reference documents into the slides, concentrate on the main points of your topic. It is not necessary to repeat information known from the previous lectures (S&SE, CES). Please email your presentation (either PDF or PPT format) to Prof. Zimmermann on the day before the seminar, to give all presentations using one laptop computer.
Date | Topic | Literature | Students | |
---|---|---|---|---|
01 | Aperiodic task scheduling | Hard Real-time computing systems Chapter 3 | Andres Canabal | |
02 | Power-Aware Resource Management | Handbook of Real-Time and Embedded Systems Chapter 6 | ||
03 | Overload management | Soft Real-Time Systems, Chapter 2 | ||
04 | C for embedded systems | Programming Embedded Systems in C and C++ | Naeem Ali, Naveed Haider | |
05 | Ada for embedded systems | Real-Time Systems and Programming Languages, Ada resources | ||
06 | Programming language choice | Software Engineering for Real-Time Systems, Chapter 9.4 | Sushma Nagaraj | |
07 | Low-level programming | Real-Time Systems and Programming Languages Chapter 15, Computers as Components Chapter 3.2 | Nikolai Gladchenko | |
08 | Real-time facilities in programming languages | Real-Time Systems and Programming Languages Chapter 12 | Diwakar Bajaj | |
09 | Software fault tolerance | Real-Time Systems and Programming Languages Chapter 5 | Ahmad Khiji, Vasudeva Nayak Kukkundoor | |
10 | Exception handling | Real-Time Systems and Programming Languages Chapter 6 | Faisal Shahzad | |
11 | Concurrent programming | Real-Time Systems and Programming Languages Chapter 7 | Zhou Fan | |
12 | Shared-variable based synchronization and communication | Real-Time Systems and Programming Languages Chapter 8 | ||
13 | Message-based synchronization and communication | Real-Time Systems and Programming Languages Chapter 9 | ||
14 | Real-Time Kernel Design | Hard Real-time computing systems Chapter 9 | Nikhil Rane | |
15 | Static analysis of embedded systems | Software Engineering for Real-Time Systems, Chapter 11.2 | ||
16 | Dynamic analysis of embedded systems | Software Engineering for Real-Time Systems, Chapter 11.4 | Ravi Mambally Das, Ramyashree Bhoja Raj | |
17 | Embedded Systems Debugging Techniques | Software Engineering for Real-Time Systems, Chapters 12.2-12.8 | ||
18 | Compilation techniques | Computers as Components Chapter 5.5 | ||
19 | An embedded system design example | Computers as Components Chapter 1.5 | Muhammad Hasnain Mohsin, Kanwal Maqbool | |
20 | The ARM embedded processor | Computers as Components Chapter 2.3 | Mingyi Lin | |
21 | Memory Management | Computers as Components Chapter 3.5 | ||
22 | CPU bus systems | Computers as Components Chapter 4.2 | ||
23 | I/O devices | Computers as Components Chapter 4.4 | ||
24 | Embedded networks | Computers as Components Chapters 8.3.1, 8.3.2 | Deepak Kothandan | |
25 | The Time-Triggered Protocol | Real-Time Systems (Kopetz) Chapter 8 | ||
26 | Overview of Wireless Sensor Networks | Networked Embedded Systems Chapter 3 | ||
27 | Wireless Sensor Network Architectures | Networked Embedded Systems Chapter 4 | ||
28 | Routing Techniques for Wireless Sensor Networks | Networked Embedded Systems Chapter 7 | Samrudi Shingavi, Amol Jog | |
29 | Trends in Automotive Communication Systems | Networked Embedded Systems Chapter 13 | ||
30 | CAN - controller area network | Networked Embedded Systems Chapter 14 | Vijaykumar Singh, Manoj Kumar Chinnasamy | |
31 | FlexRay Bus | Networked Embedded Systems Chapter 15 | ||
32 | LIN Bus | Networked Embedded Systems Chapter 16 |
Literature
Textbooks
Course reserve collection in the TU Ilmenau library - books for the course that cannot be borrowed but have to be read in the library. The following books will be available during the semester:
- Wayne Wolf: Computers as Components (Kaufmann 2001)
- Alan Burns and Andy Wellings: Real-time systems and programming languages (Addison-Wesley 2001)
- Jane Liu: Real-Time Systems (also online)
- Jim E. Cooling: Software engineering for real-time systems (Addison-Wesley 2001)
Further comments in the lecture.