Cycle time and slack optimization for VLSI-chips

We consider the problem of finding an optimal clock schedule, i.e. optimal arrival times for clock signals at latches of a VLSI chip. We describe a general model which includes all previously considered models. Then we show how to optimize the cycle time and optimally balance slacks on data paths and on clocktree paths. The problem of finding a clock schedule with the optimum cycle time was solved before, either by linear programming or by binary search, using a test for negative circuits in a digraph as a subroutine. We show for the first time that a direct combinatorial algorithm solves this problem optimally. Incidentally, this yields a new efficient method for timing analysis with transparent latches. Moreover, we extend this algorithm to the slack balancing problem: To make the chip less sensitive to routing detours, process variations and manufacturing skew it is desirable to have as few critical paths as possible. We show how to find the clock schedule with minimum number of critical paths (optimum slack distribution) in a well-defined sense. Rather than fixed dock arrival times we show how to obtain as large as possible intervals for the clock arrival times. This can be considered as slack on clocktree paths. Indeed, we can find the global optimum of simultaneous optimization of slacks on all data paths and clocktree paths. All the above is done by very efficient network optimization algorithms, based on parametric shortest paths. Our computational results with recent IBM processor chips show that the number of critical paths decreases dramatically, in addition to a considerable improvement of the cycle time. The running times are reasonable even for the largest designs.

[1]  John P. Fishburn,et al.  Clock Skew Optimization , 1990, IEEE Trans. Computers.

[2]  Trevor N. Mudge,et al.  CheckT/sub c/ and minT/sub c/: timing verification and optimal clocking of synchronous digital circuits , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[3]  Andrew B. Kahng,et al.  On the Bounded-Skew Clock and Steiner Routing Problems , 1995, 32nd Design Automation Conference.

[4]  John A. Ludwig,et al.  Analyzing cycle stealing on synchronous circuits with level-sensitive latches , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[5]  Eby G. Friedman,et al.  Optimal clock skew scheduling tolerant to process variations , 1996, DAC '96.

[6]  Chak-Kuen Wong,et al.  A Timing Analysis Algorithm For Circuits With Level-sensitive Latches , 1994, IEEE/ACM International Conference on Computer-Aided Design.

[7]  D. Huang On the bounded-skew routing tree problem , 1995, DAC 1995.

[8]  Robert K. Brayton,et al.  Graph algorithms for clock schedule optimization , 1992, ICCAD.

[9]  T. G. Szymanski,et al.  Verifying clock schedules , 1992, 1992 IEEE/ACM International Conference on Computer-Aided Design.

[10]  Robert E. Tarjan,et al.  Faster parametric shortest path and minimum-balance algorithms , 1991, Networks.

[11]  Donald T. Tang,et al.  A Timing Analysis Algorithm For Circuits With Level-sensitive Latches , 1994, IEEE/ACM International Conference on Computer-Aided Design.

[12]  Sachin S. Sapatnekar,et al.  A graph-theoretic approach to clock skew optimization , 1994, Proceedings of IEEE International Symposium on Circuits and Systems - ISCAS '94.

[13]  Jürgen Koehl,et al.  A flat, timing-driven design system for a high-performance CMOS processor chipset , 1998, Proceedings Design, Automation and Test in Europe.

[14]  Jens Vygen Plazierung im VLSI-Design und ein zweidimensionales Zerlegungsproblem , 1996 .

[15]  Thomas Pflueger,et al.  S/390 Parallel Enterprise Server Generation 3: A balanced system and cache structure , 1997, IBM J. Res. Dev..

[16]  Thomas G. Szymanski,et al.  Computing optimal clock schedules , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[17]  Jürgen Koehl,et al.  Standard-cell-based design methodology for high-performance support chips , 1997, IBM J. Res. Dev..

[18]  R. Tsay Exact zero skew , 1991, ICCAD 1991.