1st International ICST Conference on Simulation Tools and Techniques for Communications, Networks and Systems

Research Article

WCET determination tool for embedded systems software

Download456 downloads
  • @INPROCEEDINGS{10.4108/ICST.SIMUTOOLS2008.3044  ,
        author={Carsten  Albrecht and Roman  Koch and Thilo  Pionteck and Erik  Maehle and Michael  Werner and Rudolf  Fuchsen},
        title={WCET determination tool for embedded systems software},
        proceedings={1st International ICST Conference on Simulation Tools and Techniques for Communications, Networks and Systems},
        publisher={ICST},
        proceedings_a={SIMUTOOLS},
        year={2010},
        month={5},
        keywords={},
        doi={10.4108/ICST.SIMUTOOLS2008.3044  }
    }
    
  • Carsten Albrecht
    Roman Koch
    Thilo Pionteck
    Erik Maehle
    Michael Werner
    Rudolf Fuchsen
    Year: 2010
    WCET determination tool for embedded systems software
    SIMUTOOLS
    ICST
    DOI: 10.4108/ICST.SIMUTOOLS2008.3044
Carsten Albrecht1,*, Roman Koch1, Thilo Pionteck1, Erik Maehle1, Michael Werner2,*, Rudolf Fuchsen2
  • 1: Institute of Computer Engineering, University of Lübeck, Ratzeburger Allee 160, 23538 Lübeck, Germany.
  • 2: Sysgo AG, Am Pfaffenstein 14, 55270 Klein-Winternheim, Germany.
*Contact email: albrecht@iti.uni-luebeck.de, michael.werner@sysgo.com

Abstract

Embedded systems are special-purpose computer systems within environments such as automotive, avionic, telecommunication, etc. As these systems often perform time-critical control tasks, it is necessary to precisely predict their behaviour. Software-based solutions on the one hand provide high flexibility. On the other hand, especially when multiple software processes are to be executed concurrently on the same hardware, the software approach makes prediction more difficult. Predictions essentially rely on the knowledge of when a software process terminates. For a reasonable system architecture it has to be known at an early stage of design time to scale the system well. Dynamic factors such as cache usage, amount of data, and availability of shared resources have great impact on the result. Thus, tools are necessary to determine execution time as accurate as possible. The execution time is commonly approximated by determining the interval of best and worst case execution time (BCET & WCET). While the BCET can be roughly estimated by evaluating the shortest path the achievement of good approximations for the WCET is heavy. Considering all possible execution paths of the analysed program as well as the effects of the underlying architecture on the timing properties affected by pipelining and caches create a hard issue to solve. Nevertheless these figures are important in certification processes in the application fields given above as well as performance prediction and solving design issues. Another motivation is the lack of tools targeted to an intermediate level of abstraction. In general tools are re-targetable frameworks analysing high-level code with sophisticated algorithms or similar algorithms are applied to low-level code that lacks context and type information.