A Generic Framework for Blackbox Components in WCET Computation

Validation of embedded hard real-time systems requires the computation of the Worst Case Execution Time (WCET). Although these systems make more and more use of Components Off The Shelf (COTS), the current WCET computation methods are usually applied to whole programs: these analysis methods require access to the whole system code, that is incompatible with the use of COTS. In this paper, after discussing the specific cases of the loop bounds estimation and the instruction cache analysis, we show in a generic way how static analysis involved in WCET computation can be pre-computed on COTS in order to obtain component partial results. These partial results can be distributed with the COTS, in order to compute the WCET in the context of a full application. We describe also the information items to include in the partial result, and we propose an XML exchange format to represent these data. Additionally, we show that the partial analysis enables us to reduce the analysis time while introducing very little pessimism.

[1]  Reinhard Wilhelm,et al.  Applying Compiler Techniques to Cache Behavior Prediction , 2007 .

[2]  Pascal Sainrat,et al.  Static Loop Bound Analysis of C Programs Based on Flow Analysis and Abstract Interpretation , 2008, 2008 14th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[3]  David B. Whalley,et al.  Fast instruction cache analysis via static cache simulation , 1995, Proceedings of Simulation Symposium.

[4]  Frank Müller,et al.  Timing Analysis for Instruction Caches , 2000, Real-Time Systems.

[5]  Sharad Malik,et al.  Performance Analysis of Embedded Software Using Implicit Path Enumeration , 1995, 32nd Design Automation Conference.

[6]  Patrick Cousot,et al.  Static determination of dynamic properties of programs , 1976 .

[7]  Keshav Pingali,et al.  The program structure tree: computing control regions in linear time , 1994, PLDI '94.

[8]  Pascal Sainrat,et al.  An improved approach for set-associative instruction cache partial analysis , 2008, SAC '08.

[9]  Patrick Cousot,et al.  Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints , 1977, POPL.

[10]  Clément Ballabriga,et al.  Improving the WCET computation time by IPET using control flow graph partitioning , 2008, WCET.

[11]  Abdur Rakib,et al.  Component-Wise Instruction-Cache Behavior Prediction , 2004, ATVA.

[12]  Björn Lisper,et al.  Towards an Automatic Parametric WCET Analysis , 2008, WCET.

[13]  Pascal Sainrat,et al.  OTAWA, a Framework for Experimenting WCET Computations , 2006 .

[14]  Frank Mueller,et al.  Compositional static instruction cache simulation , 2004, LCTES '04.

[15]  Reinhard Wilhelm,et al.  Cache Behavior Prediction by Abstract Interpretation , 1996, Sci. Comput. Program..

[16]  Isabelle Puaut,et al.  Worst Case Execution Time Analysis for a Processor with Branch Prediction , 2004, Real-Time Systems.

[17]  Clément Ballabriga,et al.  Improving the First-Miss Computation in Set-Associative Instruction Caches , 2008, 2008 Euromicro Conference on Real-Time Systems.

[18]  P. Feautrier Parametric integer programming , 1988 .