An accurate worst case timing analysis for RISC processors
- 1 July 1995
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. 21 (7) , 593-604
- https://doi.org/10.1109/32.392980
Abstract
An accurate and safe estimation of a task's worst case execution time (WCET) is crucial for reasoning about the timing properties of real time systems. In RISC processors, the execution time of a program construct (e.g., a statement) is affected by various factors such as cache hits/misses and pipeline hazards, and these factors impose serious problems in analyzing the WCETs of tasks. To analyze the timing effects of RISC's pipelined execution and cache memory, we propose extensions to the original timing schema where the timing information associated with each program construct is a simple time bound. In our approach, associated with each program construct is worst case timing abstraction, (WCTA), which contains detailed timing information of every execution path that might be the worst case execution path of the program construct. This extension leads to a revised timing schema that is similar to the original timing schema except that concatenation and pruning operations on WCTAs are newly defined to replace the add and max operations on time bounds in the original timing schema. Our revised timing schema accurately accounts for the timing effects of pipelined execution and cache memory not only within but also across program constructs. The paper also reports on preliminary results of WCET analysis for a RISC processor. Our results show that tight WCET bounds (within a maximum of about 30% overestimation) can be obtained by using the revised timing schema approach.Keywords
This publication has 15 references indexed in Scilit:
- A retargetable technique for predicting execution timePublished by Institute of Electrical and Electronics Engineers (IEEE) ,2003
- Timing analysis of superscalar processor programs using ACSRPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Bounding worst-case instruction cache performancePublished by Institute of Electrical and Electronics Engineers (IEEE) ,1994
- Deterministic upperbounds of the worst-case execution times of cached programsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,1994
- Predicting program execution times by analyzing static and dynamic program pathsReal-Time Systems, 1993
- A code generation interface for ANSI CSoftware: Practice and Experience, 1991
- Experiments with a program timing tool based on source-level timing schemaPublished by Institute of Electrical and Electronics Engineers (IEEE) ,1990
- Calculating the maximum execution time of real-time programsReal-Time Systems, 1989
- Reasoning about time in higher-level language softwareIEEE Transactions on Software Engineering, 1989
- Register allocation by priority-based coloringPublished by Association for Computing Machinery (ACM) ,1984