Using NAND flash memory for executing large volume real-time programs in automotive embedded systems

  • Authors:
  • Kwangyoon Cho;Kyoung-Soo We;Chang-Gun Lee;Kanghee Kim

  • Affiliations:
  • Seoul National University, Seoul, South Korea;Seoul National University, Seoul, South Korea;Seoul National University, Seoul, South Korea;Soongsil University, Seoul, South Korea

  • Venue:
  • EMSOFT '10 Proceedings of the tenth ACM international conference on Embedded software
  • Year:
  • 2010

Quantified Score

Hi-index 0.01

Visualization

Abstract

For advanced features of next generation vehicles, the real-time programs in automotive embedded systems are dramatically increasing. For such large volume program codes, this paper proposes a novel framework to use high-density and low-cost nonvolatile memory, i.e., NAND flash memory, as a low-cost mean of storing and executing hard real-time programs. Regarding this, one challenge is that NAND flash memory allows only 2KB page-based read operations not per-byte random access, which requires RAM as working storage for code executions. In order to minimize the expensive RAM requirements, the proposed framework optimally partitions the RAM for multiple hard real-time tasks and optimally determines the pinning/LRU combination for each RAM partition such that all task deadlines are deterministically guaranteed. The proposed framework is verified with the actual real-time programs for unmanned autonomous driving. To the best of our knowledge, this is the first work that allows us to use NAND flash memory for hard real-time program executions with the minimal usage of RAM.