Software Time Reliability in the Presence of Cache Memories

The use of caches challenges measurement-based timing analysis (MBTA) in critical embedded systems. In the presence of caches, the worst-case timing behavior of a system heavily depends on how code and data are laid out in cache. Guaranteeing that test runs capture, and hence MBTA results are representative of, the worst-case conflictive cache layouts, is generally unaffordable for end users. The probabilistic variant of MBTA, MBPTA, exploits randomized caches and relieves the user from the burden of concocting layouts. In exchange, MBPTA requires the user to control the number of runs so that a solid probabilistic argument can be made about having captured the effect of worst-case cache conflicts during analysis. We present a computationally tractable Time-aware Address Conflict (TAC) mechanism that determines whether the impact of conflictive memory layouts is indeed captured in the MBPTA runs and prompts the user for more runs in case it is not.

[1]  Alan Burns,et al.  Statistical analysis of WCET for scheduling , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

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

[3]  Liliana Cucu-Grosjean,et al.  Measurement-Based Probabilistic Timing Analysis for Multi-path Programs , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[4]  Tullio Vardanega,et al.  Randomized Caches Can Be Pretty Useful to Hard Real-Time Systems , 2015, Leibniz Trans. Embed. Syst..

[5]  S. Nadarajah,et al.  Extreme Value Distributions: Theory and Applications , 2000 .

[6]  Alan Burns,et al.  Probabilistic timing analysis: An approach using copulas , 2005, J. Embed. Comput..

[7]  Francisco J. Cazorla,et al.  A cache design for probabilistically analysable real-time systems , 2013, 2013 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[8]  George Lima,et al.  Extreme Value Theory for Estimating Task Execution Time Bounds: A Careful Look , 2016, 2016 28th Euromicro Conference on Real-Time Systems (ECRTS).

[9]  Robert I. Davis,et al.  On the correctness, optimality and precision of Static Probabilistic Timing Analysis , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[10]  Gabriel A. Moreno,et al.  Statistical-Based WCET Estimation and Validation , 2009, WCET.

[11]  Thomas M. Conte,et al.  A Benchmark Characterization of the EEMBC Benchmark Suite , 2009, IEEE Micro.

[12]  Francisco J. Cazorla,et al.  On the Comparison of Deterministic and Probabilistic WCET Estimation Techniques , 2014, 2014 26th Euromicro Conference on Real-Time Systems.

[13]  Tullio Vardanega,et al.  A rapid cache-aware procedure positioning optimization to favor incremental development , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[14]  Francisco J. Cazorla,et al.  Probabilistic timing analysis on conventional cache designs , 2013, 2013 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[15]  Jan Reineke,et al.  Randomized Caches Considered Harmful in Hard Real-Time Systems , 2014, Leibniz Trans. Embed. Syst..

[16]  Tullio Vardanega,et al.  EPC: Extended Path Coverage for Measurement-Based Probabilistic Timing Analysis , 2015, 2015 IEEE Real-Time Systems Symposium.

[17]  Tullio Vardanega,et al.  Heart of Gold: Making the Improbable Happen to Increase Confidence in MBPTA , 2014, 2014 26th Euromicro Conference on Real-Time Systems.

[18]  Francisco J. Cazorla,et al.  Random Modulo: A new processor cache design for real-time critical systems , 2016, 2016 53nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[19]  Francisco J. Cazorla,et al.  Bus designs for time-probabilistic multicore processors , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[20]  Liliana Cucu-Grosjean,et al.  Timing analysis of an avionics case study on complex hardware/software platforms , 2015, 2015 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[21]  Tullio Vardanega,et al.  Measurement-Based Probabilistic Timing Analysis and Its Impact on Processor Architecture , 2014, 2014 17th Euromicro Conference on Digital System Design.

[22]  Francisco J. Cazorla,et al.  Modelling Probabilistic Cache Representativeness in the Presence of Arbitrary Access Patterns , 2016, 2016 IEEE 19th International Symposium on Real-Time Distributed Computing (ISORC).

[23]  Francisco J. Cazorla,et al.  Measurement-Based Worst-Case Execution Time Estimation Using the Coefficient of Variation , 2017, ACM Trans. Design Autom. Electr. Syst..