DocumentCode
1308497
Title
Control-flow versus data-flow-based scheduling: combining both approaches in an adaptive scheduling system
Author
Bergamaschi, Reinaldo A. ; Raje, Salil ; Nair, Indira ; Trevillyan, Louise
Author_Institution
IBM Thomas J. Watson Res. Center, Yorktown Heights, NY, USA
Volume
5
Issue
1
fYear
1997
fDate
3/1/1997 12:00:00 AM
Firstpage
82
Lastpage
100
Abstract
As high-level synthesis techniques gain acceptance among designers, it is important to be able to provide a robust system which can handle large designs in short execution times, producing high-quality results. Scheduling is one of the most complex tasks in high-level synthesis, and although many algorithms exist for solving the scheduling problem, it remains a main source of inefficiency by either not producing high-quality results, not taking into account realistic design requirements, or requiring unacceptable execution times. One of the main problems in scheduling is the dichotomy between control and data. Many algorithms to date have been able to provide scheduling solutions by looking only at either the data part or the control part of the design. This has been done in order to simplify the problem; however, it has resulted in many algorithms unable to handle efficiently large designs with complex control and data functionality. This paper presents algorithms for combining dataflow and control-flow techniques into a robust scheduling system. The main characteristics of this system are as follows: 1) it uses path-based techniques for efficient handling of control and mutual exclusiveness (for resource sharing), 2) it allows operation reordering and parallelism extraction within the context of path-based scheduling, 3) it contains a control partitioning algorithm for design space exploration as well as for reducing the number of control paths, and 4) it combines the above algorithms into an adaptive scheduling system which is capable of trading optimality for execution time on-the-fly. Results involving billions of paths are presented and analyzed.
Keywords
high level synthesis; logic partitioning; scheduling; signal flow graphs; adaptive scheduling system; control partitioning algorithm; control-flow-based scheduling; data functionality; data-flow-based scheduling; execution times; high-level synthesis techniques; operation reordering; parallelism extraction; path-based techniques; robust scheduling system; Algorithm design and analysis; Control systems; Data mining; High level synthesis; Optimal control; Partitioning algorithms; Resource management; Robust control; Robustness; Scheduling algorithm;
fLanguage
English
Journal_Title
Very Large Scale Integration (VLSI) Systems, IEEE Transactions on
Publisher
ieee
ISSN
1063-8210
Type
jour
DOI
10.1109/92.555989
Filename
555989
Link To Document