Abstract
In a multi-task embedded system, a cache is shared by different tasks, which increases the complexity of cache management and the unpredictability of cache behavior. This unpredictability in turn brings an overestimation of application's worst-case execution time (WCET) and worst-case CPU utilization (WCU) which are two of the most important criteria for real-time embedded systems. Modern processors often provide cache locking capability, which can be applied statically and dynamically to manage cache in a predictable manner. The selection of instructions to be locked in the instruction cache (I-Cache) has dramatic influence on the system performance. This paper focuses on applying cache locking techniques to the shared I-Cache to minimize WCU for multi-task embedded systems.We analyze and compare three different strategies to perform I-Cache locking: static locking, semidynamic locking, and dynamic locking. Different algorithms are proposed utilizing the foreknown information of embedded applications. Experimental results show that the proposed algorithms can reduce WCU compared to previous techniques.
| Original language | English |
|---|---|
| Pages (from-to) | 166-197 |
| Number of pages | 32 |
| Journal | Real-Time Systems |
| Volume | 48 |
| Issue number | 2 |
| DOIs | |
| State | Published - Mar 2012 |
| Externally published | Yes |
Keywords
- Cache memories
- Real-time and embedded systems
- Worst-case analysis
Fingerprint
Dive into the research topics of 'Instruction cache locking for multi-task real-time embedded systems'. Together they form a unique fingerprint.Cite this
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver