Skip to main navigation Skip to search Skip to main content

Instruction cache locking for multi-task real-time embedded systems

  • Tiantian Liu*
  • , Minming Li
  • , Chun Jason Xue
  • *Corresponding author for this work
  • City University of Hong Kong

Research output: Contribution to journalArticlepeer-review

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 languageEnglish
Pages (from-to)166-197
Number of pages32
JournalReal-Time Systems
Volume48
Issue number2
DOIs
StatePublished - Mar 2012
Externally publishedYes

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