An enhanced multilevel algorithm for circuit placement

This paper presents several important enhancements to the recently published multilevel placement package mPL. The improvements include (i) unconstrained quadratic relaxation on small, noncontiguous subproblems at every level of the hierarchy; (ii) improved interpolation (declustering) based on techniques from algebraic multigrid (AMG), and (iii) iterated V-cycles with additional geometric information for aggregation in subsequent V-cycles. The enhanced version of mPL, named mPL2, improves the total wirelength result by about 12% compared to the original version. The attractive scalability properties of the mPL run time have been largely retained, and the overall run time remains very competitive. Compared to GORDIAN-L-DOMINO on uniform-cell-size IBM/ISPD98 benchmarks, a speed-up of well over 8/spl times/ on large circuits (/spl ges/100,000 cells or nets) is obtained along with an average improvement in total wirelength of about 2%. Compared to Dragon on the same benchmarks, a speed-up of about 5/spl times/ is obtained at the cost of about 4% increased wirelength. On the recently published PEKO synthetic benchmarks, mPL2 generates surprisingly high-quality placements-roughly 60% closer to the optimal than those produced by Capo 8.5 and Dragon-in run time about twice as long as Capo's and about 1/10th of Dragon's.

[1]  Jason Cong,et al.  Multilevel global placement with congestion control , 2003, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[2]  William L. Briggs,et al.  A multigrid tutorial, Second Edition , 2000 .

[3]  Andrew B. Kahng,et al.  Can recursive bisection alone produce routable, placements? , 2000, Proceedings 37th Design Automation Conference.

[4]  D. Ron,et al.  Multigrid Solvers and Multilevel Optimization Strategies , 2003 .

[5]  Joseph R. Shinnerl,et al.  Multilevel optimization for large-scale circuit placement , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[6]  Satoshi Goto,et al.  An efficient algorithm for the two-dimensional placement problem in electrical circuit layout , 1981 .

[7]  K. St A review of algebraic multigrid , 2001 .

[8]  George Karypis,et al.  Multilevel Algorithms for Multi-Constraint Hypergraph Partitioning , 1999 .

[9]  Konrad Doll,et al.  Iterative placement improvement by network flow methods , 1994, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[10]  Konrad Doll,et al.  Analytical placement: a linear or a quadratic objective function? , 1991, 28th ACM/IEEE Design Automation Conference.

[11]  Sung Kyu Lim,et al.  Performance driven multiway partitioning , 2000, Proceedings 2000. Design Automation Conference. (IEEE Cat. No.00CH37106).

[12]  Sung-Woo Hur,et al.  Mongrel: hybrid techniques for standard cell placement , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[13]  Jason Cong,et al.  Optimality and scalability study of existing placement algorithms , 2003, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[14]  Tim Kong,et al.  A novel net weighting algorithm for timing-driven placement , 2002, IEEE/ACM International Conference on Computer Aided Design, 2002. ICCAD 2002..

[15]  Carl Sechen,et al.  Efficient and effective placement for very large circuits , 1993, ICCAD.

[16]  William L. Briggs,et al.  A multigrid tutorial , 1987 .

[17]  Ulrich Brenner,et al.  An effective congestion driven placement framework , 2002, ISPD '02.

[18]  K. Stüben A review of algebraic multigrid , 2001 .

[19]  George Karypis,et al.  Multilevel Hypergraph Partitioning , 2003 .

[20]  Jason Cong,et al.  Physical hierarchy generation with routing congestion control , 2002, ISPD '02.

[21]  Joseph R. Shinnerl,et al.  Multilevel Optimization in VLSICAD , 2003 .

[22]  Joseph R. Shinnerl,et al.  Multilevel Circuit Placement , 2003 .

[23]  A. Kahng,et al.  Improved algorithms for hypergraph bipartitioning , 2000, Proceedings 2000. Design Automation Conference. (IEEE Cat. No.00CH37106).

[24]  Charles J. Alpert,et al.  The ISPD98 circuit benchmark suite , 1998, ISPD '98.

[25]  Majid Sarrafzadeh,et al.  Dragon2000: standard-cell placement tool for large industry circuits , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[26]  A. Brandt Multiscale Scientific Computation: Review 2001 , 2002 .

[27]  Dennis J.-H. Huang,et al.  Multilevel Circuit Partitioning , 1997, Proceedings of the 34th Design Automation Conference.

[28]  D. Brandt,et al.  Multi-level adaptive solutions to boundary-value problems math comptr , 1977 .

[29]  Jonathan Rose,et al.  Trading quality for compile time: ultra-fast placement for FPGAs , 1999, FPGA '99.

[30]  Georg Sigl,et al.  GORDIAN: VLSI placement by quadratic programming and slicing optimization , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[31]  A. Brandt Algebraic multigrid theory: The symmetric case , 1986 .

[32]  Frank M. Johannes,et al.  Generic global placement and floorplanning , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).