Architecture exploration and timing estimation during early design phases

  • Reinhold HeckmannEmail author
  • Christian Ferdinand
  • Daniel Kästner
  • Stefana Nenova


Selecting the right computation hardware and configuration at the beginning of an industrial project is an important and highly risky task, which is usually done without much tool support, based on experience gathered from previous projects. We present TimingExplorer—a tool to assist in the exploration of alternative system configurations in early design phases. It is based on AbsInt’s WCET Analyser aiT and provides a selection of parametrisable cores that represent typical architectures of interest. Once some (representative) source code is available, TimingExplorer enables its users to take an informed decision which processor configurations are best suited for their needs. The usage of TimingExplorer facilitates the process of determining what processors to use and reduces the risk of timing problems becoming obvious only late in the development cycle and requiring a redesign of large parts of the system.


Worst-case execution time Static program analysis Exploration of system configurations 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    ALL-TIMES Project.
  2. 2.
    Cousot, P., Cousot R.: Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: Proceedings of the 4th ACM Symposium on Principles of Programming Languages. pp. 238–252, Los Angeles, California (1977)Google Scholar
  3. 3.
    Ermedahl, A., Sandberg, C., Gustafsson, J., Bygde, S., Lisper, B.: Loop bound analysis based on a combination of program slicing, abstract interpretation, and invariant analysis. In: Seventh International Workshop on Worst-Case Execution Time Analysis (WCET’2007), July 2007Google Scholar
  4. 4.
    Esterel Technologies. SCADE Suite.
  5. 5.
  6. 6.
    Ferdinand, C.: Cache Behavior Prediction for Real-Time Systems. PhD thesis, Saarland University (1997)Google Scholar
  7. 7.
    Ferdinand, C., Heckmann, R.: aiT: Worst-case execution time prediction by static programm analysis. In: Jacquart, R. (ed.) Building the Information Society. IFIP 18th World Computer Congress, Topical Sessions, 22–27 August 2004, Toulouse, France, pp. 377–384. Kluwer, Dordrecht (2004)Google Scholar
  8. 8.
    Ferdinand, C., Heckmann, R., Langenbach, M., Martin, F., Schmidt, M., Theiling, H., Thesing, S., Wilhelm, R.: Reliable and precise WCET determination for a real-life processor. In: Proceedings of EMSOFT 2001, First Workshop on Embedded Software, volume 2211 of Lecture Notes in Computer Science. pp. 469–485. Springer, Berlin (2001)Google Scholar
  9. 9.
    Ferdinand, C., Heckmann, R., Le Sergent, T., Lopes, D., Martin, B., Fornari, X., Martin F.: Combining a high-level design tool for safety-critical systems with a tool for WCET analysis on executables. In: 4th European Congress ERTS Embedded Real Time Software, Toulouse, France, Jan 2008Google Scholar
  10. 10.
    Ferdinand, C., Heckmann, R., Wolff, H.-J., Renz, C., Gupta, M., Parshin, O., Wilhelm, R.: Towards integrating model-driven development of hard real-time systems with static program analyzers. In: SAE 2007, Detroit, USA (2007) (
  11. 11.
    Henia, R., Hamann, A., Jersak, M., Racu, R., Richter, K., Ernst, R.: System level performance analysis—the SymTA/S approach. In: IEEE Proceedings on Computers and Digital Techniques, vol. 152(2), March 2005Google Scholar
  12. 12.
    Joseph M., Pandya P.K.: Finding response times in a real-time system. Comput J 29(5), 390–395 (1986)MathSciNetCrossRefGoogle Scholar
  13. 13.
    Langenbach, M., Thesing, S., Heckmann R.: Pipeline modeling for timing analysis. In: Proceedings of the 9th International Static Analysis Symposium SAS 2002, vol. 2477 of Lecture Notes in Computer Science. pp. 294–309. Springer, Berlin (2002)Google Scholar
  14. 14.
    Lisper, B., Ermedahl, A., Schreiner, D., Knoop, J., Gliwa, P.: Practical experiences of applying source-level WCET flow analysis to industrial code. (this volume)Google Scholar
  15. 15.
  16. 16.
    Lundquist, T., Stenström, P.: Timing anomalies in dynamically scheduled microprocessors. In: Proceedings of the 20th IEEE Real-Time Systems Symposium, December 1999Google Scholar
  17. 17.
    Martin F.: PAG—an efficient Program Analyzer Generator. Int. J. Softw. Tools Technol. Transf. 2(1), 46–67 (1998)zbMATHCrossRefGoogle Scholar
  18. 18.
    Merriam, N., Gliwa, P., Broster, I.: Measurement and tracing methods for timing analysis. (this volume)Google Scholar
  19. 19.
    Merriam, N., Lisper, B.: Estimation of productivity increase. (this volume)Google Scholar
  20. 20.
    Schordan, M.: Combining tools and languages for static analysis and optimization of high-level abstractions. Technical report, TU Vienna, Austria (2007)Google Scholar
  21. 21.
    Schreiner D., Barany G., Schordan M., Knoop, J.: Comparison of type-based vs. alias-based component recognition for interface-level timing annotations. (this volume)Google Scholar
  22. 22.
    Symtavision GmbH. SymTA/S.
  23. 23.
    Theiling H.: Extracting safe and precise control flow from binaries. In: Proceedings of the 7th Conference on Real-Time Computing Systems and Applications, Cheju Island, South Korea, IEEE Computer Society (2000)Google Scholar
  24. 24.
    Theiling, H., Ferdinand, C.: Combining abstract interpretation and ILP for microarchitecture modelling and program path analysis. In: Proceedings of the 19th IEEE Real-Time Systems Symposium, pp. 144–153, Madrid, Spain, December 1998Google Scholar
  25. 25.
    Thiele L., Wilhelm R.: Design for timing predictability. Real-Time Syst. 28(2–3), 157–177 (2004)CrossRefGoogle Scholar
  26. 26.
    XTC language specification version 2.0., (April 2010)

Copyright information

© Springer-Verlag 2012

Authors and Affiliations

  • Reinhold Heckmann
    • 1
    Email author
  • Christian Ferdinand
    • 1
  • Daniel Kästner
    • 1
  • Stefana Nenova
    • 1
  1. 1.AbsInt Angewandte Informatik GmbHSaarbrückenGermany

Personalised recommendations