A Generic Framework for Soft Real-Time Program Executions on NAND Flash Memory in Multi-Tasking Embedded Systems

Duhee Lee, Chang-Gun Lee, Kanghee Kim · 2009

This paper proposes a novel technique called mRT-PLRU (multi-tasking real-time constrained combination of pinning and LRU), which forms a generic framework to use inexpensive nonvolatile NAND flash memory for storing and executing real-time programs in multi-tasking environments. In order to execute multiple real-time tasks stored in NAND flash memory with the minimal usage of expensive RAM, the mRT-PLRU is optimally configured in two steps. In the first step, the per-task analysis finds the function of RAM size vs. execution time for each individual task. Using these functions for all the tasks as inputs, the second-step called a stochastic-analysis-in-loop optimization conducts an iterative convex optimization with the stochastic-analysis for the probabilistic schedulability check. As a result, the optimization loop can optimally allocate RAM to multiple tasks such that their deadlines are probabilistically guaranteed with the minimal usage of RAM. Moreover, the mRT-PLRU is optimally configured in a developer-transparent way without giving any burden to the program developer, which is essential for the embedded system industry under a high pressure of time-to-market. The usefulness of the developed technique is intensively verified through both simulation and actual implementation. Our experimental study shows that mRT-PLRU can save up to 80% of RAM required by the industry-common shadowing approach.

Read the paper · More papers on PaperTik