1 / 26

Natarajan Viswanathan Chris Chong-Nuen Chu Iowa State University

FastPlace: Efficient Analytical Placement using Cell Shifting, Iterative Local Refinement and a Hybrid Net Model. Natarajan Viswanathan Chris Chong-Nuen Chu Iowa State University International Symposium on Physical Design April 19, 2004. FastPlace – Key Features.

gil
Télécharger la présentation

Natarajan Viswanathan Chris Chong-Nuen Chu Iowa State University

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FastPlace: Efficient Analytical Placement using Cell Shifting, Iterative Local Refinement and a Hybrid Net Model Natarajan Viswanathan Chris Chong-Nuen Chu Iowa State University International Symposium on Physical Design April 19, 2004

  2. FastPlace – Key Features Efficient Analytical Placement using 1. Cell Shifting 2. Iterative Local Refinement 3. Hybrid Net Model • Standard cell placement • Wirelength minimization • Flat placement

  3. Are Existing Algorithms Adequate? • Solution Quality There may be significant room for improvement • For existing wirelength-driven placement algorithms • Cong et al. [ASPDAC 03] [ISPD 03] • For existing timing-driven placement algorithms • Cong et al. [ICCAD 03] • Efficiency Important to have fast placement algorithms • Circuit sizes are huge in modern design • Placement must be run in early design stages

  4. Why Analytical ? • Inherently minimize the wirelength • Efficient Intrinsically • Elegant convex quadratic programming formulation • Very efficient techniques to solve convex QP • Typically employ a flat placement methodology • All cells are placed simultaneously • Maintain relative positions of cells throughout the placement process

  5. Analytical Placement Formulation • Analytical Placement Framework: repeat Solve the convex quadratic program Spread the cells until the cells are evenly distributed

  6. FastPlace Approach • Framework: repeat Solve the convex quadratic program Reduce wirelength by iterative heuristic Spread the cells until the cells are evenly distributed • Framework: repeat Solve the convex quadratic program  Reduce wirelength by iterative heuristic  Spread the cells  until the cells are evenly distributed  • Special features of FastPlace: • Cell Shifting • Easy-to-compute technique  • Enable fast convergence • Hybrid Net Model • Speed up solving of convex QP  • Iterative Local Refinement • Minimize wirelength based on linear objective

  7. Outline FastPlace: Efficient Analytical Placement using 1. Cell Shifting 2. Iterative Local Refinement 3. Hybrid Net Model

  8. Spreading by Cell Shifting • Quadratic placement should produce good relative position of cells • Simple shifting of cells should be able to produce a good placement • Major difficulties: • How to shift cells in a 2-D region? • How to make sure wirelength will still be good? • Our Approach: • Perform 1-D shifting in x and y directions independently • Interleave a small amount of shifting with quadratic placement

  9. Cell Shifting • Shifting of bin boundary • Apply to all rows and all columns independently Uniform Bin Structure Non-uniform Bin Structure • Shifting of cells linearly within each bin

  10. Bin i Bin i Bin i+1 Bin i+1 k Ui j Ui+1 l OBi-1 OBi OBi+1 OBi-1 OBi+1 OBi k j l NBi Cell Shifting – Animation … NBi

  11. Pseudo pin and Pseudo net Pseudo pin • Need to add forces to prevent cells from collapsing back • Done by adding pseudo pins and pseudo nets • Only diagonal and linear terms of the quadratic system need to be updated • Takes a single pass of O(n) time to regenerate matrix Q (which is common for both x and y problems) Pseudo net Pseudo pin Additional Force Pseudo net Target Position Original Position

  12. Outline FastPlace: Efficient Analytical Placement using 1. Cell Shifting2. Iterative Local Refinement 3. Hybrid Net Model

  13. V H H V Iterative Local Refinement • Iteratively go through all the cells one by one • For each cell, consider moving it in four directions by a certain distance • Compute a score for each direction based on • Half-perimeter wirelength (HPWL) reduction • Cell density at the source and destination regions • Move in the direction with highest positive score (Do not move if no positive score) • Distance moved (H or V) is decreasing over iterations • Detailed placement is handled by the same heuristic

  14. Outline FastPlace: Efficient Analytical Placement using 1. Cell Shifting2. Iterative Local Refinement3. Hybrid Net Model

  15. Effect of Net Model on Runtime • Need to replace each multi-pin net by 2-pin nets • Then the placement problem (even with pseudo nets) can be formulated as a convex QP: • Solved by any convex QP algorithms • Use Incomplete Cholesky Conjugate Gradient (ICCG) • Runtime is proportional to # of non-zero entries in Q • Each non-zero entry in Q corresponds to one 2-pin net • Traditionally, placers model each multi-pin net by a clique • High-degree nets will generate a lot of 2-pin nets • Slow down convex QP algorithms significantly

  16. Clique, Star and Hybrid Net Models • Star model is introduced by Mo et al. [ICCAD-00] for macro placement • Introduce a star node even for 2-pin nets • Not clear how the placement result will be affected Star Node Hybrid Model Clique Model Star Model

  17. Equivalence of Clique and Star Models • Lemma: By setting the net weights appropriately, clique and star net models are equivalent. • Proof: When star node is at equilibrium position, total forces on each cell are the same for clique and star net models. Star Node Weight = γW Weight = γ kW for a k-pin net Clique Model Star Model

  18. Experimental Setup • ISPD-02 mixed-mode benchmark suite by IBM • Macro blocks replaced by standard cells with width set to 4 x average cell width • 10% whitespace • FastPlace implemented in C • Compared with: • MetaPl-Capo 8.8 in default mode • Dragon 2.2.3 in fixed die mode • All placers run on a 750MHz Sun Sparc-2 machine

  19. Placement Benchmark Statistics

  20. Clique Net Model vs Hybrid Net Model

  21. Half Perimeter Wirelength Average Wirelength Ratio FastPlace / Capo : 1.010 FastPlace / Dragon : 1.016

  22. Runtime Comparison

  23. Circuit Global Optimization Cell Shifting Iterative Local Refinement Detail Placement Total Runtime % Runtime % Runtime % Runtime % ibm01 3.75 28.6 1.44 11.0 6.37 48.6 1.55 11.8 13.11 ibm06 13.27 29.2 3.91 8.6 25.04 55.1 3.21 7.1 45.43 ibm11 56.80 42.9 14.67 11.1 49.20 37.1 11.86 8.9 132.53 ibm16 257.41 39.4 53.93 8.3 292.74 44.9 47.99 7.4 652.07 ibm18 285.57 38.5 57.09 7.7 345.28 46.6 52.98 7.2 740.92 FastPlace - Breakdown of Runtime All runtime in seconds

  24. Complexity Analysis Runtime ≈ O(n1.412) where n = # of pins Runtime ≈ O(n1.37) where n = # of pins

  25. Summary • FastPlace -- Efficient Flat Placement Algorithm • 13.0x faster than Capo • 97.4x faster than Dragon • Comparable WL to Capo and Dragon • Based on three techniques: • Cell Shifting • Fast convergence • Simple computation • Iterative Local Refinement • Reduce wirelength based on HPWL measure • Hybrid Net Model • 1.5x speedup compared to Clique • Applicable to any analytical placement tools

  26. Thank You !!

More Related