Abstract

One of the key challenges in real-time systems is the analysis of the memory hierarchy. Many Worst-Case Execution Time (WCET) analysis methods supporting an instruction cache are based on iterative or convergence algorithms, which are rather slow. Our goal in this paper is to reduce the WCET analysis time on systems with a simple lockable instruction cache, focusing on the Lock-MS method. First, we propose an algorithm to obtain a structure-based representation of the Control Flow Graph (CFG). It organizes the whole WCET problem as nested subproblems, which takes advantage of common branch-and-bound algorithms of Integer Linear Programming (ILP) solvers. Second, we add support for multiple locking points per task, each one with specific cache contents, instead of a given locked content for the whole task execution. Locking points are set heuristically before outer loops. Such simple heuristics adds no complexity, and reduces the WCET by taking profit of the temporal reuse found in loops. Since loops can be processed as isolated regions, the optimal contents to lock into cache for each region can be obtained, and the WCET analysis time is further reduced. With these two improvements, our WCET analysis is around 10 times faster than other approaches. Also, our results show that the WCET is reduced, and the hit ratio achieved for the lockable instruction cache is similar to that of a real execution with an LRU instruction cache. Finally, we analyze the WCET sensitivity to compiler optimization, showing for each benchmark the right choices and pointing out that O0 is always the worst option.

Highlights

  • Real-Time systems are increasingly present in the industry and the daily life

  • Worst-Case Execution Time (WCET) depends on the hardware technical specifications and how it interacts with the running task, so a particular WCET is not valid for hardware other than the one analyzed

  • Our goal in this paper is to reduce the WCET analysis time of tasks in presence of lockable instruction caches

Read more

Summary

Introduction

Real-Time systems are increasingly present in the industry and the daily life. We can find examples in many sectors such as avionics, robotics, automotive, manufacturing, or air-traffic control. A real-time system consists of a number of tasks, which perform the required functionality. WCET depends on the hardware technical specifications and how it interacts with the running task, so a particular WCET is not valid for hardware other than the one analyzed. The system must be redesigned, repeating all previous procedures. Since this is complex, some approaches propose to apply it just to safety-critical tasks, and not to other tasks in the real-time system [1]. A fast WCET analysis can be an alternative to parametric WCET analysis, which is usually quite limited on the parameters it supports [2]

Objectives
Results
Conclusion
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call