On effective slack management in postscheduling phase

In this paper, we propose techniques for effective slack management in high-level synthesis. Our design methodology improves the usability of slack. This manifests itself in the form of relaxed latency constraints on resources. Relaxed latency constraints could be exploited to generate designs with better power, area, routability, and other measures. The slack-management engine has two key components: delay budgeting and resource binding. We propose a left edge traversal-based algorithm for delay budgeting. For resource binding, we developed an algorithm that applies a locally optimal binding procedure at each clock step. In order to demonstrate the effectiveness of our strategy, we built an experimental flow that integrated SUIF, Synopsys Design Compiler, Cadence Silicon Ensemble, and our own optimization tools. Experiments with the MediaBench suite shows that our methodology could generate designs with better quality than designs and faster design closure when compared with designs generated without slack management.

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

[2]  Giovanni De Micheli,et al.  Synthesis and Optimization of Digital Circuits , 1994 .

[3]  Daniel Gajski,et al.  Design Tools for Intelligent Silicon Compilation , 1987, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[4]  Alice C. Parker,et al.  MAHA: A Program for Datapath Synthesis , 1986, 23rd ACM/IEEE Design Automation Conference.

[5]  Ravi Nair,et al.  Generation of performance constraints for layout , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[6]  Barry M. Pangrle,et al.  Global mobility based scheduling , 1993, Proceedings of 1993 IEEE International Conference on Computer Design ICCD'93.

[7]  Majid Sarrafzadeh,et al.  Algorithmic aspects of uncertainty driven scheduling , 2002, 2002 IEEE International Symposium on Circuits and Systems. Proceedings (Cat. No.02CH37353).

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

[9]  Ankur Srivastava,et al.  Predictability: definition, ananlysis and optimization , 2002, ICCAD 2002.

[10]  Robert K. Brayton,et al.  Multilevel logic synthesis , 1990, Proc. IEEE.

[11]  Ankur Srivastava,et al.  Predictability in RT-Level Designs , 2002, J. Circuits Syst. Comput..

[12]  Majid Sarrafzadeh,et al.  A super-scheduler for embedded reconfigurable systems , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[13]  Martin D. F. Wong,et al.  Simultaneous functional-unit binding and floorplanning , 1994, ICCAD '94.

[14]  Rami G. Melhem,et al.  Scheduling with Dynamic Voltage/Speed Adjustment Using Slack Reclamation in Multiprocessor Real-Time Systems , 2003, IEEE Trans. Parallel Distributed Syst..

[15]  Rastislav Bodík,et al.  Slack: maximizing performance under technological constraints , 2002, ISCA.

[16]  Kalyanmoy Deb,et al.  Muiltiobjective Optimization Using Nondominated Sorting in Genetic Algorithms , 1994, Evolutionary Computation.

[17]  Ankur Srivastava,et al.  Predictability: Definition, Analysis and Optimization , 2002, IWLS.

[18]  Tsutomu Sasao Multi-Level Logic Synthesis , 1999 .

[19]  D. F. Wong,et al.  Simultaneous Functional-unit Binding And Floorplanning , 1994, IEEE/ACM International Conference on Computer-Aided Design.

[20]  Rami G. Melhem,et al.  Scheduling with dynamic voltage/speed adjustment using slack reclamation in multi-processor real-time systems , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[21]  Niraj K. Jha,et al.  An ILP formulation for low power based on minimizing switched capacitance during data path allocation , 1995, Proceedings of ISCAS'95 - International Symposium on Circuits and Systems.

[22]  Miodrag Potkonjak,et al.  HYPER: an interactive synthesis environment for high performance real time applications , 1989, Proceedings 1989 IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[23]  Donald E. Thomas,et al.  The combination of scheduling, allocation, and mapping in a single algorithm , 1991, DAC '90.

[24]  Kiyoung Choi,et al.  Power conscious fixed priority scheduling for hard real-time systems , 1999, DAC '99.

[25]  Massoud Pedram,et al.  Register Allocation and Binding for Low Power , 1995, 32nd Design Automation Conference.

[26]  Niraj K. Jha,et al.  Battery-aware static scheduling for distributed real-time embedded systems , 2001, DAC '01.

[27]  Habib Youssef,et al.  Timing constraints for correct performance , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[28]  Majid Sarrafzadeh,et al.  Potential slack: an effective metric of combinational circuit performance , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[29]  Wei Zhang,et al.  Exploiting VLIW schedule slacks for dynamic and leakage energy reduction , 2001, MICRO.

[30]  Chi-Ying Tsui,et al.  Saving power in the control path of embedded processors , 1994, IEEE Design & Test of Computers.

[31]  Miodrag Potkonjak,et al.  MediaBench: a tool for evaluating and synthesizing multimedia and communications systems , 1997, Proceedings of 30th Annual International Symposium on Microarchitecture.