Presentation is loading. Please wait.

Presentation is loading. Please wait.

7/15/2015 1 VLSI Placement Prof. Shiyan Hu Office: EERC 731.

Similar presentations


Presentation on theme: "7/15/2015 1 VLSI Placement Prof. Shiyan Hu Office: EERC 731."— Presentation transcript:

1 7/15/2015 1 VLSI Placement Prof. Shiyan Hu shiyan@mtu.edu Office: EERC 731

2 2 7/15/2015 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. –The total wire length is minimized. –Subject to area constraint or the area of the resulting block is minimized

3 3 7/15/2015 Placement can Make A Difference Random Initial Placement Final Placement

4 4 7/15/2015 Partitioning: Objective: 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.

5 5 7/15/2015 FM Partitioning: Initial Random Placement After Cut 1 After Cut 2 list_of_sets = entire_chip; while(any_set_has_2_or_more_objects(list_of_sets)) { for_each_set_in(list_of_sets) { partition_it(); } /* each time through this loop the number of */ /* sets in the list doubles. */ }

6 6 7/15/2015 FM Partitioning: -2 1 0 0 0 2 0 0 1 -2 - 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 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 Moves are made based on object gain.

7 7 7/15/2015 -2 1 0 0 0 2 0 0 1 -2 FM Partitioning:

8 8 7/15/2015 -2 1 0 -2 0 0 1 -2

9 9 7/15/2015 -2 1 0 -2 0 0 1 -2

10 10 7/15/2015 -2 1 0 -2 0 0 1 -2

11 11 7/15/2015 -2 1 0 -2 0 -2

12 12 7/15/2015 -2 1 0 -2 0 -2

13 13 7/15/2015 -2 1 0 -2 0 -2

14 14 7/15/2015 -2 1 -2 0 1 -2

15 15 7/15/2015 -2 1 -2 0 1 -2

16 16 7/15/2015 -2 1 -2 0 1 -2

17 17 7/15/2015 -2 -3 -2 0 1 -2

18 18 7/15/2015 -2 - 1 -3 -2 0 1 -2

19 19 7/15/2015 -2 - 1 -3 -2 0 1 -2

20 20 7/15/2015 -2 - 1 -3 -2 -2

21 21 7/15/2015 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 22 7/15/2015 x2 x1 x=100 x=200 Example:

23 23 7/15/2015 x2 x1 x=100x=200 Interpretation of matrices A and B: The diagonal values A[i,i] correspond to the number of connections to xi The off diagonal values A[i,j] are -1 if object i is connected to object j, 0 otherwise The values B[i] correspond to the sum of the locations of fixed objects connected to object i Example:

24 24 7/15/2015 Quadratic Placement aGlobal optimization: solves a sequence of quadratic programming problems aPartitioning: enforces the non-overlap constraints

25 25 7/15/2015 Solution of the Original QP

26 26 7/15/2015 Partitioning Use FM to cut.

27 27 7/15/2015 Perform the Global Optimization again with additional constraints that the center of gravities should be in the center of regions. Applying the Idea Recursively Center of Gravities

28 28 7/15/2015 Process of Gordian (a) Global placement with 1 region(b) Global placement with 4 region(c) Final placements

29 29 7/15/2015 Quadratic Techniques: Pros: - mathematically well behaved - efficient solution techniques Cons: - solution of Ax + B = 0 is not a legal placement, so generally some additional partitioning techniques are required. - solution of Ax + B = 0 is minimizes wirelength squared, not linear wire length.


Download ppt "7/15/2015 1 VLSI Placement Prof. Shiyan Hu Office: EERC 731."

Similar presentations


Ads by Google