210 likes | 321 Views
Unified Quadratic Programming Approach for Mixed Mode Placement. Bo Yao, Hongyu Chen, Chung-Kuan Cheng, Nan-Chi Chou*, Lung-Tien Liu*, Peter Suaris* CSE Department University of California, San Diego *Mentor Graphics Corporation. Outline. Introduction to the mixed mode placement
E N D
Unified Quadratic Programming Approach for Mixed Mode Placement Bo Yao, Hongyu Chen, Chung-Kuan Cheng, Nan-Chi Chou*, Lung-Tien Liu*, Peter Suaris* CSE Department University of California, San Diego *Mentor Graphics Corporation
Outline • Introduction to the mixed mode placement • Unified cost function • DCT based cell density cost • Experimental results • Conclusions
Mixed Mode Placement • Common design needs • Mixed signal designs (analog and RF parts are macros) • Hierarchical design style • IP blocks • Memory blocks • Challenges for placement • Huge amount of components • Heterogeneous module sizes/shapes Analog IP Memory
Previous Works on Mixed Mode Placement • Combined floorplanning and std. cell placement • Capo (Markov, ISPD 02, ICCAD 2003) • Multi-level annealing placement • mPG-MS (Cong, ASPDAC 2003) • Partitioning based approaches • Feng Shui (Madden, ISPD 04) • Force-directed / analytical approaches • Kraftwork (Eisenmann and Johannas, DAC 98 ) • FastPlace (Chu, ISPD 04) • APlace (Kahng, ISPD 04, ICCAD 04)
UPlace: Optimization Flow Analytical Placement Discrete Optimization Detailed Placement
Unified Cost Function • Combined object function for global placement • DP: Penalties for un-even cell densities • WL: Wire length cost function • Quadratic analytical placement WL = 1/2xTQx+px +1/2yTQy+py • Bounding box wire length for discrete optimization
Cell Density • Common strategy • Partition the placement area into N by N rooms • Cell density matrix D = {dij} • dij is the total cell area in room (i,j) A
DCT: Cell Density in Frequency Domain • 2-D Discrete Cosine Transform (DCT) Cell density matrix D => Frequency matrix F = {fij} where fij is the weight of density pattern (i,j)
… (0,0) (1,0) (3,0) … (1,1) (0,1) … … (3,3) (0,3) Properties of Frequency Matrix • Each fuvis the weight of frequency (u,v) • Inverse DCT recovers the cell density
… (0,0) (1,0) (3,0) … (1,1) (0,1) … … (3,3) (0,3) Frequency Matrix: An Example • Density matrix D and frequency matrix F
Properties of DCT • Cell density energy dij2 = fij2 • Cell perturbation and frequency matrix • Uniform density fij = 0
Density Cost of a Placement • Weighted sum of fij2 • Higher weight for lower frequency
Approximation of the Density Cost • Approximate the density cost with a quadratic function DP = ½aixi2+ bixi+ci • Make DP convex • ai >= 0 to ensure • Matrix form DP =½xTAx+Bx A = diag(a1, a2, …, an), B=(b1, b2, …, bn)T DP ai > 0 xi x- x x+ DP ai = 0 xi x- x x+
UPlace: Minimize Combined Objective Function • Combine quadratic objectives • WL + DP • WL = ½xTQx+px • DP =½xTAx+Bx • Solve linear equation for each minimization • (Q + A)x = -p - B • Use Lagrange relaxation to reduce cell congestion • (k+1) = (k) + (k)* DP • 0 = 0, 0 = Const • (k+1) = (k) * , 0< 1
A A A A A Discrete Optimization • Try -distance moves in four directions. Pick the best position. • Sweep all the cells in each iteration
Legalization/Detailed Placement – Zone Refinement • One cell a time, ceiling -> floor • Two directional alternation A
Experimental Results: Wire length Normalized Wire Length
Experimental results: CPU time CPU (Min)
UPlace: Placement Results IBM-02
Conclusions • We propose a unified cost function for global optimization, which provides good trade-offs between wire length minimization and cell spreading. • We introduce a DCT based cell density calculation method, and a quadratic approximation. • The unified placement approach generates promising results on mixed mode designs.