Abstract
Caches are widely used in embedded systems to bridge the increasing speed gap between processors and off-chip memory. However, caches make it significantly harder to compute the WCET(Worst Case Execution Time) of a task. To alleviate this problem, cache locking has been proposed. We investigate the I-cache locking problem, and propose a WCET-aware, min-cut based dynamic instruction cache locking approach for reducing the WCET of a single task. We have implemented our approach and compared it with the two state-of-the-art cache locking approaches by using a set of benchmarks from the MRTC benchmark suite. The experimental results show that our approach achieves the average improvements of 41%, 15% and 7% over the partial locking approach for the 256B, 512B and 1KB caches, respectively, and 7%, 18% and 17% over the longest path based dynamic locking approach for the 256B, 512B and 1KB caches, respectively.
- K. Anand and R. Barua. Instruction cache locking inside a binary rewriter. In Proceedings of the 2009 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASES), pages 185--194. ACM, 2009. Google Scholar
Digital Library
- D. Burger and T. M. Austin. The simplescalar tool set, version 2.0. ACM SIGARCH Computer Architecture News, 25(3):13--25, 1997. Google Scholar
Digital Library
- A. M. Campoy, A. Ivars, and J. Busquets-Mataix. Using genetic algorithms in content selection for locking-caches. In Proceedings of the International Symposium on Applied Informatics, pages 271--276, 2001.Google Scholar
- A. M. Campoy, A. P. Ivars, and J. Busquets-Mataix. Dynamic use of locking caches in multitask, preemptive real-time systems. In Proceedings of the 15th Triennial World Congress of the International Federation of Automatic Control, 2002.Google Scholar
Cross Ref
- A. M. Campoy, A. Perles, F. Rodriguez, and J. Busquets-Mataix. Static use of locking caches vs. dynamic use of locking caches for real-time systems. In Proceedings of Canadian Conference on Electrical and Computer Engineering, volume 2, pages 1283--1286. IEEE, 2003.Google Scholar
- H. Ding, Y. Liang, and T. Mitra. Wcet-centric partial instruction cache locking. In Proceedings of the 49th Design Automation Conference (DAC), pages 412--420. IEEE, 2012. Google Scholar
Digital Library
- H. Falk, S. Plazar, and H. Theiling. Compile-time decided instruction cache locking using worst-case execution paths. In Proceedings of the 5th IEEE/ACM International Conference on Hardware/Software Codesign and System Synthesis, pages 143--148. ACM, 2007. Google Scholar
Digital Library
- J. Gustafsson, A. Betts, A. Ermedahl, and B. Lisper. The mälardalen wcet benchmarks: Past, present and future. In WCET, pages 136--146, 2010.Google Scholar
- X. Li, Y. Liang, T. Mitra, and A. Roychoudhury. Chronos: A timing analyzer for embedded software. Science of Computer Programming,69(1--3):56--67, 2007. http://www.comp.nus.edu.sg/~rpembed/ chronos. Google Scholar
Digital Library
- Y. Liang and T. Mitra. Instruction cache locking using temporal reuse profile. In Proceedings of the 47th Design Automation Conference (DAC), pages 344--349. ACM, 2010. Google Scholar
Digital Library
- T. Liu, M. Li, and C. J. Xue. Minimizing wcet for real-time embedded systems via static instruction cache locking. In Proceedings of the 15th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS), pages 35--44. IEEE, 2009. Google Scholar
Digital Library
- T. Liu, Y. Zhao, M. Li, and C. J. Xue. Task assignment with cache partitioning and locking for wcet minimization on mpsoc. In Proceedings of the 39th International Conference on Parallel Processing (ICPP), pages 573--582. IEEE, 2010. Google Scholar
Digital Library
- T. Liu, M. Li, and C. J. Xue. Instruction cache locking for embedded systems using probability profile. Journal of Signal Processing Systems, 69(2):173--188, 2012. Google Scholar
Digital Library
- S. Plazar, J. C. Kleinsorge, P. Marwedel, and H. Falk. Wcet-aware static locking of instruction caches. In Proceedings of the 10th International Symposium on Code Generation and Optimization (CGO), pages 44--52. ACM, 2012. Google Scholar
Digital Library
- I. Puaut. Wcet-centric software-controlled instruction caches for hard real-time systems. In Proceedings of the 18th Euromicro Conference on Real-Time Systems, pages 10--pp. IEEE, 2006. Google Scholar
Digital Library
- I. Puaut and A. Arnaud. Dynamic instruction cache locking in hard real-time systems. In Proceedings of the 14th International Conference on Real-Time and Network Systems, 2006.Google Scholar
- I. Puaut and D. Decotigny. Low-complexity algorithms for static cache locking in multitasking hard real-time systems. In Proceedings of the 23rd IEEE Real-Time Systems Symposium (RTSS), pages 114--123. IEEE, 2002. Google Scholar
Digital Library
- J. Staschulat, S. Schliecker, and R. Ernst. Scheduling analysis of realtime systems with precise modeling of cache related preemption delay. In Proceedings of 17th Euromicro Conference on Real-Time Systems, pages 41--48. IEEE, 2005. Google Scholar
Digital Library
- X. Vera, B. Lisper, and J. Xue. Data cache locking for higher program predictability. In ACM SIGMETRICS Performance Evaluation Review, volume 31, pages 272--282. ACM, 2003. Google Scholar
Digital Library
Index Terms
WCET: aware dynamic instruction cache locking
Recommendations
WCET-Aware Dynamic I-Cache Locking for a Single Task
Caches are widely used in embedded systems to bridge the increasing speed gap between processors and off-chip memory. However, caches make it significantly harder to compute the worst-case execution time (WCET) of a task. To alleviate this problem, ...
WCET: aware dynamic instruction cache locking
LCTES '14: Proceedings of the 2014 SIGPLAN/SIGBED conference on Languages, compilers and tools for embedded systemsCaches are widely used in embedded systems to bridge the increasing speed gap between processors and off-chip memory. However, caches make it significantly harder to compute the WCET(Worst Case Execution Time) of a task. To alleviate this problem, cache ...
Dynamic Data-Cache Locking for Minimizing the WCET of a Single Task
Special Issue on LCETES 2015, Special Issue on ACSD 2015 and Special Issue on Embedded Devise Forensics and SecurityCaches have been widely used in modern embedded processors to bridge the increasing speed gap between processors and off-chip memory. In real-time embedded systems, computing the Worst-Case Execution Time (WCET) of a task is essential for the task ...







Comments