Circuit-wise buffer insertion and gate sizing algorithm with scalability

Most existing buffer insertion algorithms, such as van Ginneken's algorithm, consider individual nets and therefore often result in high buffer cost due to lack a global view. Thus, circuit-wise buffering is necessary to reduce buffer cost. Recently, some circuit-wise buffering algorithms are proposed. However, these algorithms are based on heuristics which are not scalable in handling large circuits. In this paper, we present a scalable circuit-wise algorithm with three novel features. (1) A linear modeling of nonlinear delay versus cost tradeoff. Due to the similar nature of buffer insertion and gate sizing, gate sizing is handled in such a manner. (2) A dynamic critical sink selection procedure to solve multiple-sink net. Multiple-sink nets have been problems for previous circuit-wise buffering algorithms. (3) A circuit partition technique to divide the circuit into sub-circuits and apply divide-and-conquer scheme. This technique provides high scalability for the algorithm. Experiments on ISCAS85 circuits show that the new algorithm achieves 17X speedup compared with Sze's path based algorithm. In the meantime, it saves 16.0% buffer cost and 4.9% gate cost without increasing circuit delay. Furthermore, the running time of a testcase in ITC99 with approximate one hundred thousand gates is less than 11 minutes, which demonstrates the scalability of the new algorithm.

[1]  Sung-Mo Kang,et al.  An exact solution to the transistor sizing problem for CMOS circuits using convex optimization , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[2]  Peter J. Osler Placement driven synthesis case studies on two sets of two chips: hierarchical and flat , 2004, ISPD '04.

[3]  John P. Fishburn,et al.  TILOS: A posynomial programming approach to transistor sizing , 2003, ICCAD 2003.

[4]  Chung-Kuan Cheng,et al.  Optimal wire sizing and buffer insertion for low power and a generalized delay model , 1995, ICCAD.

[5]  Sachin S. Sapatnekar,et al.  Accurate estimation of global buffer delay within a floorplan , 2004, IEEE/ACM International Conference on Computer Aided Design, 2004. ICCAD-2004..

[6]  Martin D. F. Wong,et al.  Fast and exact simultaneous gate and wire sizing by Lagrangian relaxation , 1998, 1998 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (IEEE Cat. No.98CB36287).

[7]  L.P.P.P. van Ginneken,et al.  Buffer placement in distributed RC-tree networks for minimal Elmore delay , 1990 .

[8]  Jiang Hu,et al.  Path-Based Buffer Insertion , 2007, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[9]  Hai Zhou,et al.  An efficient buffer insertion algorithm for large networks based on Lagrangian relaxation , 1999, Proceedings 1999 IEEE International Conference on Computer Design: VLSI in Computers and Processors (Cat. No.99CB37040).

[10]  Jiang Hu,et al.  Simultaneous driver sizing and buffer insertion using a delay penalty estimation technique , 2004, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[11]  Hai Zhou,et al.  Efficient algorithms for buffer insertion in general circuits based on network flow , 2005, ICCAD-2005. IEEE/ACM International Conference on Computer-Aided Design, 2005..

[12]  Noel Menezes,et al.  Repeater scaling and its impact on CAD , 2004, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[13]  Weiping Shi,et al.  Buffer insertion in large circuits with constructive solution search techniques , 2006, 2006 43rd ACM/IEEE Design Automation Conference.