Integrated Resource Allocation and Binding in Clock Mesh Synthesis

The clock distribution network in a synchronous digital circuit delivers a clock signal to every storage element, that is, clock sink in the circuit. However, since the continued technology scaling increases PVT (process-voltage-temperature) variation, the increase of clock-skew variation is highly likely to cause performance degradation or system failure at runtime. Recently, to mitigate the clock-skew variation, many researchers have taken a profound interest in the clock mesh network. However, though the structure of the clock mesh network is excellent in tolerating timing variations, it demands significantly high power consumption due to the use of excessive mesh wire and buffer resources. Thus, optimizing the resources required in the mesh clock synthesis while maintaining the variation tolerance is crucially important. The three major tasks that greatly affect the cost of the resulting clock mesh are: (1) mesh segment allocation, (2) mesh buffer allocation and sizing, and (3) clock sink binding to mesh segments. Previous clock mesh optimization approaches solve the three tasks sequentially, one by one at a time, to manage the runtime complexity of the tasks at the expense of losing the quality of results. However, since the three tasks are tightly interrelated, simultaneously optimizing all three tasks is essential, if the runtime is ever permitted, to synthesize an economical clock mesh network. In this work, we propose an approach that is able to tackle the problem in an integrated fashion by combining the three tasks into an iterative framework of incremental updates and solving them simultaneously to find a globally optimal allocation of mesh resources while taking into account the clock-skew tolerance constraints. The core parts of this work are a precise analysis on the relation among the resource optimization tasks and an establishment of a mechanism for effective and efficient integration of the tasks. In particular, to handle the runtime problem, we propose a set of speedup techniques, that is, modeling the RC circuit for eliminating redundant matrix multiplications, exploiting a sliding-window scheme, and quickly estimating the buffer sizing effect, which are fitted into our context of fast clock-skew estimation in mesh resource optimization as well as an invention of early decision policies. Through extensive experiments with benchmark circuits, it is shown that our proposed clock mesh synthesizer is able to reduce the worst-case clock skew, total mesh wirelength, total size of mesh driving buffers, and total clock mesh power consumption including short-circuit power by 25.0%, 13.2%, 10.9%, and 11.0% on average compared to that produced by the best-known clock mesh synthesis method (MeshWorks), respectively.

[1]  Sachin S. Sapatnekar,et al.  Statistical timing analysis under spatial correlations , 2005, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[2]  Jiang Hu,et al.  Combinatorial Algorithms for Fast Clock Mesh Optimization , 2006, 2006 IEEE/ACM International Conference on Computer Aided Design.

[3]  Ren-Song Tsay,et al.  An exact zero-skew clock routing algorithm , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[4]  Jan-Ming Ho,et al.  Zero skew clock routing with minimum wirelength , 1992 .

[5]  Timothy A. Davis,et al.  A column pre-ordering strategy for the unsymmetric-pattern multifrontal method , 2004, TOMS.

[6]  Arvind Srinivasan,et al.  Clock routing for high-performance ICs , 1991, DAC '90.

[7]  Rajeev Murgai,et al.  An Efficient Uncertainty- and Skew-aware Methodology for Clock Tree Synthesis and Analysis , 2007, 20th International Conference on VLSI Design held jointly with 6th International Conference on Embedded Systems (VLSID'07).

[8]  R. A. Rohrer Circuit partitioning simplified , 1988 .

[9]  D. Boning,et al.  Technology scaling impact of variation on clock skew and interconnect delay , 2001, Proceedings of the IEEE 2001 International Interconnect Technology Conference (Cat. No.01EX461).

[10]  David Z. Pan,et al.  Novel binary linear programming for high performance clock mesh synthesis , 2010, 2010 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[11]  Swarup Bhunia,et al.  Low-Power Variation-Tolerant Design in Nanometer Silicon , 2011 .

[12]  Gi-Joon Nam,et al.  Ispd2009 clock network synthesis contest , 2009, ISPD '09.

[13]  Yiran Chen,et al.  Statistical based link insertion for robust clock network design , 2005, ICCAD-2005. IEEE/ACM International Conference on Computer-Aided Design, 2005..

[14]  Andrea Neviani,et al.  Analysis of the impact of process variations on clock skew , 2000 .

[15]  Carlo Guardiani,et al.  Impact analysis of process variability on clock skew , 2002, Proceedings International Symposium on Quality Electronic Design.

[16]  Jason Cong,et al.  Bounded-skew clock and Steiner routing , 1998, TODE.

[17]  Guilherme Flach,et al.  High-performance clock mesh optimization , 2012, TODE.

[18]  Brian W. Kernighan,et al.  An efficient heuristic procedure for partitioning graphs , 1970, Bell Syst. Tech. J..

[19]  David Z. Pan,et al.  MeshWorks: A Comprehensive Framework for Optimized Clock Mesh Network Synthesis , 2010, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[20]  Ying Liu,et al.  Impact of interconnect variations on the clock skew of a gigahertz microprocessor , 2000, DAC.

[21]  Hai Zhou,et al.  Parallel CAD: Algorithm Design and Programming Special Section Call for Papers TODAES: ACM Transactions on Design Automation of Electronic Systems , 2010 .

[22]  V. Zolotov,et al.  Statistical clock skew analysis considering intradie-process variations , 2004, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[23]  Rajeev Murgai,et al.  A sliding window scheme for accurate clock mesh analysis , 2005, ICCAD-2005. IEEE/ACM International Conference on Computer-Aided Design, 2005..

[24]  Martin D. F. Wong,et al.  Fast Placement Optimization of Power Supply Pads , 2007, 2007 Asia and South Pacific Design Automation Conference.

[25]  Jiang Hu,et al.  Reducing clock skew variability via cross links , 2004, Proceedings. 41st Design Automation Conference, 2004..

[26]  Cheng-Kok Koh,et al.  UST/DME: a clock tree router for general skew constraints , 2000, TODE.

[27]  Janet Roveda,et al.  Robust Clock Tree Routing in the Presence of Process Variations , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[28]  Andrew B. Kahng,et al.  Practical Bounded-Skew Clock Routing , 1997, J. VLSI Signal Process..

[29]  Baris Taskin,et al.  Integrated Clock Mesh Synthesis With Incremental Register Placement , 2012, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[30]  Larry Pileggi,et al.  IC Interconnect Analysis , 2002 .

[31]  Wayne Wei-Ming Dai,et al.  Useful-skew clock routing with gate sizing for low power design , 1996, DAC '96.

[32]  K.A. Jenkins,et al.  A clock distribution network for microprocessors , 2000, 2000 Symposium on VLSI Circuits. Digest of Technical Papers (Cat. No.00CH37103).

[33]  Clock mesh framework , 2012, Thirteenth International Symposium on Quality Electronic Design (ISQED).

[34]  David Z. Pan,et al.  Sensitivity Based Link Insertion for Variation Tolerant Clock Network Synthesis , 2007, 8th International Symposium on Quality Electronic Design (ISQED'07).

[35]  Masato Edahiro,et al.  A Clustering-Based Optimization Algorithm in Zero-Skew Routings , 1993, 30th ACM/IEEE Design Automation Conference.