A parallel branch-and-cut approach for detailed placement

We introduce a technique that utilizes distributing computing resources for the efficient optimization of a traditional physical design problem. Specifically, we present a detailed placement strategy designed to exploit distributed computing environments, where the additional computing resources are employed in parallel to improve the optimization time. A Mixed Integer Programming (MIP) model and branch-and-cut optimization strategy are employed to solve the standard cell placement problem. By exploiting the problem structure, our algorithm improves upon the solutions afforded by existing optimization algorithms. First, an efficient batch-branching technique can eliminate several integer decision variables during each step of the optimization procedure. This batch-branching scheme can be performed serially or in parallel. In addition, custom cutting-planes are shown to significantly reduce the run time for optimizations as they efficiently refine the feasible region in order to quickly produce integer solutions. Our serial branch-and-cut strategies allow for significant reductions in wirelength, relative to the state-of-the-art commercial software package CPLEX, assuming a fixed allotment of time. Furthermore, we show that distributed computing resources can be used to significantly reduce the time required to achieve reductions in wirelength.

[1]  Prithviraj Banerjee,et al.  A parallel hierarchical algorithm for module placement based on sparse linear equations [VLSI layout] , 1996, 1996 IEEE International Symposium on Circuits and Systems. Circuits and Systems Connecting the World. ISCAS 96.

[2]  David G. Luenberger,et al.  Linear and nonlinear programming , 1984 .

[3]  David Applegate,et al.  Finding Cuts in the TSP (A preliminary report) , 1995 .

[4]  K. Srihari,et al.  Optimal placement by branch-and-price , 2005, Proceedings of the ASP-DAC 2005. Asia and South Pacific Design Automation Conference, 2005..

[5]  Joseph R. Shinnerl,et al.  mPL6: enhanced multilevel mixed-size placement , 2006, ISPD '06.

[6]  P. Spindler,et al.  Fast and Robust Quadratic Placement Combined with an Exact Linear Net Model , 2006, 2006 IEEE/ACM International Conference on Computer Aided Design.

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

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

[9]  Jason Cong,et al.  Routability-driven placement and white space allocation , 2004, IEEE/ACM International Conference on Computer Aided Design, 2004. ICCAD-2004..

[10]  Joseph Mohan,et al.  A study in parallel computation : the traveling salesman problem , 1982 .

[11]  Rob A. Rutenbar,et al.  Placement by Simulated Annealing on a Multiprocessor , 1987, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[12]  Hai Zhou,et al.  Parallel CAD: Algorithm Design and Programming Special Section Call for Papers TODAES: ACM Transactions on Design Automation of Electronic Systems , 2010 .

[13]  Andrew B. Kahng,et al.  A faster implementation of APlace , 2006, ISPD '06.

[14]  Jason Cong,et al.  Multilevel generalized force-directed method for circuit placement , 2005, ISPD '05.