Variable Partitioning and Scheduling for MPSoC with Virtually Shared Scratch Pad Memory

  • Authors:
  • Lei Zhang;Meikang Qiu;Wei-Che Tseng;Edwin H.-M. Sha

  • Affiliations:
  • School of Computer Science and Engineering, University of Electronic Science and Technology of China, Sichuan, P. R. China 610054;Department of Electrical Engineering, University of New Orleans, New Orleans, USA 70148;Department of Computer Science, University of Texas at Dallas, Richardson, USA 75083;Department of Computer Science, University of Texas at Dallas, Richardson, USA 75083

  • Venue:
  • Journal of Signal Processing Systems
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

One of the most critical components that determine the success of an MPSoC based architecture is its on-chip memory. Scratch Pad Memory (SPM) is increasingly being applied to substitute cache as the on-chip memory of embedded MPSoCs due to its superior chip area, power consumption and timing predictability. SPM can be organized as a Virtually Shared SPM (VS-SPM) architecture that takes advantage of both shared and private SPM. However, making effective use of the VS-SPM architecture strongly depends on two inter-dependent problems: variable partitioning and task scheduling. In this paper, we decouple these two problems and solve them in phase-ordered manner. We propose two variable partitioning heuristics based on an initial schedule: High Access Frequency First (HAFF) variable partitioning and Global View Prediction (GVP) variable partitioning. Then, we present a loop pipeline scheduling algorithm known as Rotation Scheduling with Variable Partitioning (RSVP) to improve overall throughput. Our experimental results obtained on MiBench show that the average performance improvements over IDAS (Integrated Data Assignment with Scheduling) are 23.74% for HAFF and 31.91% for GVP on four-core MPSoC. The average schedule length generated by RSVP is 25.96% shorter than that of list scheduling with optimal variable partition.