Static Timing Analysis for Hard Real-Time Systems

Hard real-time systems have to satisfy strict timing constraints. To prove that these constraints are met, timing analyses aim to derive safe upper bounds on tasks’ execution times. Processor components such as caches, out-of-order pipelines, and speculation cause a large variation of the execution time of instructions, which may induce a large variability of a task’s execution time. The architectural platform also determines the precision and the complexity of timing analysis. This paper provides an overview of our timing-analysis technique and in particular the methodological aspects of interest to the verification community.

[1]  Christoph Berg PLRU Cache Domino Effects , 2006, WCET.

[2]  Jan Reineke,et al.  Memory Hierarchies, Pipelines, and Buses for Future Architectures in Time-Critical Embedded Systems , 2009, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[3]  Peter Altenbernd,et al.  Timing analysis, scheduling, and allocation of periodic hard real-time tasks , 1996 .

[4]  Bernd Becker,et al.  A Definition and Classification of Timing Anomalies , 2006, WCET.

[5]  Sharad Malik,et al.  Performance analysis of embedded software using implicit path enumeration , 1997, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[6]  J. Herter CAMA : Cache-Aware Memory Allocation for WCET Analysis , 2008 .

[7]  Henrik Theiling,et al.  Control flow graphs for real-time systems analysis: reconstruction from binary executables and usage in ILP-based path analysis , 2002 .

[8]  Siddhartha Chatterjee,et al.  Exact analysis of the cache behavior of nested loops , 2001, PLDI '01.

[9]  Jan Reineke,et al.  Caches in WCET Analysis: Predictability - Competitiveness - Sensitivity , 2008 .

[10]  Thomas W. Reps,et al.  Shape Analysis and Applications , 2007, The Compiler Design Handbook, 2nd ed..

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

[12]  Reinhard Wilhelm,et al.  4th Intl WORKSHOP ON WORST-CASE EXECUTION TIME (WCET) ANALYSIS , 2004 .

[13]  Jan Reineke,et al.  Making Dynamic Memory Allocation Static to Support WCET Analysis , 2009, WCET.

[14]  Jan Reineke,et al.  Relative competitive analysis of cache replacement policies , 2008, LCTES '08.

[15]  Henrik Theiling,et al.  Reliable and Precise WCET Determination for a Real-Life Processor , 2001, EMSOFT.

[16]  Edmund M. Clarke,et al.  Symbolic Model Checking: 10^20 States and Beyond , 1990, Inf. Comput..

[17]  Stefan M. Petters Worst case execution time estimation for advanced processor architectures , 2002 .

[18]  Henrik Theiling ILP-Based Interprocedural Path Analysis , 2002, EMSOFT.

[19]  Jan Gustafsson,et al.  Deriving Annotations for Tight Calculation of Execution Time , 1997, Euro-Par.

[20]  Florian Martin,et al.  Analysis of path exclusion at the machine code level , 2007, WCET.

[21]  Raimund Kirner,et al.  Measurement-Based Timing Analysis , 2008, ISoLA.

[22]  Reinhard Wilhelm Determining Bounds on Execution Times , 2009, Embedded Systems Design and Verification.

[23]  Sharad Malik,et al.  Precise miss analysis for program transformations with caches of arbitrary associativity , 1998, ASPLOS VIII.

[24]  Lothar Thiele,et al.  Design for Timing Predictability , 2004, Real-Time Systems.

[25]  Stephan Thesing,et al.  Pipeline Modeling for Timing Analysis , 2002, SAS.

[26]  Jakob Engblom,et al.  Processor Pipelines and Static Worst-Case Execution Time Analysis , 2002 .

[27]  David B. Whalley,et al.  Supporting Timing Analysis by Automatic Bounding of Loop Iterations , 2000, Real-Time Systems.

[28]  Guillem Bernat,et al.  WCET analysis of probabilistic hard real-time systems , 2002, 23rd IEEE Real-Time Systems Symposium, 2002. RTSS 2002..

[29]  Reinhard Wilhelm,et al.  Parametric shape analysis via 3-valued logic , 1999, POPL '99.

[30]  Reinhard Wilhelm,et al.  The influence of processor architecture on the design and the results of WCET tools , 2003, Proceedings of the IEEE.

[31]  Andreas Ermedahl,et al.  A Modular Tool Architecture for Worst-Case Execution Time Analysis , 2008 .

[32]  Henrik Theiling,et al.  Fast and Precise WCET Prediction by Separated Cache and Path Analyses , 2000, Real-Time Systems.

[33]  Sebastian Altmeyer,et al.  A New Notion of Useful Cache Block to Improve the Bounds of Cache-Related Preemption Delay , 2009, 2009 21st Euromicro Conference on Real-Time Systems.

[34]  Jan Reineke,et al.  Abstract Interpretation of FIFO Replacement , 2009, SAS.

[35]  Björn Wachter,et al.  Symbolic state traversal for WCET analysis , 2009, EMSOFT '09.

[36]  David B. Whalley,et al.  Timing analysis for data caches and set-associative caches , 1997, Proceedings Third IEEE Real-Time Technology and Applications Symposium.

[37]  Jakob Engblom,et al.  The worst-case execution-time problem—overview of methods and survey of tools , 2008, TECS.

[38]  Nigel P. Topham,et al.  A Limitation Study into Access Decoupling , 1997, Euro-Par.

[39]  Sofia Cassel,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 2012 .

[40]  Jan Reineke,et al.  Timing predictability of cache replacement policies , 2007, Real-Time Systems.

[41]  David B. Whalley,et al.  Integrating the timing analysis of pipelining and instruction caching , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[42]  Reinhard Wilhelm,et al.  Improving the Precision of WCET Analysis by Input Constraints and Model-Derived Flow Constraints , 2012, Advances in Real-Time Systems.

[43]  Y. N. Srikant,et al.  Executable Analysis using Abstract Interpretation with Circular Linear Progressions , 2007, 2007 5th IEEE/ACM International Conference on Formal Methods and Models for Codesign (MEMOCODE 2007).

[44]  Stephan Thesing,et al.  Safe and precise WCET determination by abstract interpretation of pipeline models , 2004 .

[45]  Reinhard Wilhelm,et al.  Efficient and Precise Cache Behavior Prediction for Real-Time Systems , 1999, Real-Time Systems.

[46]  Reinhard Wilhelm,et al.  An abstract interpretation-based timing validation of hard real-time avionics software , 2003, 2003 International Conference on Dependable Systems and Networks, 2003. Proceedings..