I. Original Problem Statement Real-time systems such as those deployed in space, aerospace, automotive and railway applications require guarantees that the probability of the system failing to meet its timing constraints is below an acceptable threshold (e.g. a failure rate of less than 10−9 per hour). Advances in hardware technology and the large gap between processor and memory speeds, bridged by the use of cache, make it difficult to provide such guarantees without significant over-provisioning of hardware resources. The use of deterministic cache replacement policies means that pathological worst-case behaviours need to be accounted for, even when in practice they may have a vanishingly small probability of actually occurring. The use of cache with random replacement policies [3] can negate the effects of pathological worst-case behaviours while still achieving efficient average-case performance, hence providing a way of increasing guaranteed performance in hard real-time systems. The timing behaviour of programs running on a processor with a random cache replacement policy can be determined using Static Probabilistic Timing Analysis (SPTA). SPTA computes an upper bound on the probabilistic Worst-Case Execution Time (pWCET) in terms of an exceedence function, which gives the probability, as a function of all possible values for an execution time budget x, that the execution time of the program will not exceed that budget on any single run. SPTA [5] requires a probability function that can be used to compute an estimate of the probability of a cache hit for each memory access. This probability function is valid if it provides a lower bound on the probability of a cache hit. As shown last year at RTSOPS 2013 [4], the only valid cache-hit probability known by then is given as follows:
[1]
R. Davis.
Improvements to Static Probabilistic Timing Analysis for Systems with Random Cache Replacement Policies
,
2013
.
[2]
Liliana Cucu-Grosjean,et al.
PROARTIS: Probabilistically Analysable Real-Time Systems
,
2012
.
[3]
Liliana Cucu-Grosjean,et al.
Analysis of Probabilistic Cache Related Pre-emption Delays
,
2013,
2013 25th Euromicro Conference on Real-Time Systems.
[4]
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).
[5]
Joaquín Entrialgo,et al.
Stochastic analysis of real-time systems under preemptive priority-driven scheduling
,
2008,
Real-Time Systems.
[6]
Francisco J. Cazorla,et al.
Using Randomized Caches in Probabilistic Real-Time Systems
,
2009,
2009 21st Euromicro Conference on Real-Time Systems.
[7]
Liliana Cucu-Grosjean,et al.
PROARTIS: Probabilistically Analyzable Real-Time Systems
,
2013,
TECS.
[8]
Liliana Cucu-Grosjean,et al.
Measurement-Based Probabilistic Timing Analysis for Multi-path Programs
,
2012,
2012 24th Euromicro Conference on Real-Time Systems.
[9]
Francisco J. Cazorla,et al.
A cache design for probabilistically analysable real-time systems
,
2013,
2013 Design, Automation & Test in Europe Conference & Exhibition (DATE).
[10]
Shuchang Zhou,et al.
An Efficient Simulation Algorithm for Cache of Random Replacement Policy
,
2010,
NPC.