Combinatorial Optimization in VLSI Design

VLSI design is probably the most fascinating application area of combinatorial optimization. Virtually all classical combinatorial optimization problems, and many new ones, occur naturally as subtasks. Due to the rapid technological development and major theoretical advances the mathematics of VLSI design has changed significantly over the last ten to twenty years. This survey paper gives an up-to-date account on the key problems in layout and timing closure. It also presents the main mathematical ideas used in a set of algorithms called BonnTools, which are used to design many of the most complex integrated circuits in industry.

[1]  Dieter Rautenbach Rectilinear Spanning Trees Versus Bounding Boxes , 2004, Electron. J. Comb..

[2]  Jens Vygen,et al.  Almost optimum placement legalization by minimum cost flow and dynamic programming , 2004, ISPD '04.

[3]  Dieter Rautenbach,et al.  The delay of circuits whose inputs have specified arrival times , 2007, Discret. Appl. Math..

[4]  Jürgen Schietke,et al.  Timing analysis and optimization of a high-performance CMOS processor chipset , 1998, Proceedings Design, Automation and Test in Europe.

[5]  Dieter Rautenbach,et al.  Timing optimization by restructuring long combinatorial paths , 2007, ICCAD 2007.

[6]  Dieter Rautenbach,et al.  A class of problems for which cyclic relaxation converges linearly , 2008, Comput. Optim. Appl..

[7]  Jochen Könemann,et al.  Faster and simpler algorithms for multicommodity flow and other fractional packing problems , 1998, Proceedings 39th Annual Symposium on Foundations of Computer Science (Cat. No.98CB36280).

[8]  Andrew B. Kahng,et al.  Optimization of linear placements for wirelength minimization with free sites , 1999, Proceedings of the ASP-DAC '99 Asia and South Pacific Design Automation Conference 1999 (Cat. No.99EX198).

[9]  Jason Cong,et al.  Theory and algorithm of local-refinement-based optimization with application to device and interconnect sizing , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[10]  James B. Orlin,et al.  A faster strongly polynomial minimum cost flow algorithm , 1993, STOC '88.

[11]  Jens Vygen,et al.  Cycle time and slack optimization for VLSI-chips , 1999, 1999 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (Cat. No.99CH37051).

[12]  M. Dessouky,et al.  Solving the Project Time/Cost Tradeoff Problem Using the Minimal Cut Concept , 1977 .

[13]  Jens Vygen,et al.  Geometric quadrisection in linear time, with application to VLSI placement , 2005, Discret. Optim..

[14]  Ulrich Brenner,et al.  A faster polynomial algorithm for the unbalanced Hitchcock transportation problem , 2008, Oper. Res. Lett..

[15]  Prabhakar Raghavan,et al.  Randomized rounding: A technique for provably good algorithms and algorithmic proofs , 1985, Comb..

[16]  Robert E. Tarjan,et al.  Faster parametric shortest path and minimum-balance algorithms , 1991, Networks.

[17]  Prabhakar Raghavan,et al.  Multiterminal global routing: A deterministic approximation scheme , 2005, Algorithmica.

[18]  Jens Vygen,et al.  The Book Review Column1 , 2020, SIGACT News.

[19]  B. Korte,et al.  BonnTools: Mathematical Innovation for Layout and Timing Closure of Systems on a Chip , 2007, Proceedings of the IEEE.

[20]  Richard Brent On the Addition of Binary Numbers , 1970, IEEE Transactions on Computers.

[21]  Dirk Müller,et al.  Optimizing yield in global routing , 2006, ICCAD '06.

[22]  Jens Vygen,et al.  Slack in static timing analysis , 2006, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[23]  Jens Vygen,et al.  BonnPlace: Placement of Leading-Edge Chips by Advanced Combinatorial Algorithms , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[24]  Jürgen Koehl,et al.  IBM's 50 Million gate ASICs , 2003, ASP-DAC '03.

[25]  Jens Vygen,et al.  Efficient generation of short and fast repeater tree topologies , 2006, ISPD '06.

[26]  Jens Vygen,et al.  Approximation algorithms for a facility location problem with service capacities , 2008, TALG.

[27]  Martin D. F. Wong,et al.  Fast and exact simultaneous gate and wire sizing by Lagrangian relaxation , 1998, 1998 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (IEEE Cat. No.98CB36287).

[28]  Dieter Rautenbach,et al.  On the cost of optimal alphabetic code trees with unequal letter costs , 2008, European journal of combinatorics (Print).

[29]  Leon Gordon Kraft,et al.  A device for quantizing, grouping, and coding amplitude-modulated pulses , 1949 .

[30]  W. C. Elmore The Transient Response of Damped Linear Networks with Particular Regard to Wideband Amplifiers , 1948 .

[31]  Martin D. F. Wong,et al.  Greedy wire-sizing is linear time , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[32]  Stephen P. Boyd,et al.  Digital Circuit Optimization via Geometric Programming , 2005, Oper. Res..

[33]  Ulrich Brenner,et al.  Faster and better global placement by a new transportation algorithm , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[34]  Jianhua Liu,et al.  An Algorithmic Approach for Generic Parallel Adders , 2003, ICCAD 2003.

[35]  Chung-Kuan Cheng,et al.  A global router with a theoretical bound on the optimal solution , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[36]  Jens Vygen,et al.  On dual minimum cost flow algorithms , 2002, Math. Methods Oper. Res..

