100 likes | 106 Views
FastPlace: An Analytical Placer for Mixed-Mode Designs. Natarajan Viswanathan Min Pan Chris Chu Iowa State University International Symposium on Physical Design April 6, 2005. Overview. Stage 1: Global Placement Hybrid Net Model Cell Shifting Contour based Iterative Local Refinement
E N D
FastPlace: An Analytical Placer for Mixed-Mode Designs Natarajan Viswanathan Min Pan Chris Chu Iowa State University International Symposium on Physical Design April 6, 2005
Overview Stage 1: Global Placement • Hybrid Net Model • Cell Shifting • Contour based Iterative Local Refinement Stage 2: Legalization • Legalize movable macros • Legalize standard cells Stage 3: Detailed Placement • Global Swap and Global Move • Local Re-ordering • Segment-based Shifting • Local Shifting
Global Placement: Approach • 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: • Iterative Local Refinement • Minimize wirelength based on linear objective • Hybrid Net Model • Speed up solving of convex QP • Cell Shifting • Easy-to-compute technique • Enable fast convergence • Framework: repeat Solve the convex quadratic program Reduce wirelength by iterative heuristic Spread the cells until the cells are evenly distributed
GP: Contour Map for Fixed Macros Circuit: adaptec2 Before After
Contour Based Iterative Local Refinement: Generate a contour map of the placement region based on the fixed macros Use the contour map to guide the standard cells and movable macros out of the fixed macros Consider moving an object in 8 directions during Iterative Local Refinement Compute a score for each direction based on Half-perimeter wirelength (HPWL) reduction Cell density at the source and destination regions Contour height at the source and destination regions Move in the direction with highest positive score (Do not move if no positive score) NW N NE W E SW SE S Global Placement: What’s New
Legalization: Flow Legalize movable macros: • Move movable macros to the nearest possible legal positions considering only the fixed macros • Fix movable macros Legalize standard cells: • Divide the placement region into bins and ripple standard cells among bins to even out the current placement • Determine the placeable segments and move standard cells among segments to satisfy segment capacities • Legalize standard cells within segments
Detailed Placement: Techniques (1) Optimal region of cell i • Global Swap / Global Move: • For every candidate cell j in the optimal region of cell i - compute the benefit to swap i with j - compute the benefit to move i to the space around j • Greedily pick the cell / space with best benefit to perform the swap / move j i
Detailed Placement: Techniques (2) • Local re-ordering: • For 2 to 3 consecutive cells in a segment, get the best order in terms of wirelength • Segment-based shifting: • Consider one segment at a time • Shift cells in the segment simultaneously to minimize wirelength • Local shifting: • Consider one cell at a time • Shift the cell within its local space to minimize wirelength
Detailed Placement: Flow 1. Perform initial segment-based shifting 2. Repeat Perform global swapping and moving on all the cells Perform local re-ordering with 2 cells Until no significant improvement in wirelength 3. Perform local re-ordering with 3 cells 4. Perform final segment-based shifting 5. Perform local shifting within each segment
Not There Yet … • A change in the objective: • Original FastPlace -- speed • Placement contest -- HPWL • FastPlace has the potential to obtain good WL: • For standard cell placement, 9% reduction in WL with 47% increase in runtime over ISPD-04 version • For mixed size placement, we still have a lot to do: • Proper cell shifting in the presence of macros • Proper legalization technique considering fixed/movable macros • Proper tuning of parameters • … • Stay tuned!