skip to main content
article

Timing analysis for preemptive multitasking real-time systems with caches

Published:01 February 2007Publication History
Skip Abstract Section

Abstract

In this paper, we propose an approach to estimate the worst-case response time (WCRT) of each task in a preemptive multitasking single-processor real-time system utilizing an L1 cache. The approach combines intertask cache-eviction analysis and intratask cache-access analysis to estimate the number of cache lines that can possibly be evicted by the preempting task and also be accessed again by the preempted task after preemptions (thus requiring the preempted task to reload the cache line(s)). This cache-reload delay caused by preempting task(s) is then incorporated into WCRT analysis. Three sets of applications with up to six concurrent tasks running are used to test our approach. The experimental results show that our approach can tighten the WCRT estimate by up to 32% (1.4X) over prior state-of-the-art.

References

  1. Alt, M., Ferdinand, C., Martin, F., and Wilhelm, R. 1996. Cache behavior prediction by abstract interpretation. In Proceedings of Static Analysis Symposium (SAS'96). 52--66. Google ScholarGoogle Scholar
  2. Busquets-Mataix, J., Serrano, J., Ors, R., Gil, P., and Wellings, A. 1996. Adding instruction cache effect to schedulability analysis of preemptive real-time systems. In Real-Time Technology and Applications Symposium. 204--212. Google ScholarGoogle Scholar
  3. Ermerahl, A., Stappert, F., and Engblom, J. 2003. Clustered calculation of worst-case execution times. In Proceedings of Compilers, Architecture and Synthesis for Embedded Systems. 51--62. Google ScholarGoogle Scholar
  4. Ferdinand, C., Heckmann, R., Langenbach, M., Martin, F., Schmidt, M., Theiling, H., Thesing, S., and Wilhelm, R. 2001. Reliable and precise WCET determination for a real-life processor. In Proceedings of the First International Workshop on Embedded Software, (EMSOFT 2001) Volume 2211 of LNCS, Springer-Verlag, New York. 469--485. Google ScholarGoogle Scholar
  5. Hennessy, J. and Patterson, D. 2004. Computer Architecture: A Quantitative Approach (3rd edition). Morgan Kaufmann, San Mateo, CA. Google ScholarGoogle Scholar
  6. Joseph, M. and Pandya, P. 1986. Finding response times in a real-time system. BCS Computer Journal 29, 5 (Oct.), 390--395.Google ScholarGoogle ScholarCross RefCross Ref
  7. Kirk, D. 1989. SMART (Strategic Memory Allocation for Real-Time) cache design. In Proceedings of IEEE 10th Real-Time System Symposium. 229--237.Google ScholarGoogle Scholar
  8. Lee, C., Hahn, J., Seo, Y.-M., Min, S., Ha, R., Hong, S., Park, C., Lee, M., and Kim, C. 1996. Analysis of cache-related preemption delay in fixed-priority preemptive scheduling. In Proceedings of the Seventeenth IEEE Real-Time Systems Symposium. 264--274. Google ScholarGoogle Scholar
  9. Lee, C., Hahn, J., Seo, Y., Min, S., Ha, R., Hong, S., Park, C., Lee, M., and Kim, C. 1997a. Enhanced analysis of cache-related preemption delay in fixed-priority preemptive scheduling. In Proceedings of IEEE Real-Time Systems Symposium. 187--198. Google ScholarGoogle Scholar
  10. Lee, C., Potkonjak, M., and Mangione-Smith, W. 1997b. Mediabench: A tool for evaluating and synthesizing multimedia and communicatons systems. In Proceedings of International Symposium on Microarchitecture. 330--335. Google ScholarGoogle Scholar
  11. Lee, C., Hahn, J., Seo, Y., Min, S., Ha, R., Hong, S., Park, C., Lee, M., and Kim, C. 1998. Analysis of cache-related preemption delay in fixed-priority preemptive scheduling. IEEE Transactions on Computers 47, 6, 700--713. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Lehoczky, J., Sha, L., and Ding, Y. 1989. The rate monotonic scheduling algorithm:exact characterization and average case behavior. In Proc. IEEE 10th Real-Time System Symposium. 166--171.Google ScholarGoogle Scholar
  13. Li, Y. and Malik, S. 1999. Performance Analysis of Real-Time Embedded Software. Kluwer Academic Publishers, Nowell, MA. Google ScholarGoogle Scholar
  14. Li, Y., Malik, S., and Wolfe, A. 1995. Efficient microarchitecture modeling and path analysis for real-time software. In Proceedings of IEEE Real-Time Systems Symposium. 298--397. Google ScholarGoogle Scholar
  15. Li, Y., Malik, S., and Wolfe, A. 1999. Performance estimation of embedded software with instruction cache modeling. ACM Transaction on Design Automation of Embedded Systems 4, 3 (July), 257--279. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Liedtke, J., Hartig, H., and Hohmuth, M. 1997. OS-controlled cache predictability for real-time systems. In Proceedings of the Third IEEE Real-Time Technology and Applications Symposium (RTAS'97). 213--227. Google ScholarGoogle Scholar
  17. Liu, C. and Layland, J. 1973. Scheduling algorithms for multiprogramming in a hard real-time environment. Journal of ACM 20, 1 (Jan.), 26--61. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Lundqvist, T. and Stenstrom, P. 1999. An integrated path and timing analysis method based on cycle-level symbolic execution. Real-Time Systems 17, 2--3 (Nov.), 183--207. Google ScholarGoogle ScholarCross RefCross Ref
  19. MediaBench. Available HTTP://cares.icsl.ucla.edu/MediaBench/.Google ScholarGoogle Scholar
  20. Mentor Graphics. Hardware/Software Co-Verification: Seamless. Mentor Graphics, Avaliable HTTP: http://www.mentor.com/seamless/.Google ScholarGoogle Scholar
  21. Mentor Graphics. Mentor Graphics, XRAY® Debugger. Mentor Graphics, Avaliable HTTP: http://www.mentor.com/xray/.Google ScholarGoogle Scholar
  22. Muller, F. 1995. Compiler support for software-based cache partitioning. In Proceedings of ACM SIGPLAN Workshop on Languages, Compliers and Tools for Real-Time Systems. 125--133. Google ScholarGoogle Scholar
  23. Negi, H., Mitra, T., and Roychoudhury, A. 2003. Accurate estimation of cache-related preemption delay. In Proceedings of ACM Joint Symposium CODES + ISSS. 201--206. Google ScholarGoogle Scholar
  24. Suh, G., Rudolph, L., and Devadas, S. 2001. Dynamic cache partitioning for simultaneous multithreading systems. In Proceedings of the IASTED International Conference on Parallel and Distributed Computing and Systems. 116--127.Google ScholarGoogle Scholar
  25. Sun, D., Blough, D., and Mooney, V. 2002. Atalanta: A new multiprocessor RTOS kernel for system-on-a-chip applications. Tech. Rep. GIT-CC-02-19, Georgia Institute of Technology. (Ap.).Google ScholarGoogle Scholar
  26. Tan, Y. 2005. Cache design and timing analysis for preemptive multitasking real-time uniprocessor systems. Ph.D. thesis, Georgia Institute of Technology, Atlanta, GA. Google ScholarGoogle Scholar
  27. Tan, Y., and Mooney, V. 2004a. Integrate inter- and intra- cache eviction anlaysis for preemptive multi-tasking real-time systems. In Proceedings of the 8th International Workshop on Software and Compilers for Embedded Systems (SCOPES'04). 200--206.Google ScholarGoogle Scholar
  28. Tan, Y., and Mooney, V. 2004b. Timing analysis for preemptive multi-tasking real-time systems. In Proceedings of Design, Automation and Test in Europe (DATE'04). 1034--1039. Google ScholarGoogle Scholar
  29. Theiling, H., Ferdinand, C., and Wilhelm, R. 2000. Fast and precise WCET prediction by seperate cache and path analyses. Real-Time Systems 18, 2--3 (May), 157--179. Google ScholarGoogle ScholarCross RefCross Ref
  30. Tindell, K., Burns, A., and Wellings, A. 1994. An extendible approach for analyzing fixed priority hard real-time tasks. Real-Time Systems 6, 2 (Mar.), 133--151. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Tomiyama, H. and Dutt, N. 2000. Program path analysis to bound cache-related preemption delay in preemptive real-time systems. In Proceedings of the 8th International Workshop on Hardware/software Codesign. 67--71. Google ScholarGoogle Scholar
  32. White, R., Mueller, F., Healy, C., Whalley, D., and Harmon, M. 1999. Timing analysis for data and wrap-around fill caches. Real-Time Systems 17, 2--3, 209--233. Google ScholarGoogle ScholarCross RefCross Ref
  33. Wolf, F. 2002. Behavioral Intervals in Embedded Software. Kluwer Academic Publ., Boston, MA. Google ScholarGoogle Scholar
  34. Wolf, F., Ernst, R., and Ye, W. 2001. Path clustering in software timing analysis. IEEE Transactions on VLSI Systems 9, 6 (Dec.), 773--782. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Wolf, F., Staschulat, J., and Ernst, R. 2002a. Associative caches in formal software timing analysis. In Proceedings of the IEEE/ACM Design Automation Conference. 622--627. Google ScholarGoogle Scholar
  36. Wolf, F., Staschulat, J., and Ernst, R. 2002b. Hybrid cache analysis in running time verification of embedded software. Design Automation for Embedded Systems 7, 3 (Oct.), 271--295.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Timing analysis for preemptive multitasking real-time systems with caches

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM Transactions on Embedded Computing Systems
        ACM Transactions on Embedded Computing Systems  Volume 6, Issue 1
        February 2007
        210 pages
        ISSN:1539-9087
        EISSN:1558-3465
        DOI:10.1145/1210268
        Issue’s Table of Contents

        Copyright © 2007 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 1 February 2007
        Published in tecs Volume 6, Issue 1

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader