You are here:

Home Teaching




Members of Chair 12 of Computer Science (Embedded Systems) are involved in the education of Computer Engineering. The following courses will be offered regularly by Chair 12:


This lecture presents different advanced concepts of computer-architecture. In the beginning, there will be a broad overview of possible programming models who were developed for various universal computers and special machines (e.g. signal processor). In the following the lecture will deal with some aspects of microarchitecture of processors, in particular advanced techniques of pipelined processing and realisation of fundamental datatype operations. In the second half of the course computer systems with more than one processor are one of the main topics. Based on the parallel processing various architectures with different degrees of coupling between the computing unit and memory unit will be presented (e.g. multi-core-systems, multiprocessors, cluster computer). Obviously, there is an particular emphasis on different types of parallel processing in the second half of the course.

The main part of this course are embedded systems. These are systems where the information processing is embedded in larger systems like a car or a consumer electronic device. Embedded systems have particularly large requirements relating to reliability and are often efficient in relation to the size, cost and energy supply. The lecture includes the following topics: specification languages for embedded systems, hardware of embedded systems, software for embedded systems, hardware-/software-codesign, special compiler techniques for embedded processors, real time scheduling, introduction to control theory, digital signal processing and machine vision. The lecture will be offered in a short version in english ("Introduction to Embedded Systems"). In the practical course the students will work with the StateMate-Werkzeug for specification of hierarchical automats as well with the Lego MindStorm robots.

This course will be taught in English in the Wintersemester 2017/18. The written exam will still be in German.

The course Computerstructure is intended for computer science students in the first semester (bachelor). The lecture deals with the following topics: boolean algebra, gate circuit, fundamental datatypes of computers, Von-Neumann-computer, assembler programming, micro programming, pipelined processing, memory management, in-/outputorganisation. The lecture follows in some parts the book Hennessy/Patterson: Computer Organization - The hardware/software interface, Morgan Kaufmann.

In this lecture some CAD techniques und tools for the Design of Embedded Systems will be presented. The topics include: specification of hardware, simulation of hardware, hardware-/software-codesign, binary decision diagrams (BDD), placement and wiring of embedded components. The lecture follows in some parts the book P. Marwedel: Synthese und Simulation von VLSI-Systemen, Hanser-Verlag, 1993.

This course is one of the in-depth modules of "Embedded and Distributed Systems" in the master's programme. It deals with important basics in the area of Real Time Systems, for example the estimation of the worst case execution time, scheduling and schedulability tests for real time task sets on single- and multicore-systems and real time communication. The course will be usually offered each summer term and in english.

Real-Time Operating Systems (RTOS) are very important to maintain the timeliness of the response in embedded systems. This course will discuss the kernel of real-time operating systems and how to design timing predictable systems for safety-critical and robust applications, such as robotic and automotive systems. The lectures will introduce the theoretical basis of RTOSes, and emphasize hands-on design and implementation of an RTOS.

Each summer term, a course entitled "Cyber-Physical System Fundamentals" (formerly "Introduction to Embedded Systems") is held. This course includes the following topics: definition of terms, specification languages for embedded systems, hardware for embedded systems, real-time operating systems, task mapping, hardware/software codesign, compilers for embedded processors, low-power/low-energy software, real-time scheduling, validation, machine vision.In an associated lab, students learn specifying hierarchical state machines using StateMate and learn programming Lego MindStorm robots. This course starts in May or June, after the arrival of International Summer School students. The course cam also be attended by other guest students. The course comes with mid-terms and finals. Recorded lectures are available on youtube.

Practical course

For most of the computer science students the Hardware Design Teaching Lab is a compulsory course in their studies. It is also part of the Chair 12.


Seminars covering various themes in the area Computer Engineering will be offered in irregular intervals. Topics include: optical transmission technology, advanced topics in the field of computerarchitecture, tools for design of microelectronics, chip card. (Overview)

Project groups

In regularly intervals members of Chair 12 offer different project groups in the field of Computer Engineering. In the last semester the topics include: design of a robot vacuum cleaner with dirt recognition, design of the game RoboRally with autonomous robots, design of a storage hierarchy profiler with FPGA, design of a lego robot with two legs, and more topics. (Overview)

Bachelor & Master theses

There are always topics for Bachelor and Master theses in the field of Computer Engineering.