Cache-Aware Development of High-Integrity Systems

The verification and validation requirements set on high-integrity real-time systems demand the provision of highly dependable figures for the timing behavior of applications. It is a well known fact that the adoption of hardware acceleration features such as caches may affect both the safeness and the tightness of timing analysis. In this paper we discuss how the industrial development process may gain control over the unpredictability of cache behavior and its negative effect on the timing analyzability of software programs. We outline a comprehensive approach to cache-aware development by both focusing on the application code and by exploiting specific compile-time and run-time support to control cache utilization.

[1]  Jan Gustafsson,et al.  Automatic Derivation of Loop Bounds and Infeasible Paths for WCET Analysis Using Abstract Execution , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).

[2]  Per Stenström,et al.  A method to improve the estimated worst-case performance of data caching , 1999, Proceedings Sixth International Conference on Real-Time Computing Systems and Applications. RTCSA'99 (Cat. No.PR00306).

[3]  Corporate Ieee,et al.  Information Technology-Portable Operating System Interface , 1990 .

[4]  Jan Gustafsson,et al.  Experiences from Applying WCET Analysis in Industrial Settings , 2007, 10th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'07).

[5]  Heiko Falk,et al.  Loop Nest Splitting for WCET-Optimization and Predictability Improvement , 2006 .

[6]  Paul Lokuciejewski,et al.  WCET-driven Cache-based Procedure Positioning Optimizations , 2008, 2008 Euromicro Conference on Real-Time Systems.

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

[8]  P. Puschner The single-path approach towards WCET-analysable software , 2003, IEEE International Conference on Industrial Technology, 2003.

[9]  Reinhold Heckmann,et al.  Computing the Worst Case Execution Time of an Avionics Program by Abstract Interpretation , 2007 .

[10]  Erhard Plödereder,et al.  Ada 2005 Reference Manual. Language and Standard Libraries - International Standard ISO/IEC 8652/1995 (E) with Technical Corrigendum 1 and Amendment 1 , 2007, Lecture Notes in Computer Science.

[11]  Tullio Vardanega,et al.  Attacking the Sources of Unpredictability in the Instruction Cache Behavior , 2008 .