Timing-Driven Placement

The placement algorithms presented in the previous chapters mostly focus on minimizing the total wirelength (TWL). Timing-driven placement (TDP) is designed specifically targeting wires on timing critical paths. It shall be noted that a cell is usually connected with two or more cells. Making some targeted nets shorter during placement may sacrifice the wirelengths of other nets that are connected through common cells. While the delay on critical paths decreases, other paths may become critical. Therefore, timing-driven placement has to be performed in a very careful and balanced manner. Timing-driven placement has been studied extensively over the last two decades. The drive for new methods in timing-driven placement to maximize circuit performance is from multiple facets due to the technology scaling and integration: (1) growing interconnect versus gate delay ratios, (2) higher levels of on-die functional integration which makes global interconnects even longer, (3) increasing chip operating frequencies which make timing closure tough, (4) increasing number of macros and standard cells for modern system-on-chip (SOC) designs. These factors create continuing challenges to better timing-driven placement Timing-driven placement can be performed at both global and detailed placement stages (see previous chapters on placement). Historically, timing-driven placement algorithms can be roughly grouped into two classes: net-based and path-based. The net-based approach deals with nets only, with the hope that if we handle the nets on the critical paths well, the entire critical path delay may be optimized implicitly. The two basic techniques for net-based optimization are through net weighting [17, 5, 37, 50] and net constraints [22] [63] [55] [48] [24] [29]. The path-based approach directly works on all or a subset of paths [31, 59, 61, 11]. The majority path-based approaches formulate the problem into a mathematical programming framework (e.g., linear programming). There are pros and cons for both net and path based approaches in terms of runtime/scalability, ease of implementation, controllability, and so on. Modern timing driven placement techniques tend to use some hybrid manner of both net-based and path-based approaches [39]. In this chapter, we will discuss fundamental algorithms as well as recent trends of timing-driven placement. Due to the large amount of works in timing-driven placement, it is not possible to exhaust all of them in this chapter. Instead, we will describe the basic ideas and fundamental techniques, and point out recent researches and possible future directions. We will first cover the basic building blocks for timing driven placement. Then the next two sections will discuss net-based approaches, i.e., through net weighting and net constraints. Then we will survey the basic formulations and algorithms behind the path (or timing graph) based approach. Additional techniques and issues in the context of timing driven placement will be discussed, followed by conclusions.

[1]  Charles M. Fiduccia,et al.  A linear-time heuristic for improving network partitions , 1988, 25 years of DAC.

[2]  Malgorzata Marek-Sadowska,et al.  Timing driven placement , 1989, 1989 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[3]  Jarrod A. Roy,et al.  Seeing the Forest and the Trees: Steiner Wirelength Optimization in Placement , 2007, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[4]  David Z. Pan,et al.  A new LP based incremental timing driven placement for high performance designs , 2006, 2006 43rd ACM/IEEE Design Automation Conference.

[5]  Andrew B. Kahng,et al.  On the relevance of wire load models , 2001, SLIP '01.

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

[7]  Carl Sechen,et al.  Timing Driven Placement for Large Standard Cell Circuits , 1995, 32nd Design Automation Conference.

[8]  Andrew B. Kahng,et al.  Partitioning-based standard-cell global placement with an exact objective , 1997, ISPD '97.

[9]  Prashant Saxena,et al.  Shield count minimization in congested regions , 2002, ISPD '02.

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

[11]  Massoud Pedram,et al.  Timing-driven placement based on partitioning with dynamic cut-net control , 2000, DAC.

[12]  Carl Sechen,et al.  VLSI Placement and Global Routing Using Simulated Annealing , 1988 .

[13]  Andrew B. Kahng,et al.  Min-max placement for large-scale timing optimization , 2002, ISPD '02.

[14]  Arvind Srinivasan,et al.  RITUAL: a performance driven placement algorithm for small cell ICs , 1991, 1991 IEEE International Conference on Computer-Aided Design Digest of Technical Papers.

[15]  Andrew B. Kahng,et al.  Implementation and extensibility of an analytic placer , 2004, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[16]  Carl Sechen,et al.  A loosely coupled parallel algorithm for standard cell placement , 1994, ICCAD '94.

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

[18]  Rob A. Rutenbar,et al.  Early research experience with OpenAccess gear: an open source development environment for physical design , 2005, ISPD '05.

[19]  Gi-Joon Nam,et al.  ISPD 2006 Placement Contest: Benchmark Suite and Results , 2006, ISPD '06.

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

[21]  Pravin M. Vaidya,et al.  A performance driven macro-cell placement algorithm , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[22]  Sachin S. Sapatnekar,et al.  Timing Analysis and Optimization of Sequential Circuits , 1998 .

[23]  D. A. Knol,et al.  Unification Of Budgeting And Placement , 1997, Proceedings - Design Automation Conference.

