Abstract
Avionic software is the subject of stringent real time, determinism and safety constraints. Software designers face several challenges, one of them being the interferences that appear in common situations, such as resource sharing. The interferences introduce non-determinism and delays in execution time. One of the main interference prone resources are cache memories. In single-core processors, caches comprise multiple private levels. This breaks the isolation principle imposed by avionic standards, such as the ARINC-653. This standard defines partitioned architectures where one partition should never directly interfere with another one. In cache-based architectures, one partition can modify the cache content of another partition. In this paper, we propose a method based on cache locking to reduce the non-determinism and the contention on lower level memories while improving the time performances.
- Paul Parkinson. 2017. Update on using multicore processors with a commercial ARINC 653 implementation. (4 2017).Google Scholar
- RTCA SC-205. 2005. DO-297, Integrated Modular Avionics (IMA) Development Guidance and Certification Considerations. (2005).Google Scholar
- ARINC. 2015. ARINC Specification 653: Avionics Application Software Standard Interface. (2015).Google Scholar
- RTCA SC-205. 2011. DO-178C, Software Considerations in Airborne Systems and Equipment Certification. (2011).Google Scholar
- I. Bate, P. Conmy, T. Kelly, and J. McDermid. 2001. Use of modern processors in safety-critical applications. Comput. J. 44, 6 (2001), 531--543.Google Scholar
Cross Ref
- B. D. Bui et al. 2008. Impact of cache partitioning on multi-tasking real time embedded systems. In 2008 14th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications. 101--110.Google Scholar
Digital Library
- R. Fuchsen. 2010. How to address certification for multi-core based IMA platforms: Current status and potential solutions. In 29th Digital Avionics Systems Conference. Salt Lake City, UT, USA, 5.E.3--1--5.E.3--11.Google Scholar
Cross Ref
- T. Adegbija and A. Gordon-Ross. 2015. Phase-based cache locking for embedded systems. In Proceedings of the 25th Edition on Great Lakes Symposium on VLSI (GLSVLSI ’15). ACM, New York, NY, USA, 115--120.Google Scholar
- K. Kang et al. 2012. Functional-level energy characterization of μC/OS-II and cache locking for energy saving. Bell Labs Technical Journal 17, 1 (June 2012), 219--227.Google Scholar
Digital Library
- Y. Liang and T. Mitra. 2010. Instruction cache locking using temporal reuse profile. In Design Automation Conference. 344--349.Google Scholar
- W. Zheng and H. Wu. 2014. WCET: Aware dynamic instruction cache locking. SIGPLAN Not. 49, 5 (June 2014), 53--62.Google Scholar
Digital Library
- C. B. Watkins and R. Walter. 2007. Transitioning from federated avionics architectures to integrated modular avionics. In 2007 IEEE/AIAA 26th Digital Avionics Systems Conference. 2.A.1--1--2.A.1--10.Google Scholar
- F. Boniol. 2013. New Challenges for Future Avionic Architectures. Springer International Publishing, Cham, 1--1.Google Scholar
- A. J. Smith. 1982. Cache memories. ACM Comput. Surv. 14, 3 (Sept. 1982), 473--530.Google Scholar
Digital Library
- J. Reineke, D. Grund, C. Berg, and R. Wilhelm. 2007. Timing predictability of cache replacement policies. Real-Time Systems 37, 2 (1 Nov 2007), 99--122.Google Scholar
- A. Löfwenmark and S. Nadjm-Tehrani. 2014. Challenges in future avionic systems on multi-core platforms. In 2014 IEEE International Symposium on Software Reliability Engineering Workshops. 115--119.Google Scholar
- S. Mittal. 2016. A survey of techniques for cache locking. ACM Trans. Des. Autom. Electron. Syst. 21, 3, Article 49 (May 2016), 24 pages.Google Scholar
Digital Library
- S. Plazar et al. 2012. WCET-aware static locking of instruction caches. In Proceedings of the Tenth International Symposium on Code Generation and Optimization (CGO’12). ACM, New York, NY, USA, 44--52.Google Scholar
Digital Library
- I. Puaut and D. Decotigny. 2002. Low-complexity algorithms for static cache locking in multitasking hard real-time systems. In Proceedings of the 23rd IEEE Real-Time Systems Symposium (RTSS’02). IEEE Computer Society, Washington, DC, USA, 114--. http://dl.acm.org/citation.cfm?id=827272.829141.Google Scholar
Digital Library
- B. Cilku et al. 2015. A time-predictable instruction-cache architecture that uses prefetching and cache locking. In 2015 IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing Workshops. 74--79.Google Scholar
Digital Library
- M. Loach and W. Zhang. 2015. Exploring hybrid cache locking to balance performance and time predictability. In SoutheastCon 2015. 1--4.Google Scholar
- H. Ding, Y. Liang, and T. Mitra. 2012. WCET-centric partial instruction cache locking. In DAC Design Automation Conference 2012. 412--420.Google Scholar
- F. Ni et al. 2013. Combining instruction prefetching with partial cache locking to improve WCET in real-time systems. PloS one 8 (12 2013), e82975.Google Scholar
- T. Adegbija and A. Gordon-Ross. 2018. PhLock: A cache energy saving technique using phase-based cache locking. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 26, 1 (Jan 2018), 110--121.Google Scholar
Cross Ref
- D. E. Goldberg and John H. Holland. 1988. Genetic algorithms and machine learning. Machine Learning 3, 2 (1 Oct 1988), 95--99.Google Scholar
Digital Library
- William M. Spears and Kenneth D. De Jong. 1995. On the Virtues of Parameterized Uniform Crossover. Technical Report. NAVAL RESEARCH LAB WASHINGTON DC.Google Scholar
- Jan Gustafsson et al. 2010. The Mälardalen WCET benchmarks: Past, Present and Future. In 10th International Workshop on Worst-Case Execution Time Analysis (WCET 2010) (OpenAccess Series in Informatics (OASIcs)), Björn Lisper (Ed.), Vol. 15. Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik, Dagstuhl, Germany, 136--146. The printed version of the WCET’10 proceedings are published by OCG (www.ocg.at) - ISBN 978-3-85403-268-7.Google Scholar
- SNU-RT Real-Time Benchmarks. [n. d.]. http://archi.snu.ac.kr/realtime/benchmark.Google Scholar
- Freescale Semiconductor. 2012. e200z760n3 Power Architecture® Core Reference Manual (rev 2. ed.). Number 2. Freescale Semiconductor Literature Distribution Center.Google Scholar
- Certification Authorities Software Team. 2003. CAST-20. (2003).Google Scholar
- Wenguang Zheng and Hui Wu. 2014. WCET: Aware dynamic instruction cache locking. SIGPLAN Not. 49, 5 (June 2014), 53--62. DOI:http://dx.doi.org/10.1145/2666357.2597820Google Scholar
Digital Library
Index Terms
Cache Locking Content Selection Algorithms for ARINC-653 Compliant RTOS
Recommendations
A Survey of Techniques for Cache Locking
Special Section on New Physical Design Techniques for the Next Generation Integration Technology and Regular PapersCache memory, although important for boosting application performance, is also a source of execution time variability, and this makes its use difficult in systems requiring worst-case execution time (WCET) guarantees. Cache locking is a promising ...
Compile-time decided instruction cache locking using worst-case execution paths
CODES+ISSS '07: Proceedings of the 5th IEEE/ACM international conference on Hardware/software codesign and system synthesisCaches are notorious for their unpredictability. It is difficult or even impossible to predict if a memory access results in a definite cache hit or miss. This unpredictability is highly undesired for real-time systems. The Worst-Case Execution Time (...
Phase-based Cache Locking for Embedded Systems
GLSVLSI '15: Proceedings of the 25th edition on Great Lakes Symposium on VLSISince caches are commonly used in embedded systems, which typically have stringent design constraints imposed by physical size, battery capacity, real-time deadlines, etc., much research focuses on cache optimizations, such as improved performance and/...






Comments