7/13/2015 1 EE4271 VLSI Design VLSI Routing. 2 7/13/2015 Routing Problem Routing to reduce the area.
EE4271 VLSI Design, Fall 2013
description
Transcript of EE4271 VLSI Design, Fall 2013
04/21/23 1
EE4271 VLSI Design, Fall 2013
VLSI Quadratic Placement
204/21/23
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.
304/21/23
Placement Can Make A Difference
Random InitialPlacement
FinalPlacement
404/21/23
Partitioning:
Given a set of interconnected blocks, produce two sets thatare of equal size, and such that the number of nets connecting the two sets is minimized.
504/21/23
FM Partitioning:
Initial Random Placement
After Cut 1
After Cut 2
The more crossings along the cut, the longer the total wirelength. The idea is to reduce the crossings.
604/21/23
FM Partitioning:
-1
-2
-1
1
0
0
0
2
0
0
1
-1
-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.
704/21/23
-1
-2
-1
1
0
0
0
2
0
0
1
-1
-1
-2
FM Partitioning:
804/21/23
-1
-2
-1
1
0
-2
-20
0
1
-1
-1
-2
-2
904/21/23
-1
-2
-1
1
0
-2
-20
0
1
-1
-1
-2
-2
1004/21/23
-1
-2
-11
0
-2
-20
0
1
-1
-1
-2
-2
1104/21/23
-1
-2
1 -1
0
-2
-20
-2
-1
-1
-1
-2
-2
1204/21/23
-1
-2
1 -1
0
-2
-2 0
-2
-1
-1
-1
-2
-2
1304/21/23
-1
-2
1 -1
0
-2
-20
-2
-1
-1
-1
-2
-2
1404/21/23
-1
-2
1 -1
-2
-2
-2
0
-2
-1
1
-1
-2
-2
1504/21/23
-1
-2
1
-1
-2
-2
-2
0
-2
-1
1
-1
-2
-2
1604/21/23
-1
-2
1
-1
-2
-2
-2
0
-2
-1
1
-1
-2
-2
1704/21/23
-1
-2
-1
-3
-2
-2
-2
0
-2
-1
1
-1
-2
-2
1804/21/23
-1
-2
-1
-3
-2
-2
-2
0
-2
-1
1
-1
-2
-2
1904/21/23
-1
-2
-1
-3
-2
-2
-2
0
-2
-1
1
-1
-2
-2
2004/21/23
-1
-2
-1
-3
-2
-2
-2
-2
-2
-1
-1
-1
-2
-2
2104/21/23
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
2204/21/23
Cost x1 1002 x1 x22 x2 2002
x1Cost 2x1 100 2x1 x2
x2Cost 2x1 x2 2x2 200
setting the partial derivatives = 0 we solve for the minimum Cost:
Ax + B = 0
= 04 2 2 4
x1x2
200 400
= 02 1 1 2
x1x2
100 200
x1=400/3 x2=500/3
x2x1
x=100
x=200Example:
2304/21/23
Quadratic Placement
Form quadratic placement problem
Perform partitioning to reduce overlap
2404/21/23
Solution of the Original QP
2504/21/23
Partitioning
• Use FM to cut.
2604/21/23
• Perform the quadratic placement on each region with additional constraints that the center of gravities should be in the center of regions.
Applying the Idea Recursively
Center of Gravities
2704/21/23
Process
(a) Global placement with 1 region (b) Global placement with 4 region (c) Final placements
2804/21/23
Summary
• Definition of VLSI quadratic placement problem• Partitioning technique