180 likes | 199 Views
This paper presents enhanced cut sequences for circuit placement via partitioning-based methods, aiming to minimize wire length and optimize partition balance. It discusses optimal sequence generation, Rent's rule application, wire length estimation, dynamic programming formulation, and optimal cut sequence tables. Experimental results validate the effectiveness of the proposed approach.
E N D
Improved Cut Sequences for Partitioning Based Placement Mehmet Can YILDIZ and Patrick H. Madden State University of New York at BinghamtonComputer Science Department DAC 2001
Outline • Introduction • Previous Work • Optimal generation of cut sequences • Experimental results • Conclusion
Introduction • Placement by recursive partitioning is one of the oldest approaches • Cut sequence appears to have increasing impact as circuit sizes grow. • Use mathematical foundation to find an optimal cut sequence with some assumptions
Previous Work • Placement problem • Inputs: a set of cells, a netlist. • Goal: Find the best position for each cell according to appropriate cost functions. • Circuit placement approaches • Linear programming • Force directed • Partitioning based methods (focus on here)
Previous Work • A number of cut sequence • (a) VHHVVVV (b) QQQQQ • (c) HHHHVVVV (d)
Previous Work • Other cut sequence • Capo - based on the relative height and width of a region • Feng Shui - utilizes an aspect ratio (height to width)to determine cut direction
Optimal generation of cut sequences • Goal : • Obtain optimal cut sequences for placement by partitioning. • Sequences determine the direction of cuts to perform, and the balance between partitions.
Optimal generation of cut sequences • Assume only two pin nets and Rent’s rule holds • Rent’s rule T : propagated terminals C : area P : generally between 0.3 and 0.7 K : constant C
C0 Estimation of Cut Sizes cut nets = c1 c2
Estimation of Wire Lengths • Cut length function • CL(r1,c1,r2,c2) compute the wire length for nets cut by partition • estimate of the wire length for any sequence of cuts by counting the wirelength of each net the first time that it is cut. c c-2 2 C0 c1 c2 CL(r,2,r,c-2) r cutsize * ( x * weightH + y * weightV) )
Dynamic Programming Formulation • For the r by c region, wish to minimize the total estimated wire length. • consider a variety of possible horizontal and vertical cut locations. • Each partition Total wire length = (subregions’ wire length) + (contribution of nets cut by the partition) C0 c1 c2
c c-2 2 C0 c1 c2 r Optimal generation of cut sequences • WL(r,c) : optimal wire length for r by c region • CL : cut length function
An optimal cut sequence table • record the direction and balance of an optimal cut • to minimize total wire length
An optimal cut sequence table • Two properties • In all cases, optimal sequences include bisections, and not partitions of arbitrary balance. • If the ratio of rows to column exceeds a threshold value, and optimal sequence partitions horizontally. • Change the estimated Rent parameter or wire length estimation function, the general nature of the tables does not change.
An optimal cut sequence table • We can choose an appropriate cut direction by simply considering the ratio of region height to width. • This is the method employed by Feng Shui • Lack an method to find an appropriate aspect ratio, and determine by experiment.
Experimental results Each tool run 10 times of benchmark • Capo - aspect-ratio(1) based sequence • Modified Capo - modified cut sequences more closely to Feng Shui. • Feng Shui - aspect-ratio(2) based sequence cut sequence has greatest impact on the largest benchmarks
Conclusion • resolved the problem of cut sequence generation for partitioning based placement • show that bisection is preferable to unbalanced partitions • Anticipate similar changes can result in significant improvements on other partitioning-based placement tools.