The embedded Software & Systems Research Center (SRC) hosts three organizational units:

  • Software Research Group
    Head: Prof. Dr. Wolfgang Pree
  • C.Doppler Laboratory (CDL) Embedded Software Systems
    Director: Prof. Dr. Wolfgang Pree
  • Computational Systems Group
    Head: Prof. Dr. Christoph Kirsch

The CDL has the following research goals: The reliability and quality of embedded systems suffers from the fact that the state-of-the-art in embedded software development is significantly behind modern programming in non-real-time domains. Thus, the overall objective of the C. Doppler Laboratory Embedded Software Systems is to deliver innovative software technologies for the construction of dependable, safety-critical embedded software-based automation and control systems. In particular, the C. Doppler Laboratory Embedded Software Systems aims at delivering cutting edge research by coming up with (1) a model-based development of the timing properties of embedded software and (2) an extensible component architecture for embedded software systems. The two project modules summarized below correspond to these two intertwined research areas. The prototypical industrial application in the context of our partner, the AVL List GmbH, will demonstrate the feasibility of the developed concepts, methods and tools.

Module 1 (Model-based development of timing behavior). Model-based development of timing behavior requires abstractions for explicitly defining the timing properties of embedded software and generating executable code from these definitions. In the prevalent programming model the timing of software is an accidental consequence of an implementation rather than a specified part of the design. The result is that when software is ported from one platform to another, timing changes significantly, often leading to significantly different computations. The C. Doppler Laboratory Embedded Software Systems builds on pioneering fundamental research in the Giotto project at the University of California, Berkeley. The Giotto project introduced the notion of a Logical Execution Time (LET) that abstracts from the particular physical execution. The expected results of the C. Doppler Laboratory Embedded Software Systems will be based on the LET programming model and should make it possible to combine software services on shared hardware resources without changing their temporal behavior. This is a major current objective in the automotive industry, for example, where consolidation of embedded control units (ECUs) is a key objective. Specifying timing behavior at the programming level and enforcing it at run time are key.

Module 2 (Extensible embedded software). A software system that allows for adding new code without touching existing code is called an extensible software system, often refered to as plug-in architecture. A main reason why state-of-the-art embedded systems are difficult to extend is their coarse-grained modularization into a real-time and a non-real-time subsystem. Each of these two subsystem typically replicates functionality of the other one. Module 2 focuses on one of the challenges that has not been adressed so far in the research community: the seamless integration of component standards for non-real-time and for real-time systems. As basic activity we will rearchitect core parts of an existing AVL automation system that is representative for the sketched modularization problem. The results should be a prototypical plug-in architecture of an automation system that seamlessly integrates real-time and non-real-time aspects, enhancements of real-time and probably non-real-time component standards, and an appropriate documentation of the plug-in architecture.

Industry Partner in the C. Doppler Lab: AVL List GmbH, Hans-List-Platz 1, 8020 Graz