[37]  W. Cheney,et al.  Proximity maps for convex sets , 1959 .

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

[39]  Jens Vygen,et al.  New theoretical results on quadratic placement , 2007, Integr..

[40]  Hans Schneider,et al.  Max-Balancing Weighted Directed Graphs and Matrix Scaling , 1991, Math. Oper. Res..

[41]  Jens Vygen,et al.  Worst-case ratios of networks in the rectilinear plane , 2001, Networks.

[42]  Alexander Schrijver,et al.  Paths, Flows, and VLSI-Layout , 1990 .

[43]  Martin D. F. Wong,et al.  Greedy wire-sizing is linear time , 1998, ISPD '98.

[44]  Jens Vygen,et al.  The repeater tree construction problem , 2010, Inf. Process. Lett..

[45]  Jens Vygen,et al.  A generalization of Dijkstra's shortest path algorithm with applications to VLSI routing , 2009, J. Discrete Algorithms.

[46]  Dieter Rautenbach,et al.  Timing optimization by restructuring long combinatorial paths , 2007, 2007 IEEE/ACM International Conference on Computer-Aided Design.

[47]  Jens Vygen,et al.  Maximum mean weight cycle in a digraph and minimizing cycle time of a logic chip 3 , 2001 .

[48]  Asmus Hetzel,et al.  A sequential detailed router for huge grid graphs , 1998, Proceedings Design, Automation and Test in Europe.

[49]  David K. Smith,et al.  Mathematical Programming: Theory and Algorithms , 1986 .

[50]  Farhad Shahrokhi,et al.  The maximum concurrent flow problem , 1990, JACM.

[51]  John P. Fishburn,et al.  TILOS: A posynomial programming approach to transistor sizing , 2003, ICCAD 2003.

[52]  Jens Vygen,et al.  Faster optimal single-row placement with fixed ordering , 2000, DATE '00.

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

[54]  Christoph Albrecht,et al.  Global routing by new approximation algorithms for multicommodityflow , 2001, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[55]  Jens Vygen,et al.  Clock Scheduling and Clocktree Construction for High Performance ASICS , 2003, ICCAD 2003.

[56]  Jan-Ming Ho,et al.  Zero skew clock net routing , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[57]  Martin Skutella,et al.  Approximation Algorithms for the Discrete Time-Cost Tradeoff Problem , 1997, Math. Oper. Res..

[58]  Stephan Held,et al.  Gate sizing for large cell-based designs , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[59]  F. Hwang On Steiner Minimal Trees with Rectilinear Distance , 1976 .

[60]  Hiran Tennakoon,et al.  Gate sizing using Lagrangian relaxation combined with a fast gradient-based pre-processing step , 2002, IEEE/ACM International Conference on Computer Aided Design, 2002. ICCAD 2002..

[61]  Jens Vygen,et al.  Algorithms for large-scale flat placement , 1997, DAC.

[62]  Jens Vygen,et al.  Fast buffering for optimizing worst slack and resource consumption in repeater trees , 2009, ISPD '09.

[63]  B. Korte,et al.  Combinatorial Problems in Chip Design , 2008 .

[64]  Jens Vygen Near-Optimum Global Routing with Coupling, Delay Bounds, and Power Consumption , 2004, IPCO.

[65]  Jürgen Koehl,et al.  A flat, timing-driven design system for a high-performance CMOS processor chipset , 1998, Proceedings Design, Automation and Test in Europe.

[66]  Daniel G. Schweikert,et al.  Proceedings of the 29th ACM/IEEE Design Automation Conference , 1992, DAC 1992.

[67]  Nimrod Megiddo,et al.  Applying parallel computation algorithms in the design of serial algorithms , 1981, 22nd Annual Symposium on Foundations of Computer Science (sfcs 1981).

[68]  Dieter Rautenbach,et al.  Delay optimization of linear depth boolean circuits with prescribed input arrival times , 2006, J. Discrete Algorithms.

[69]  Jens Vygen Algorithms for detailed placement of standard cells , 1998, Proceedings Design, Automation and Test in Europe.

[70]  G.E. Moore,et al.  Cramming More Components Onto Integrated Circuits , 1998, Proceedings of the IEEE.

[71]  Boris Polyak Minimization of unsmooth functionals , 1969 .

[72]  David S. Johnson,et al.  The Rectilinear Steiner Tree Problem is NP Complete , 1977, SIAM Journal of Applied Mathematics.

[73]  Jens Vygen,et al.  Legalizing a placement with minimum total movement , 2004, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[74]  M. Queyranne Performance ratio of polynomial heuristics for triangle inequality quadratic assignment problems , 1986 .

[75]  L. Lovász,et al.  Research trends in combinatorial optimization: Bonn 2008 , 2009 .

[76]  Dirk Müller,et al.  Faster min–max resource sharing in theory and practice , 2011, Math. Program. Comput..

[77]  David A. Huffman,et al.  A method for the construction of minimum-redundancy codes , 1952, Proceedings of the IRE.

[78]  Chein-Wei Jen,et al.  Generalized Earliest-First Fast Addition Algorithm , 2003, IEEE Trans. Computers.

[79]  Yoji Kajitani,et al.  VLSI module placement based on rectangle-packing by the sequence-pair , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[80]  Naveed A. Sherwani,et al.  Algorithms for VLSI Physical Design Automation , 1999, Springer US.

[81]  Markus Struzyna,et al.  Flow-based Partitioning and Fast Global Placement in Chip Design , 2010 .