[24]  Rob A. Rutenbar,et al.  Timing-driven placement by grid-warping , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[25]  C. Y. Roger Chen,et al.  A sensitivity based placer for standard cells , 2000, ACM Great Lakes Symposium on VLSI.

[26]  Min Xie,et al.  Optimality and stability study of timing-driven placement algorithms , 2003, ICCAD-2003. International Conference on Computer Aided Design (IEEE Cat. No.03CH37486).

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

[28]  Jason Cong,et al.  Performance optimization of VLSI interconnect layout , 1996, Integr..

[29]  Konrad Doll,et al.  Iterative placement improvement by network flow methods , 1994, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[30]  David Z. Pan,et al.  Sensitivity guided net weighting for placement-driven synthesis , 2004, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

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

[32]  C. Y. Roger Chen,et al.  Detailed placement with net length constraints , 2003, The 3rd IEEE International Workshop on System-on-Chip for Real-Time Applications, 2003. Proceedings..

[33]  Georg Sigl,et al.  GORDIAN: VLSI placement by quadratic programming and slicing optimization , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[34]  Sung-Woo Hur,et al.  Mongrel: hybrid techniques for standard cell placement , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[35]  Ravi Nair,et al.  Generation of performance constraints for layout , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[36]  Andrew B. Kahng,et al.  Boosting: min-cut placement with improved signal delay , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

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

[38]  Andrew B. Kahng,et al.  Power-aware placement , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[39]  Ernest S. Kuh,et al.  Proud: a fast sea-of-gates placement algorithm , 1988, DAC '88.

[40]  Michael Burstein,et al.  Timing Influenced Layout Design , 1985, 22nd ACM/IEEE Design Automation Conference.

[41]  David Z. Pan,et al.  Hippocrates: First-Do-No-Harm Detailed Placement , 2007, 2007 Asia and South Pacific Design Automation Conference.

[42]  Frank M. Johannes,et al.  Generic global placement and floorplanning , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[43]  A. Sangiovanni-Vincentelli,et al.  The TimberWolf placement and routing package , 1985, IEEE Journal of Solid-State Circuits.

[44]  Tim Kong,et al.  A novel net weighting algorithm for timing-driven placement , 2002, IEEE/ACM International Conference on Computer Aided Design, 2002. ICCAD 2002..

[45]  Habib Youssef,et al.  Timing constraints for correct performance , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[46]  Sung-Woo Hur,et al.  Force directed mongrel with physical net constraints , 2003, DAC '03.

[47]  Jason Cong,et al.  Multilevel generalized force-directed method for circuit placement , 2005, ISPD '05.

[48]  Wing K. Luk,et al.  A fast physical constraint generator for timing priven layout , 1991, 28th ACM/IEEE Design Automation Conference.

[49]  Melvin A. Breuer,et al.  Fundamental CAD algorithms , 2000, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[50]  Massoud Pedram,et al.  Timing-driven bipartitioning with replication using iterative quadratic programming , 1999, Proceedings of the ASP-DAC '99 Asia and South Pacific Design Automation Conference 1999 (Cat. No.99EX198).

[51]  Bernhard M. Riess,et al.  SPEED: fast and efficient timing driven placement , 1995, Proceedings of ISCAS'95 - International Symposium on Circuits and Systems.

[52]  Jon Frankle,et al.  Iterative and adaptive slack allocation for performance-driven layout and FPGA routing , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[53]  Jian Liu,et al.  Net criticality revisited: an effective method to improve timing in physical design , 2002, ISPD '02.

[54]  Chwen-Cher Chang,et al.  A practical all-path timing-driven place and route design system , 1994, Proceedings of APCCAS'94 - 1994 Asia Pacific Conference on Circuits and Systems.

[55]  Andrew B. Kahng,et al.  Lens Aberration Aware Timing-Driven Placement , 2006, Proceedings of the Design Automation & Test in Europe Conference.

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

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

[58]  C. Y. Roger Chen,et al.  Timing driven placement using physical net constraints , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[59]  Majid Sarrafzadeh,et al.  A unified theory of timing budget management , 2004, IEEE/ACM International Conference on Computer Aided Design, 2004. ICCAD-2004..

[60]  Majid Sarrafzadeh,et al.  Timing-driven placement using design hierarchy guided constraint generation , 2002, IEEE/ACM International Conference on Computer Aided Design, 2002. ICCAD 2002..

[61]  Majid Sarrafzadeh,et al.  A delay budgeting algorithm ensuring maximum flexibility in placement , 1997, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[62]  Robert B. Hitchcock,et al.  Timing verification and the timing analysis program , 1988, DAC 1982.

[63]  Lawrence T. Pileggi,et al.  Asymptotic waveform evaluation for timing analysis , 1990, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[64]  Stuart E. Dreyfus,et al.  An Appraisal of Some Shortest-Path Algorithms , 1969, Oper. Res..

[65]  Vaughn Betz,et al.  Timing-driven placement for FPGAs , 2000, FPGA '00.

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