Compiling for Time Predictability

  • Peter Puschner
  • Raimund Kirner
  • Benedikt Huber
  • Daniel Prokesch
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7613)


Within the T-CREST project we work on hardware/software architectures and code-generation strategies for time-predictable embedded and cyber-physical systems.

In this paper we present the single-path code generation approach that we plan to explore and implement in a compiler prototype for a time- predictable processor. Single-path code generation produces code that forces every execution to follow the same trace of instructions, thus supporting time predictability and simplifying the worst-case execution-time analysis of code. The idea of the single-path generation and details about the code-generation rules of the compiler can be found in this work.


real-time systems compilers time predictability worst-case execution-time analysis 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Puschner, P., Burns, A.: Writing temporally predictable code. In: Proc. 7th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems, pp. 85–91 (January 2002)Google Scholar
  2. 2.
    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 Transactions on Embedded Computing Systems 7(3) (2008)Google Scholar
  3. 3.
    Schoeberl, M., Schleuniger, P., Puffitsch, W., Brandner, F., Probst, C.W., Karlsson, S., Thorn, T.: Towards a time-predictable dual-issue microprocessor: The Patmos approach. In: First Workshop on Bringing Theory to Practice: Predictability and Performance in Embedded Systems (PPES 2011), pp. 11–20 (March 2011)Google Scholar
  4. 4.
    Lickly, B., Liu, I., Kim, S., Patel, H.D., Edwards, S.A., Lee, E.A.: Predictable programming on a precision timed architecture. In: Proceedings of the 2008 International Conference on Compilers, Architectures and Synthesis for Embedded Systems, CASES 2008, pp. 137–146. ACM, New York (2008)CrossRefGoogle Scholar
  5. 5.
    Allen, J., Kennedy, K., Porterfield, C., Warren, J.: Conversion of Control Dependence to Data Dependence. In: Proc. 10th ACM Symposium on Principles of Programming Languages, pp. 177–189 (January 1983)Google Scholar
  6. 6.
    Gustafsson, J., Lisper, B., Kirner, R., Puschner, P.: Code analysis for temporal predictability. Real-Time Syst. 32(3), 253–277 (2006)zbMATHCrossRefGoogle Scholar
  7. 7.
    Mahlke, S., Hank, R., McCormick, J., August, D., Hwu, W.: A Comparison of Full and Partial Predicated Execution Support for ILP Processors. In: Proc. 22nd International Symposium on Computer Architecture, pp. 138–150 (June 1995)Google Scholar
  8. 8.
    Schellekens, M.: A Modular Calculus for the Average Cost of Data Structuring. Springer (2008)Google Scholar
  9. 9.
    Puschner, P.: Experiments with wcet-oriented programming and the single-path architecture. In: Proc. 10th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems, pp. 205–210 (February 2005)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Peter Puschner
    • 1
  • Raimund Kirner
    • 2
  • Benedikt Huber
    • 1
  • Daniel Prokesch
    • 1
  1. 1.Institute of Computer EngineeringVienna University of TechnologyAustria
  2. 2.Department of Computer ScienceUniversity of HertfordshireUnited Kingdom

Personalised recommendations