Abstract
Previously published methods for estimation of the worst-case execution time on contemporary processors with complex pipelines and multi-level memory hierarchies result in overestimations owing to insufficient path and/or timing analysis. This paper presents a new method that integrates path and timing analysis to address these limitations. First, it is based on instruction-level architecture simulation techniques and thus has a potential to perform arbitrarily detailed timing analysis of hardware platforms. Second, by extending the simulation technique with the capability of handling unknown input data values, it is possible to exclude infeasible (or false) program paths in many cases, and also calculate path information, such as bounds on number of loop iterations, without the need for annotating the programs. Finally, in order to keep the number of program paths to be analyzed at a manageable level, we have extended the simulator with a path-merging strategy. This paper presents the method and particularly evaluates its capability to exclude infeasible paths based on seven benchmark programs.
Preview
Unable to display preview. Download preview PDF.
References
P. Altenbernd. On the false path problem in hard real-time programs. In Proceedings of the 8th Euromicro Workshop on Real-Time Systems, pages 102–107, June 1996.
A. Cagney. PSIM, PowerPC simulator. ftp://ftp.ci.com.au/pub/psim/index.html
A. Ermedahl and J. Gustafsson. Deriving annotations for tight calculation of execution time. In Proceedings of EUROPAR’97, pages 1298–1307, August 1997.
C. Healy, M. Sjödin, V. Rustagi, and D. Whalley. Bounding Loop Iterations for Timing Analysis. In Proceedings of the 4th IEEE Real-Time Technology and Applications Symposium, June 1998. To appear.
C. A. Healy, D. B. Whalley, and M. G. Harmon. Integrating the timing analysis of pipelining and instruction caching. In Proceedings of the 16th IEEE Real-Time Systems Symposium, pages 288–297, December 1995.
J. L. Hennessy and D. A. Patterson. Computer Architecture: A Quantitative Approach, 2ed. Morgan Kaufmann, 1996.
S.-K. Kim, S. L. Min, and R. Ha. Efficient worst case timing analysis of data caching. In Proceedings of the 2nd IEEE Real-Time Technology and Applications Symposium, pages 230–240, June 1996.
Y.-T. S. Li, S. Malik, and A. Wolfe. Efficient microarchitecture modeling and path analysis for real-time software. In Proceedings of the 16th IEEE Real-Time Systems Symposium, pages 298–307, December 1995.
Y.-T. S. Li, S. Malik, and A. Wolfe. Cache modeling for real-time software: Beyond direct mapped instruction caches. In Proceedings of the 17th IEEE Real-Time Systems Symposium, pages 254–263, December 1996.
S.-S. Lim, Y. H. Bae, G. T. Jang, B.-D. Rhee, S. L. Min, C. Y. Park, H. Shin, K. Park, and C. S. Kim. An accurate worst case timing analysis technique for RISC processors. In Proceedings of the 15th IEEE Real-Time Systems Symposium, pages 97–108, December 1994.
Y. A. Liu and G. Gomez. Automatic Accurate Time-Bound Analysis for High-Level Languages. Dept. of Computer Science, Indiana University, Technical Report TR-508, April 1998.
P. Magnusson, F. Dahlgren, H. Grahn, M. Karlsson, F. Larsson, A. Moestedt, J. Nilsson, P. Stenström, and B. Werner. Simics/sun4m: A virtual workstation. In Proceedings of USENIX98, 1998. To appear.
G. Ottosson and M. Sjödin. Worst-case execution time analysis for modern hardware architectures. In Proceedings of ACM SIGPLAN Workshop on Language, Compiler, and Tool Support for Real-Time Systems, June 1997.
P. Puschner and C. Koza. Calculating the maximum execution time of real-time programs. The Journal of Real-Time Systems, pages 159–176, 1989.
F. Stappert and P. Altenbernd. Complete Worst-Case Execution Time Analysis of Straight-line Hard Real-Time Programs. C-LAB Report 27/97, Paderborn, Germany, December 1997.
R. T. White, F. Mueller, C. A. Healy, D. B. Whalley, and M. G. Harmon. Timing analysis for data caches and set-associative caches. In Proceedings of the 3nd IEEE Real-Time Technology and Applications Symposium, pages 192–202, June 1997.
E. Witchel and M. Rosenblum. Embra: Fast and flexible machine simulation. In Proceedings of ACM SIGMETRICS’96, pages 68–79, 1996.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lundqvist, T., Stenström, P. (1998). Integrating path and timing analysis using instruction-level simulation techniques. In: Mueller, F., Bestavros, A. (eds) Languages, Compilers, and Tools for Embedded Systems. LCTES 1998. Lecture Notes in Computer Science, vol 1474. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0057776
Download citation
DOI: https://doi.org/10.1007/BFb0057776
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-65075-1
Online ISBN: 978-3-540-49673-1
eBook Packages: Springer Book Archive