Combining speculative execution and conditional resource sharing to efficiently schedule conditional behaviors

Scheduling conditional behaviors necessitates the use of a variety of scheduling optimization techniques like conditional resource sharing and speculative execution. Previous research work has clearly shown their effectiveness. The developed heuristics have several drawbacks relating to the effects of syntactic variance on the results. In this paper a list-based scheduling heuristic that exploits conditional resource sharing and speculative execution possibilities, is presented. Its results are quite insensitive to syntactic variance and conditional behavior is effectively accounted for by a probabilistic priority function.

[1]  Jian Li,et al.  An algorithm to determine mutually exclusive operations in behavioral descriptions , 1998, Proceedings Design, Automation and Test in Europe.

[2]  Forrest Brewer,et al.  Incorporating Speculative Execution in Exact Control-Dependent Scheduling , 1994, 31st Design Automation Conference.

[3]  Apostolos A. Kountouris,et al.  Hierarchical conditional dependency graphs for conditional resource sharing , 1998, Proceedings. 24th EUROMICRO Conference (Cat. No.98EX204).

[4]  Louise Trevillyan,et al.  Control-flow versus data-flow-based scheduling: combining both approaches in an adaptive scheduling system , 1997, IEEE Trans. Very Large Scale Integr. Syst..

[5]  Forrest Brewer,et al.  Analysis of conditional resource sharing using a guard-based control representation , 1995, Proceedings of ICCD '95 International Conference on Computer Design. VLSI in Computers and Processors.

[6]  Taewhan Kim,et al.  A scheduling algorithm for conditional resource sharing , 1991, 1991 IEEE International Conference on Computer-Aided Design Digest of Technical Papers.

[7]  van Jtj Jos Eijndhoven,et al.  Combining code motion and scheduling , 1996 .

[8]  Kazutoshi Wakabayashi,et al.  Global scheduling independent of control dependencies based on condition vectors , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

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

[10]  Loïc Besnard Compilation de SIGNAL : horloges, dépendances, environnement , 1992 .

[11]  Jun Gu,et al.  An efficient algorithm for microword length minimization , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[12]  Hugo De Man,et al.  A unified scheduling model for high-level synthesis and code generation , 1995, Proceedings the European Design and Test Conference. ED&TC 1995.

[13]  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..

[14]  Daniel D. Gajski,et al.  Minimizing Syntactic Variance with Assignment Decision Diagrams , 1992 .

[15]  Kazutoshi Wakabayashi,et al.  A resource sharing and control synthesis method for conditional branches , 1989, 1989 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[16]  Daniel P. Siewiorek,et al.  Automated Synthesis of Data Paths in Digital Systems , 1986, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[17]  Youn-Long Lin,et al.  Recent developments in high-level synthesis , 1997, TODE.

[18]  Michael Payer,et al.  Allocation algorithms based on path analysis , 1992, Integr..

[19]  Tocheou Amagbegnon,et al.  Forme canonique arborescente des horloges de signal , 1995 .