Logo TU Ilmenau

Ihre Position


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.



Introduction to Embedded Systems Design


  • 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.


  • 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.


  • 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.

Assigned and offered topics

01Aperiodic task schedulingHard Real-time computing systems Chapter 3Andres Canabal

02Power-Aware Resource ManagementHandbook of Real-Time and Embedded Systems Chapter 6

03Overload managementSoft Real-Time Systems, Chapter 2

04C for embedded systemsProgramming Embedded Systems in C and C++Naeem Ali, Naveed Haider

05Ada for embedded systemsReal-Time Systems and Programming Languages, Ada resources

06Programming language choiceSoftware Engineering for Real-Time Systems, Chapter 9.4Sushma Nagaraj

07Low-level programmingReal-Time Systems and Programming Languages Chapter 15, Computers as Components Chapter 3.2Nikolai Gladchenko

08Real-time facilities in programming languagesReal-Time Systems and Programming Languages Chapter 12Diwakar Bajaj

09Software fault toleranceReal-Time Systems and Programming Languages Chapter 5Ahmad Khiji, Vasudeva Nayak Kukkundoor

10Exception handlingReal-Time Systems and Programming Languages Chapter 6Faisal Shahzad

11Concurrent programmingReal-Time Systems and Programming Languages Chapter 7Zhou Fan

12Shared-variable based synchronization and communicationReal-Time Systems and Programming Languages Chapter 8

13Message-based synchronization and communicationReal-Time Systems and Programming Languages Chapter 9

14Real-Time Kernel DesignHard Real-time computing systems Chapter 9Nikhil Rane

15Static analysis of embedded systemsSoftware Engineering for Real-Time Systems, Chapter 11.2
16Dynamic analysis of embedded systemsSoftware Engineering for Real-Time Systems, Chapter 11.4Ravi Mambally Das, Ramyashree Bhoja Raj
17Embedded Systems Debugging TechniquesSoftware Engineering for Real-Time Systems, Chapters 12.2-12.8
18Compilation techniquesComputers as Components Chapter 5.5
19An embedded system design exampleComputers as Components Chapter 1.5Muhammad Hasnain Mohsin, Kanwal Maqbool
20The ARM embedded processorComputers as Components Chapter 2.3Mingyi Lin
21Memory ManagementComputers as Components Chapter 3.5
22CPU bus systemsComputers as Components Chapter 4.2 
23I/O devicesComputers as Components Chapter 4.4
24Embedded networksComputers as Components Chapters 8.3.1, 8.3.2Deepak Kothandan
25The Time-Triggered ProtocolReal-Time Systems (Kopetz) Chapter 8
26Overview of Wireless Sensor NetworksNetworked Embedded Systems Chapter 3
27Wireless Sensor Network ArchitecturesNetworked Embedded Systems Chapter 4
28Routing Techniques for Wireless Sensor NetworksNetworked Embedded Systems Chapter 7Samrudi Shingavi, Amol Jog
29Trends in Automotive Communication SystemsNetworked Embedded Systems Chapter 13
30CAN - controller area networkNetworked Embedded Systems Chapter 14Vijaykumar Singh, Manoj Kumar Chinnasamy
31FlexRay BusNetworked Embedded Systems Chapter 15
32LIN BusNetworked Embedded Systems Chapter 16





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.