Performance optimization of single-phase level-sensitive circuits using time borrowing and non-zero clock skew

This paper describes a linear programming (LP) formulation for performance optimization of large-scale, synchronous circuits with level-sensitive latches. The proposed formulation permits circuits to operate at a higher clock frequency---that is, with a lower clock period---by the application of both non-zero clock skew scheduling [7] and time borrowing [9]. This LP formulation is computationally efficient and demonstrates significant circuit performance improvement. Unlike the approach documented in [2], the LP model of the clock period minimization problem presented here is stand-alone and independent of the specific LP solver (solution algorithm) used. The modified big M (MBM) method is introduced and applied to the linearization of the non-linear timing constraints of level-sensitive circuits into a solvable set of fully linear constraints. Clock period improvements as large as 63% are demonstrated over conventional flip-flop based circuits with zero clock skew. These improvements are shown on the ISCAS'89 benchmark circuits by using the industrial linear solver CPLEX [1].

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

[2]  Narendra V. Shenoy,et al.  Verifying clock schedules , 1992, ICCAD.

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

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

[5]  Sachin S. Sapatnekar,et al.  Clock Skew Optimization , 1999 .

[6]  N MudgeTrevor,et al.  Critical paths in circuits with level-sensitive latches , 1995 .

[7]  Kunle Olukotun,et al.  Analysis and design of latch-controlled synchronous digital circuits , 1990, DAC '90.

[8]  Eby G. Friedman,et al.  A quadratic programming approach to clock skew scheduling for reduced sensitivity to process parameter variations , 1999, Twelfth Annual IEEE International ASIC/SOC Conference (Cat. No.99TH8454).

[9]  Baris Taskin,et al.  Timing Optimization Through Clock Skew Scheduling , 2000 .

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

[11]  Eric R. Zieyel Operations research : applications and algorithms , 1988 .

[12]  Narendra V. Shenoy,et al.  Verifying clock schedules , 1992, ICCAD 1992.

[13]  Trevor N. Mudge,et al.  Critical paths in circuits with level-sensitive latches , 1995, IEEE Trans. Very Large Scale Integr. Syst..

[14]  Eby G. Friedman Clock distribution networks in VLSI circuits and systems , 1995 .

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

[16]  Michel Dagenais,et al.  On the calculation of optimal clocking parameters in synchronous circuits with level-sensitive latches , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

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