Partitioning and allocation of scratch-pad memory for priority-based preemptive multi-task systems

  • Authors:
  • Hideki Takase;Hiroyuki Tomiyama;Hiroaki Takada

  • Affiliations:
  • Nagoya University, Chikusa-ku, Nagoya, Japan and Japan Society for the Promotion of Science;Nagoya University, Chikusa-ku, Nagoya, Japan;Nagoya University, Chikusa-ku, Nagoya, Japan

  • Venue:
  • Proceedings of the Conference on Design, Automation and Test in Europe
  • Year:
  • 2010

Quantified Score

Hi-index 0.01

Visualization

Abstract

Scratch-pad memory has been employed as a partial or entire replacement for cache memory due to its better energy efficiency. In this paper, we propose scratch-pad memory management techniques for priority-based preemptive multitask systems. Our techniques are applicable to a real-time environment. The three methods which we propose, i.e., spatial, temporal, and hybrid methods, bring about effective usage of the scratch-pad memory space, and achieve energy reduction in the instruction memory subsystems. We formulate each method as an integer programming problem that simultaneously determines (1) partitioning of scratch-pad memory space for the tasks, and (2) allocation of program code to scratch-pad memory space for each task. It is remarkable that periods and priorities of tasks are considered in the formulas. Additionally, we implement an RTOS-hardware cooperative support mechanism for a runtime code allocation to the scratch-pad memory space. We have made the experiments with the fully functional real-time operating system. The experimental results with four task sets have demonstrated the effectiveness of our techniques. Up to 73% energy reduction compared to a standard method was achieved.