Local search algorithms for timing-driven placement under arbitrary delay models

We present local search algorithms for timing-driven placement optimization. They find local slack optima for cells under arbitrary delay models and can be applied late in the design flow. The key ingredients are an implicit path straightening and a clustering of neighboring cells. Cell clusters are moved jointly to speed up the algorithm and escape suboptimal solutions, in which single cell algorithms are trapped, particularly in the presence of layer assignments. Given a cell cluster, we initially perform a line search for maximum slack on the straight line segment connecting the most critical upstream and downstream cells of the cluster. Thereby, the Euclidean path length is minimized. An iterative application will implicitly straighten the path. Later, slacks are improved further by applying ascent steps in estimated super-gradient direction. The benefit of our algorithms is demonstrated experimentally within an industrial microprocessor design flow, and on recent ICCAD benchmarks circuits.

[1]  Shantanu Dutt,et al.  Discretized Network Flow Techniques for Timing and Wire-Length Driven Incremental Placement With White-Space Satisfaction , 2011, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[2]  W. C. Elmore The Transient Response of Damped Linear Networks with Particular Regard to Wideband Amplifiers , 1948 .

[3]  Tim (Tianming) Kong A novel net weighting algorithm for timing-driven placement , 2002, ICCAD 2002.

[4]  Jin Hu,et al.  ICCAD-2015 CAD contest in incremental timing-driven placement and benchmark suite , 2015, 2015 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[5]  Louise Trevillyan,et al.  An integrated environment for technology closure of deep-submicron IC designs , 2004, IEEE Design & Test of Computers.

[6]  Amit Chowdhary,et al.  Timing driven force directed placement with physical net constraints , 2003, ISPD '03.

[7]  J. Lillis,et al.  An LP-based methodology for improved timing-driven placement , 2005, Proceedings of the ASP-DAC 2005. Asia and South Pacific Design Automation Conference, 2005..

[8]  Vishwani D. Agrawal,et al.  Chip Layout Optimization Using Critical Path Weighting , 1984, 21st Design Automation Conference Proceedings.

[9]  Ulrich Brenner VLSI legalization with minimum perturbation by iterative augmentation , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[10]  Frank M. Johannes,et al.  Quadratic placement using an improved timing model , 2004, Proceedings. 41st Design Automation Conference, 2004..

[11]  Jeng-Liang Tsai,et al.  Sensitivity guided net weighting for placement driven synthesis , 2004, ISPD '04.

[12]  Myung-Chul Kim,et al.  ICCAD-2014 CAD contest in incremental timing-driven placement and benchmark suite: Special session paper: CAD contest , 2014, 2014 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[13]  Ernest S. Kuh,et al.  An Algorithm for Performance-Driven Placement of Cell-Based ICs , 1991 .

[14]  Amit Chowdhary,et al.  How accurately can we model timing in a placement engine? , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[15]  Igor L. Markov,et al.  RUMBLE: An Incremental Timing-Driven Physical-Synthesis Optimization Algorithm , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[16]  Massoud Pedram,et al.  Post-layout timing-driven cell placement using an accurate net length model with movable Steiner points , 2001, ASP-DAC '01.

[17]  Jürgen Koehl,et al.  An analytic net weighting approach for performance optimization in circuit placement , 1991, 28th ACM/IEEE Design Automation Conference.

[18]  Joseph R. Shinnerl,et al.  Large-scale circuit placement , 2005, TODE.

[19]  Jarrod A. Roy,et al.  ITOP: integrating timing optimization within placement , 2010, ISPD '10.

[20]  Stephan Held,et al.  Gate sizing for large cell-based designs , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[21]  David Z. Pan,et al.  Pyramids: An efficient computational geometry-based approach for timing-driven placement , 2008, 2008 IEEE/ACM International Conference on Computer-Aided Design.

[22]  Kia Bazargan,et al.  Incremental Placement for Timing Optimization , 2003, ICCAD 2003.

[23]  Ulrich Brenner,et al.  BonnPlace: A Self-Stabilizing Placement Framework , 2015, ISPD.

[24]  Lawrence T. Pileggi,et al.  RICE: rapid interconnect circuit evaluation using AWE , 1994, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..