POLAR 3.0: An ultrafast global placement engine

Placement is one of the most important problems in electronic design automation. Although it has been investigated for several decades, a more efficient core engine is critically needed for the following reasons: (1) design scale becomes huge; (2) placement is typically run again and again to explore the design space at early design stages (e.g., physical synthesis); (3) placement core engine is called many times to iteratively optimize other objectives (e.g., timing and routability). In this paper, we propose a new ultrafast global placement engine called POLAR 3.0, which explores parallelism in state-of-the-art quadratic placer. POLAR 3.0 can make full use of multi-core system and it delivers 7-30× speedup over state-of-the-art academic placers by using a 8-core CPU, while the solution quality is competitive.

[1]  Ulrich Brenner,et al.  BonnPlace: A Self-Stabilizing Placement Framework , 2015, ISPD.

[2]  Yao-Wen Chang,et al.  NTUplace3: An Analytical Placer for Large-Scale Mixed-Size Designs With Preplaced Blocks and Density Constraints , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[3]  Andrew B. Kahng,et al.  APlace: a general analytic placement framework , 2005, ISPD '05.

[4]  Ulf Schlichtmann,et al.  Kraftwerk2—A Fast Force-Directed Quadratic Placement Approach Using an Accurate Net Model , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[5]  Chung-Kuan Cheng,et al.  ePlace: Electrostatics based placement using Nesterov's method , 2014, 2014 51st ACM/EDAC/IEEE Design Automation Conference (DAC).

[6]  Tao Lin,et al.  POLAR 2.0: An effective routability-driven placer , 2014, 2014 51st ACM/EDAC/IEEE Design Automation Conference (DAC).

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

[8]  Chris C. N. Chu,et al.  FastPlace 3.0: A Fast Multilevel Quadratic Placement Algorithm with Placement Congestion Control , 2007, 2007 Asia and South Pacific Design Automation Conference.

[9]  D. Chinnery,et al.  ISPD 2015 Benchmarks with Fence Regions and Routing Blockages for Detailed-Routing-Driven Placement , 2015, ISPD.

[10]  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).

[11]  Shashi Shekhar,et al.  Multilevel hypergraph partitioning: application in VLSI domain , 1997, DAC.

[12]  Igor L. Markov,et al.  ComPLx: A competitive primal-dual Lagrange optimization for global placement , 2012, DAC Design Automation Conference 2012.

[13]  Yao-Wen Chang,et al.  NTUplace2: a hybrid placer using partitioning and analytical techniques , 2006, ISPD '06.

[14]  Cheng-Kok Koh,et al.  Recursive bisection based mixed block placement , 2004, ISPD '04.

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

[16]  Natarajan Viswanathan,et al.  ICCAD-2012 CAD contest in design hierarchy aware routability-driven placement and benchmark suite , 2012, 2012 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[17]  Dongjin Lee,et al.  SimPL: An Effective Placement Algorithm , 2010, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[18]  Jin Hu,et al.  Progress and Challenges in VLSI Placement Research , 2012, Proceedings of the IEEE.

[19]  Jarrod A. Roy,et al.  Capo: robust and scalable open-source min-cut floorplacer , 2005, ISPD '05.

[20]  Gi-Joon Nam,et al.  ISPD 2006 Placement Contest: Benchmark Suite and Results , 2006, ISPD '06.

[21]  P. Madden,et al.  Improved cut sequences for partitioning based placement , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[22]  Gi-Joon Nam,et al.  The ISPD2005 placement contest and benchmark suite , 2005, ISPD '05.

[23]  M. Marek-Sadowska,et al.  mFAR: fixed-points-addition-based VLSI placement algorithm , 2005, ISPD '05.

[24]  Natarajan Viswanathan,et al.  The DAC 2012 routability-driven placement contest and benchmark suite , 2012, DAC Design Automation Conference 2012.

[25]  Endong Wang,et al.  Intel Math Kernel Library , 2014 .

[26]  Jason Cong,et al.  Optimizing routability in large-scale mixed-size placement , 2013, 2013 18th Asia and South Pacific Design Automation Conference (ASP-DAC).

[27]  Ismail Bustany,et al.  POLAR: Placement based on novel rough legalization and refinement , 2013, 2013 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[28]  Yousef Saad,et al.  Iterative methods for sparse linear systems , 2003 .

[29]  Jianli Chen,et al.  Nonsmooth Optimization Method for VLSI Global Placement , 2015, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[30]  Tao Huang,et al.  Ripple: An effective routability-driven placer by iterative cell movement , 2011, 2011 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

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

[32]  Natarajan Viswanathan,et al.  Placement: Hot or Not? , 2012, 2012 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[33]  Ismail Bustany,et al.  ISPD 2014 benchmarks with sub-45nm technology rules for detailed-routing-driven placement , 2014, ISPD '14.

[34]  Jarrod A. Roy,et al.  The ISPD-2011 routability-driven placement contest and benchmark suite , 2011, ISPD '11.