1 / 28

EE4271 VLSI Design, Fall 2013

EE4271 VLSI Design, Fall 2013. VLSI Quadratic Placement. Problem formulation. Input: Blocks (standard cells and macros) B 1 , ... , B n Shapes and Pin Positions for each block B i Nets N 1 , ... , N m Output: Coordinates (x i , y i ) for block B i .

sona
Download Presentation

EE4271 VLSI Design, Fall 2013

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. EE4271 VLSI Design, Fall 2013 VLSI Quadratic Placement

  2. Problem formulation • Input: • Blocks (standard cells and macros) B1, ... , Bn • Shapes and Pin Positions for each block Bi • Nets N1, ... , Nm • Output: • Coordinates (xi , yi ) for block Bi. • The total wirelength as an estimation of timing is minimized.

  3. Placement Can Make A Difference Random Initial Placement Final Placement

  4. Given a set of interconnected blocks, produce two sets that are of equal size, and such that the number of nets connecting the two sets is minimized. Partitioning:

  5. The more crossings along the cut, the longer the total wirelength. The idea is to reduce the crossings. FM Partitioning: Initial Random Placement After Cut 1 After Cut 2

  6. Moves are made based on object gain. Object Gain: The amount of change in cut crossings that will occur if an object is moved from its current partition into the other partition FM Partitioning: -1 2 0 - each object is assigned a gain - objects are put into a sorted gain list - the object with the highest gain is selected and moved. - the moved object is "locked" - gains of "touched" objects are recomputed - gain lists are resorted 0 -1 0 -2 0 0 -2 -1 1 -1 1

  7. FM Partitioning: -1 2 0 0 -1 0 -2 0 0 -2 -1 1 -1 1

  8. -1 -2 -2 0 -1 -2 -2 0 0 -2 -1 1 -1 1

  9. -1 -2 -2 0 -1 -2 -2 0 0 -2 -1 1 1 -1

  10. -1 -2 -2 0 -1 -2 -2 0 0 -2 -1 1 1 -1

  11. -1 -2 -2 0 -1 -2 -2 0 -2 -2 1 -1 -1 -1

  12. -1 -2 -2 -1 -2 0 -2 0 -2 -2 1 -1 -1 -1

  13. -1 -2 -2 -1 -2 -2 0 0 -2 -2 1 -1 -1 -1

  14. -1 -2 -2 1 -2 -2 0 -2 -2 -2 1 -1 -1 -1

  15. -1 -2 -2 1 -2 -2 0 -2 -2 -2 1 -1 -1 -1

  16. -1 -2 -2 1 -2 -2 0 -2 -2 1 -2 -1 -1 -1

  17. -1 -2 -2 1 -2 -2 0 -1 -2 -2 -2 -3 -1 -1

  18. -1 -2 -2 1 -2 -2 0 -1 -2 -2 -2 -3 -1 -1

  19. -1 -2 -2 1 -2 -2 0 -1 -2 -2 -2 -3 -1 -1

  20. -1 -2 -2 -1 -2 -2 -2 -1 -2 -2 -2 -3 -1 -1

  21. Analytical Placement • Write down the placement problem as an analytical mathematical problem • Quadratic placement • Sum of squared wire length is quadratic in the cell coordinates. • So the wirelength minimization problem can be formulated as a quadratic program. • It can be proved that the quadratic program is convex, hence polynomial time solvable

  22. Example: x=100 x=200 x1 x2

  23. Quadratic Placement • Form quadratic placement problem • Perform partitioning to reduce overlap

  24. Solution of the Original QP

  25. Partitioning • Use FM to cut.

  26. Applying the Idea Recursively • Perform the quadratic placement on each region with additional constraints that the center of gravities should be in the center of regions. Center of Gravities

  27. Process (a) Global placement with 1 region (b) Global placement with 4 region (c) Final placements

  28. Summary • Definition of VLSI quadratic placement problem • Partitioning technique

More Related