Advertisement

Improving the Performance of Execution Time Control by Using a Hardware Time Management Unit

  • Kristoffer Nyborg Gregertsen
  • Amund Skavhaug
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7308)

Abstract

This paper describes how a dedicated Time Management Unit (TMU) is used to reduce the overhead of execution time control. While the implementation described here is for Ada 2012 and a GNAT bare-board run-time environment, the principles should be applicable to other languages and run-time systems. The TMU has been implemented as a peripheral unit for the Atmel AVR®32 UC3 series of microcontrollers, and test results from simulation with the syntheziable RTL code of this system-on-chip are presented.

Keywords

Execution Time Clock Cycle Base Time Context Switch Package Body 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Atmel Corporation: AVR32 - Architecture Document (November 2007), http://atmel.com/dyn/resources/prod_documents/doc32000.pdf
  2. 2.
    Atmel Corporation: AVR32UC3 - Technical Reference Manual (March 2010), http://atmel.com/dyn/resources/prod_documents/doc32002.pdf
  3. 3.
    Burns, A., Wellings, A.: Programming execution-time servers in Ada 2005. In: Proc. 27th IEEE International Real-Time Systems Symposium, RTSS 2006, pp. 47–56 (December 2006)Google Scholar
  4. 4.
    Forsman, B.: A Time Management Unit (TMU) for Real-Time Systems. Master’s thesis. Norwegian University of Science and Technology, NTNU (2008)Google Scholar
  5. 5.
    Gregertsen, K.N.: Execution Time Management for AVR32 Ravenscar. Master’s thesis. Norwegian University of Science and Technology, NTNU (2008)Google Scholar
  6. 6.
    Gregertsen, K.N., Skavhaug, A.: Functional specification for a Time Management Unit. Presented at SAFECOMP 2010 (2010)Google Scholar
  7. 7.
    Gregertsen, K.N., Skavhaug, A.: An efficient and deterministic multi-tasking run-time environment for Ada and the Ravenscar profile on the Atmel AVR32 UC3 microcontroller. In: Design, Automation & Test in Europe Conference & Exhibition, DATE 2009, pp. 1572–1575 (April 2009)Google Scholar
  8. 8.
    Gregertsen, K.N., Skavhaug, A.: Execution-time control for interrupt handling. Ada Lett. 30 (2010)Google Scholar
  9. 9.
    Gregertsen, K.N., Skavhaug, A.: Implementing the new Ada 2005 timing event and execution time control features on the AVR32 architecture. Journal of Systems Architecture 56, 509–522 (2010)CrossRefGoogle Scholar
  10. 10.
    Gregertsen, K.N., Skavhaug, A.: Implementation and usage of the new Ada 2012 execution-time control features. Ada User Journal 32(4), 265–275 (2011)Google Scholar
  11. 11.
    ISO/IEC: Ada Reference Manual - ISO/IEC 8652:1995(E) with Technical Corrigendum 1 and Amendment 1, http://www.adaic.com/standards/05rm/html/RM-TOC.html
  12. 12.
    ISO/IEC: Ada Reference Manual - ISO/IEC 8652:201x(E) (Draft 15), http://www.ada-auth.org/standards/ada12.html
  13. 13.
    Krishna, C.M., Shin, K.G.: Real-Time Systems. McGraw-Hill International Edition (1997)Google Scholar
  14. 14.
    Michell, S., Real, J.: Conclusions of the 14th International Real-Time Ada Workshop. Ada Lett. 30 (2010)Google Scholar
  15. 15.
    Rivas, M.A., Harbour, M.G.: Execution time monitoring and interrupt handlers: position statement. Ada Lett. 30 (2010)Google Scholar
  16. 16.
    Santos, O.M., Wellings, A.: Cost enforcement in the real-time specification for Java. Real-Time Systems 37(2), 139–179 (2007)Google Scholar
  17. 17.
    Skinnemoen, H., Skavhaug, A.: Hardware support for on-line execution time limiting of tasks in a low-power environment. In: EUROMICRO/DSD Work in Progress Session. Institute of system science, Johannes Kepler University, Linz (2003)Google Scholar
  18. 18.
    Søvik, S.J.: Hardware implementation of a Time Management Unit. Master’s thesis. NTNU (2010)Google Scholar
  19. 19.
    The Open Group: The Open Group base specifications issue 6, IEEE Std 1003.1, http://www.opengroup.org/onlinepubs/000095399/
  20. 20.
    Vardanega, T., Harbour, M.G., Pinho, L.M.: Session summary: language and distribution issues. Ada Lett. 30 (2010)Google Scholar
  21. 21.
    Wellings, A.J., Burns, A.: Real-Time Utilities for Ada 2005. In: Abdennahder, N., Kordon, F. (eds.) Ada-Europe 2007. LNCS, vol. 4498, pp. 1–14. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  22. 22.
    Wilhelm, R., et al.: The worst-case execution-time problem—overview of methods and survey of tools. Trans. on Embedded Computing Sys. 7(3), 1–53 (2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Kristoffer Nyborg Gregertsen
    • 1
  • Amund Skavhaug
    • 1
  1. 1.Department of Engineering CyberneticsNTNUTrondheimNorway

Personalised recommendations