Efficient scheduling of behavioural descriptions in high-level synthesis

A new heuristic scheduling algorithm for time constrained datapath synthesis is described. The algorithm is based on the distribution graph concept where a least mean square error function is used to schedule operations in sequence, resulting in a computationally efficient solution with the capability of including other high-level synthesis features such as register cost without significant increase in execution time. This new proposed method contrasts with previously published algorithms where the influence of all operations on the schedule is first evaluated before the most appropriate operation is selected and scheduled. An important feature of the presented algorithm is its ability to solve different scheduling problems, including conditional statements, multicycled functional units and structural pipelining. To illustrate the efficiency of the algorithm a set of benchmark examples has been synthesised and compared. It has been shown that the new algorithm produces high quality solutions when compared to other heuristic algorithms. Furthermore, it is simple to implement and computationally efficient, with execution times increasing approximately linearly with increasing time constraints allowing complex designs to be synthesised in an acceptable timescale. As an example, it takes < 30 s to obtain an optimal schedule for the discrete cosine transform when the time constraint of a maximum 36 control steps is imposed.

[1]  Raul Camposano,et al.  Path-based scheduling for synthesis , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[2]  J. P. Neil,et al.  Simulated annealing based synthesis of fast discrete cosine transform blocks , 1992 .

[3]  P. Six,et al.  Cathedral-II: A Silicon Compiler for Digital Signal Processing , 1986, IEEE Design & Test of Computers.

[4]  Emile H. L. Aarts,et al.  Improved force-directed scheduling in high-throughput digital signal processing , 1995, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[5]  Bozena Kaminska,et al.  Functional synthesis of digital systems with TASS , 1994, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[6]  D. C. Hendry,et al.  High-level synthesis of DSP datapaths by global optimisation of variable lifetimes , 1995 .

[7]  Daniel Gajski,et al.  Introduction to high-level synthesis , 1994, IEEE Design & Test of Computers.

[8]  Alice C. Parker,et al.  MAHA: A Program for Datapath Synthesis , 1986, DAC 1986.

[9]  E. F. Girczyc,et al.  HAL: A Multi-Paradigm Approach to Automatic Data Path Synthesis , 1986, 23rd ACM/IEEE Design Automation Conference.

[10]  Yu-Chin Hsu,et al.  A formal approach to the scheduling problem in high level synthesis , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[11]  Robert A. Walker,et al.  Introduction to the Scheduling Problem , 1995, IEEE Des. Test Comput..

[12]  Pierre G. Paulin,et al.  Force-directed scheduling for the behavioral synthesis of ASICs , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[13]  Gianluca Piccinini,et al.  Algorithms for operation scheduling in VLSI circuit design , 1993 .

[14]  C. L. Liu,et al.  A scheduling algorithm for conditional resource sharing-a hierarchical reduction approach , 1994, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..