Hardware-software partitioning and pipelined scheduling of transformative applications

Karam S. Chatha, Ranga Vemuri

Research output: Contribution to journalArticlepeer-review

86 Scopus citations

Abstract

Transformative applications are computation intensive applications characterized by iterative dataflow behavior. Typical examples are image processing applications like JPEG, MPEG, etc. The performance of embedded hardware-software systems that implement transformative applications can be maximized by obtaining a pipelined design. We present a tool for hardware-software partitioning and pipelined scheduling of transformative applications. The tool uses iterative partitioning and pipelined scheduling to obtain optimal partitions that satisfy the timing and area constraints. The partitioner uses a branch and bound approach with a unique objective function that minimizes the initiation interval of the final design. We present techniques for generation of good initial solution and search-space limitation for the branch and bound algorithm. A candidate partition is evaluated by generating its pipelined schedule. The scheduler uses a novel retiming heuristic that optimizes the initiation interval, number of pipeline stages, and memory requirements of the particular design alternative. We evaluate the performance of the retiming heuristic by comparing it with an existing technique. The effectiveness of the entire tool is demonstrated by a case study of the JPEG image compression algorithm. We also evaluate the run time and design quality of the tool by experimentation with synthetic graphs.

Original languageEnglish (US)
Pages (from-to)193-208
Number of pages16
JournalIEEE Transactions on Very Large Scale Integration (VLSI) Systems
Volume10
Issue number3
DOIs
StatePublished - Jun 2002

Keywords

  • Image processing
  • Partitioning
  • Performance tradeoffs
  • Pipelining
  • Scheduling
  • System-level design

ASJC Scopus subject areas

  • Software
  • Hardware and Architecture
  • Electrical and Electronic Engineering

Fingerprint Dive into the research topics of 'Hardware-software partitioning and pipelined scheduling of transformative applications'. Together they form a unique fingerprint.

Cite this