Hardware/software co-synthesis with memory hierarchies

  • Authors:
  • Yanbing Li;Wayne H. Wolf

  • Affiliations:
  • Synopsys Inc., Moutain View, CA;Princeton Univ., Princeton, NJ

  • Venue:
  • Readings in hardware/software co-design
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper introduces the first hardware/software co-synthesis algorithm of distributed real-time systems that optimize the memory hierarchy along with the rest of the architecture. Memory hierarchies (caches) are essential for modern embedded cores to obtain high performance. They also represent a significant portion of the cost, size and power consumption of many embedded systems. Our algorithm synthesizes a set of real-time tasks with data dependencies onto a heterogeneous multiprocessor architecture that meets the performance constraints with minimized cost. Unlike previous work in co-synthesis, our algorithm not only synthesizes the hardware and software portions of the applications, but also the memory hierarchies. It chooses cache sizes and allocates tasks to caches as part of co-synthesis. The algorithm is built upon a task-level performance model for memory hierarchies. Experimental results, including examples from the literature and results on real-life examples such as an MPEG-2 encoder, show that our algorithm is efficient, and compared with existing algorithms, it can reduce the overall cost of the synthesized system.