Global Routing in VLSI Design: Algorithms, Theory, and Computational Practic

Antoine Deza1, Chris Dickson2, Tamds Terlaky3, Anthony Vannelli4, Hu Zhang5
1McMaster University, Department of Computing and Software, Hamilton, Ontario, L8S 4K1, Canada.
2Bedlam Game, Toronto, Ontario, MBA 3C4, Canada
3Lehigh University, Department of Industrial and Systems Engineering, Bethlehem, Pennsylvanie, USA.
4University of Guelph, College of Physical and Engineering Science, Guelph, Ontario, Canada.
5RBC Financial Group, 200 Bay Street, Royal Bank Plaza, 11th Floor, South Tower, Toronto, Ontario, M5J 2J5, Canada.

Abstract

Global routing in VLSI (very large scale integration) design is one of the most challenging discrete optimization problems in computational theory and practice. In this paper, we present a polynomial time algorithm for the global routing problem based on integer programming formulation with a theoretical approximation bound. The algorithm ensures that all routing demands are satisfied concurrently, and the overall cost is approximately minimized.

We provide both serial and parallel implementation as well as develop several heuristics used to improve the quality of the solution and reduce running time. We provide computational results on two sets of well-known benchmarks and show that, with a certain set of heuristics, our new algorithms perform extremely well compared with other integer-programming models.

Keywords: Global routing in VLSI design, Approximation algorithms, Integer programming model