Transformations supporting interactive rescheduling for high-level synthesis
Traditionally, high-level synthesis (HLS) has been a fully automatic process over which the user has had little or no control. To make HLS an acceptable methodology for expert designers, we need to allow for more interactivity during synthesis. Since the scheduling step in HLS often determines the scope and quality of the ensuing synthesis tasks, we describe behavior-preserving transformations for manual rescheduling of behavior. We present the Structured Finite State Machine (SFSM) design model for scheduled behavior, show its equivalence to the behavioral Control-Data Flow Graph (CDFG), define primitive behavior-preserving transformations and indicate the utility of these transformations. The manual rescheduling capability we describe allows expert designers to alter an automatically generated schedule to overcome simplifications and assumptions made by automatic scheduling algorithms.