An optimal algorithm of adjustable delay buffer insertion for solving clock skew variation problem

Meeting clock skew constraint is one of the most important tasks in the synthesis of clock trees. Moreover, the problem becomes much hard to tackle as the delay of clock signals varies dynamically during execution. Recently, it is shown that adjustable delay buffer (ADB) whose delay can be adjusted dynamically can solve the clock skew variation problem effectively. However, inserting ADBs requires non-negligible area and control overhead. Thus, all previous works have invariably aimed at minimizing the number of ADBs to be inserted, particularly under the environment of multiple power modes in which the operating voltage applied to some modules varies as the power mode changes. In this work, unlike the previous works which have solved the ADB minimization problem heuristically or locally optimally, we propose an elegant and easily adoptable solution to overcome the limitation of the previous works. Precisely, we propose an O(n log n) time (bottom-up traversal) algorithm that (1) optimally solves the problem of minimizing the number of ADBs to be inserted with continuous delay of ADBs and (2) enables solving the ADB insertion problem with discrete delay of ADBs to be greatly simple and predictable. In addition, we propose (3) a systematic solution to an important extension to the problem of buffer sizing combined with the ADB insertion to further reduce the ADBs to be used.

[1]  Tsung-Yi Ho,et al.  An efficient algorithm of adjustable delay buffer insertion for clock skew minimization in multiple dynamic supply voltage designs , 2011, 16th Asia and South Pacific Design Automation Conference (ASP-DAC 2011).

[2]  Taewhan Kim,et al.  Clock Tree synthesis for TSV-based 3D IC designs , 2011, TODE.

[3]  Wing-Kai Hon,et al.  Clock Skew Minimization in Multi-Voltage Mode Designs Using Adjustable Delay Buffers , 2010, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[4]  M. Murakawa,et al.  A post-silicon clock timing adjustment using genetic algorithms , 2003, 2003 Symposium on VLSI Circuits. Digest of Technical Papers (IEEE Cat. No.03CH37408).

[5]  Wing-Kai Hon,et al.  Value assignment of adjustable delay buffers for clock skew minimization in multi-voltage mode designs , 2009, 2009 IEEE/ACM International Conference on Computer-Aided Design - Digest of Technical Papers.

[6]  Malgorzata Marek-Sadowska,et al.  General skew constrained clock network sizing based on sequential linear programming , 2005, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[7]  Shiyan Hu,et al.  Unified adaptivity optimization of clock and logic signals , 2007, 2007 IEEE/ACM International Conference on Computer-Aided Design.

[8]  Martin D. F. Wong,et al.  An efficient and optimal algorithm for simultaneous buffer and wire sizing , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[9]  Jason Cong,et al.  Buffered Steiner tree construction with wire sizing for interconnect layout optimization , 1996, Proceedings of International Conference on Computer Aided Design.

[10]  Adnan Aziz,et al.  Zero-skew clock tree construction by simultaneous routing, wire sizing and buffer insertion , 2000, ISPD '00.

[11]  S. Tam,et al.  Clock generation and distribution for the first IA-64 microprocessor , 2000, 2000 IEEE International Solid-State Circuits Conference. Digest of Technical Papers (Cat. No.00CH37056).

[12]  Jason Cong,et al.  Simultaneous buffer and wire sizing for performance and power optimization , 1996, Proceedings of 1996 International Symposium on Low Power Electronics and Design.

[13]  Jeng-Liang Tsai,et al.  Statistical timing analysis driven post-silicon-tunable clock-tree synthesis , 2005, ICCAD-2005. IEEE/ACM International Conference on Computer-Aided Design, 2005..

[14]  Taewhan Kim,et al.  An optimal algorithm for allocation, placement, and delay assignment of adjustable delay buffers for clock skew minimization in multi-voltage mode designs , 2011, 16th Asia and South Pacific Design Automation Conference (ASP-DAC 2011).

[15]  Charles J. Alpert,et al.  Buffer insertion with accurate gate and interconnect delay computation , 1999, DAC '99.

[16]  Jeng-Liang Tsai,et al.  Zero skew clock-tree optimization with buffer insertion/sizing and wire sizing , 2004, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[17]  Ankur Srivastava,et al.  Variability-Driven Formulation for Simultaneous Gate Sizing and Postsilicon Tunability Allocation , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[18]  Sunil P. Khatri,et al.  A novel clock distribution and dynamic de-skewing methodology , 2004, IEEE/ACM International Conference on Computer Aided Design, 2004. ICCAD-2004..