# Embedded Systems

Bernd Finkbeiner, Room 506, Building E 1 3, office hours Wednesdays 14-16

Calogero G. Zarba, Room 507, Building E 1 3

Moritz Hahn, emh at studcs.uni-sb.de, Room 531, Building E 1 3, office hours Mondays 11-13

## Time and place

*Lectures:*

Tue, Thu 9:15-10:45, Building E1 3, Room 003

*Tutorials*:

Tutorial A: Wednesdays 11-13 Room 016 E 1 3

Tutorial B: Fridays 14-16 Room 015 E 1 3

## News

- Sep 24, 2007:
**The backup exam will take place on Friday, September 28 in HS002, Building E1 3, at 9:00am. The list of students admitted to the backup exam is available online. The exam will be closed-book except for a single A4 sheet of paper with your own notes. (You may use both sides of the sheet.) Calculators cannot be used. Don’t forget to bring your ID.** - Jul 25, 2007: The final exam will take place on Thursday, July 26, 2007, at 2:00pm in lecture hall 1 of the Math building. The list of students admitted to the final exam is available online. The exam will be closed-book except for a single A4 sheet of paper with your own notes. (You may use both sides of the sheet.) Calculators cannot be used. Don’t forget to bring your ID. Good luck!
- Jul 25, 2007: There has been a typo in the sample questions set for the final exam: In the exercise about Kahn networks, we actually meant (n*(n+1))/2 instead of (n*(n-1))/2. The solution set has been adopted to this and a notice was added.
- Jul 25, 2007: A sample solution set for the sample questions for the final examn has been added
- Jul 23, 2007: There where two errors in solution set 10, problem 4 b) (two paths where just swapped) which are now corrected.
- Jul 20, 2007: The list of students admitted to the final exam is available online
- Jul 17, 2007: Added some sample final exam questions
- Jul 10, 2007: Corrected several mistakes in sample solution 9
- Jul 5, 2007: Corrected a major mistake in sample solution 8, problem 4 © and a minor one in problem 3
- Jul 2, 2007: The course evaluation in CLIX is open now. More information about CLIX is available on the department web pages.
- Jun 29, 2007: In Problem 2 of Problem Set 8 we are asking for an algorithm whose complexity is no worse than O(n log n).
- Jun 20, 2007: Corrected two minor mistakes in solution set 6.
- Jun 19, 2007: Corrected a mistake in solution set 6.
- Jun 18, 2007: The final exam will take place on Thursday, July 26, 2007, at 2pm in lecture hall 1 of the Math building. Please note the change of time and place.
- Jun 16, 2007: The grades of the project can be found online. You will need the same username and password that you used to view the midterm grades.
- Jun 14, 2007: Added a reference to the Fault Tree Handbook in the lecture notes.
- Jun 14, 2007: Fixed typo in Problem Set 6, Problem 3d.
- Jun 11, 2007: The final exam will cover
*all*material taught in class, with emphasis on the second part of the course. - Jun 11, 2007: As per University Regulations, you need to register online for the final exam. Full instructions can be found at frweb.cs.uni-sb.de/03.Studium/011.HISPOS/. The deadline is
**June 22**. - Jun 6, 2007: Chinook example has been added
- May 31, 2007: When doing exercises 1 and 2 of Part II of the project, you can use either your own stop watch from the last problem set, or, if desired, you can start with this stopwatch. Note that our model runs at 1Hz frequency.
- May 31, 2007: The midterm inspection will take place on June 13, from 8am to 11am, in Room 528 of Building E1.3.
- May 30, 2007: The project should be submitted using an online form. Please include only text files, i.e., only txt files and Matlab mdl files.
- May 25, 2007: The midterm grades are available online.
- May 21, 2007: The midterm will start tomorrow at
**9.15 sharp**. It will take place in**room HS002**(instead of room HS003). Please arrive at least 10 minutes earlier. - May 18, 2007: The sample solution for problem set 4 is online now
- May 18. 2007: The sample solution for problem set 1, exercise 2 contained a mistake which has been corrected: In the old version, you would reset x to 1 and y to 0 all the time even C occurs, what was not meant to be so.
- May 16, 2007: The RBG will make Matlab available during weekends in room 103. Matlab is already installed on cip225-cip227, more machines will be added.
- May 14, 2007: Matlab can be started by typing /usr/local/matlab/bin/matlab
- May 3, 2007: In Problem Set 3, Problem 2, please use the semantics presented in class. In class we presented the semantics of the STATEMATE tool (i.e., Harel’s classic semantics), which differs from the semantics of STATEFLOW.
- May 2, 2007: STATEFLOW appears to be working again.
- Apr 30, 2007: Simplified Problem 5 of Problem Set 2. This allows for a much easier solution.
- Apr 26, 2007: Published the exams policy
- Apr 25, 2007: Problem set 3 will be handed out on the web on Monday evening.
- Apr 25, 2007: Problem set 2 contains questions about Petri Nets whose material will be fully covered in tomorrow’s lecture
- Apr 25, 2007: There are two possible solutions to Problem Set 1, Problem 1, Question c. One solution follows the synchronous time model, the other the asynchronous time model. We accept both solutions.
- Apr 25, 2007: A mailbox labeled “embedded systems” has been set up in the basement. If wished, you can put in the mailbox a solved problem set before its deadline.
- Apr 25, 2007: The deadline for submitting the solutions of Problem Set 2 has been postponed to Wednesday, May 2, 11:14am,
*before*the tutorial starts. - Apr 23, 2007: There appears to be a problem with the STATEFLOW installation on the bio.studcs machines. The RBG is working on it. We will keep you informed.
- April 19, 2007: Updated Problem Set 1, Problem 1, Question ©.
- April 19, 2007: Homeworks can be done in groups of up to 3 people.
- April 18, 2007: Registration is open until Friday, May 4. For deregistration, send us an email before Friday, May 11.
- April 17, 2007: We moved the due date for the problem sets from Mondays to
*Tuesdays before the start of the lecture*.

## Syllabus

Embedded systems are computer systems that are encapsulated into larger products, and that are normally not directly visible to the user. Embedded systems are responsible of the information processing in transportation systems (e.g., airplanes, trains, cars), telecommunication equipment (e.g., mobile phones), and consumer electronics products (e.g., TVs, DVD-players).

In this course we will study the theoretical foundations and practical tools that are needed to build reliable and efficient embedded systems.

## Topics

*Specification:*review of the most commonly used languages employed in the specfication of embedded systems (e.g., StateCharts, Petri nets, and VHDL);*Embedded hardware:*sensors, communication units, processing units, memories, and actuators;*Embedded software:*embedded operating systems, scheduling algorithms;*Hardware/software codesign:*methods for the optimal division of labor between the hardware and software parts of an embedded system;*Validation:*methods for ensuring that an embedded system behaves as expected: simulation, testing, formal verification.

## Main textbook

Peter Marwedel.

*Embedded System Design.*

Springer, Berlin;

2nd Print (1. November 2005)

ISBN-10: 0387292373