Abstract
Low-level WCET analysis consists of two subproblems: the path analysis and the processor behavior analysis. A successful approach uses an integer linear programming (ILP) solution for the former and an abstract interpretation (AI) solution for the latter. This paper advocates, for this particular ILP + AI approach, the use of a specialized rewrite-based framework, called \(\mathbb{K}\). We define this methodology in \(\mathbb{K}\), starting from the formal executable semantics of the language and the concrete, parametric, description of the underlying micro-architecture (i.e. instruction cache). The latter is designed to facilitate specification reusability in the abstraction definition. We also analyze the definitional methodology of the ILP + AI approach, from the design perspective.
This work has been supported by Project POSDRU/88/1.5/S/47646 and by Contract ANCS POS-CCE, O2.1.2, ID nr 602/12516, ctr.nr 161/15.06.2010 (DAK).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
AbsInt Angewandte Informatik: aiT Worst-Case Execution Time Analyzers
Alt, M., Ferdinand, C., Martin, F., Wilhelm, R.: Cache behavior prediction by abstract interpretation. In: Science of Computer Programming, vol. 35(2), pp. 52–66. Springer (1996)
Asăvoae, I.M., Asăvoae, M.: Collecting Semantics under Predicate Abstraction in the K Framework. In: Ölveczky, P.C. (ed.) WRLA 2010. LNCS, vol. 6381, pp. 123–139. Springer, Heidelberg (2010)
Asăvoae, M., Lucanu, D., Roşu, G.: Towards semantics-based WCET analysis. In: WCET (2011)
Burger, D., Austin, T.M.: The SimpleScalar tool set, version 2.0. SIGARCH Comput. Archit. News 25, 13–25 (1997)
Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Talcott, C. (eds.): All About Maude - A High-Performance Logical Framework. LNCS, vol. 4350. Springer, Heidelberg (2007)
Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: Symposium on Principles of Programming Languages, pp. 238–252. ACM Press (1977)
Şerbănuţă, T.F., Roşu, G.: K-Maude: A Rewriting Based Tool for Semantics of Programming Languages. In: Ölveczky, P.C. (ed.) WRLA 2010. LNCS, vol. 6381, pp. 104–122. Springer, Heidelberg (2010)
Dalsgaard, A.E., Olesen, M.C., Toft, M., Hansen, R.R., Larsen, K.G.: METAMOC: Modular execution time analysis using model checking. In: spp. 113–123 (2010)
Ellison, C., Roşu, G.: An executable formal semantics of C with applications. In: Proceedings of the 39th Symposium on Principles of Programming Languages (POPL 2012), pp. 533–544. ACM (2012)
Ferdinand, C., Wilhelm, R.: Efficient and precise cache behavior prediction for real-time systems. Real-Time Systems 17(2-3), 131–181 (1999)
Harman, N.A.: Verifying a Simple Pipelined Microprocessor Using Maude. In: Cerioli, M., Reggio, G. (eds.) WADT/CoFI 2001. LNCS, vol. 2267, pp. 128–151. Springer, Heidelberg (2002)
Langenbach, M., Thesing, S., Heckmann, R.: Pipeline Modeling for Timing Analysis. In: Hermenegildo, M.V., Puebla, G. (eds.) SAS 2002. LNCS, vol. 2477, pp. 294–309. Springer, Heidelberg (2002)
Li, X., Yun, L., Mitra, T., Roychoudhury, A.: Chronos: A timing analyzer for embedded software. Sci. Comput. Program. 69(1-3), 56–67 (2007)
Li, Y.T.S., Malik, S., Wolfe, A.: Efficient microarchitecture modeling and path analysis for real-time software. In: IEEE Real-Time Systems Symposium, pp. 298–307 (1995)
Meredith, P., Hills, M., Roşu, G.: An executable rewriting logic semantics of K-scheme. In: Dube, D. (ed.) SCHEME 2007, pp. 91–103. Laval University (2007)
Meredith, P.O., Katelman, M., Meseguer, J., Roşu, G.: A formal executable semantics of Verilog. In: MEMOCODE 2010, pp. 179–188. IEEE (2010)
Meseguer, J., Palomino, M., Martí-Oliet, N.: Equational Abstractions. In: Baader, F. (ed.) CADE-19. LNCS (LNAI), vol. 2741, pp. 2–16. Springer, Heidelberg (2003)
Meseguer, J., Roşu, G.: The rewriting logic semantics project. Electronic Notes in Theoretical Computer Science 156(1), 27–56 (2006)
Ölveczky, P.C., Meseguer, J.: The Real-Time Maude Tool. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 332–336. Springer, Heidelberg (2008)
Reineke, J., Grund, D., Berg, C., Wilhelm, R.: Timing predictability of cache replacement policies. Real-Time Systems 37(2), 99–122 (2007)
Roşu, G., Ellison, C., Schulte, W.: Matching Logic: An Alternative to Hoare/Floyd Logic. In: Johnson, M., Pavlovic, D. (eds.) AMAST 2010. LNCS, vol. 6486, pp. 142–162. Springer, Heidelberg (2011)
Roşu, G., Şerbănuţă, T.F.: An overview of the K semantic framework. Journal of Logic and Algebraic Programming 79(6), 397–434 (2010)
Theiling, H., Ferdinand, C., Wilhelm, R.: Fast and precise WCET prediction by separated cache and path analyses. Real-Time Systems 18(2/3), 157–179 (2000)
Wilhelm, R.: Why AI + ILP Is Good for WCET, but MC Is Not, Nor ILP Alone. In: Steffen, B., Levi, G. (eds.) VMCAI 2004. LNCS, vol. 2937, pp. 309–322. Springer, Heidelberg (2004)
Wilhelm, R., Engblom, J., Ermedahl, A., Holsti, N., Thesing, S., Whalley, D., Bernat, G., Ferdinand, C., Heckmann, R., Mitra, T., Mueller, F., Puaut, I., Puschner, P., Staschulat, J., Stenström, P.: The worst-case execution-time problem—overview of methods and survey of tools. ACM Trans. Embed. Comput. Syst. 7(3), 1–53 (2008)
Wilhelm, R., Wachter, B.: Abstract Interpretation with Applications to Timing Validation. In: Gupta, A., Malik, S. (eds.) CAV 2008. LNCS, vol. 5123, pp. 22–36. Springer, Heidelberg (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Asăvoae, M., Asăvoae, I.M., Lucanu, D. (2012). On Abstractions for Timing Analysis in the \(\mathbb{K}\) Framework. In: Peña, R., van Eekelen, M., Shkaravska, O. (eds) Foundational and Practical Aspects of Resource Analysis. FOPARA 2011. Lecture Notes in Computer Science, vol 7177. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-32495-6_6
Download citation
DOI: https://doi.org/10.1007/978-3-642-32495-6_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-32494-9
Online ISBN: 978-3-642-32495-6
eBook Packages: Computer ScienceComputer Science (R0)