Multiterminal net routing for partial crossbar-based multi-FPGA systems

Multi-FPGA (field-programmable gate arrays) systems are used as custom computing machines to solve compute-intensive problems and also in the verification and prototyping of large circuits. In this paper, we address the problem of routing multiterminal nets in a multi-FPGA system that uses partial crossbars as interconnect structures. First, we model the multiterminal routing problem as a partitioned bin-packing problem and formulate it as an integer linear programming problem where the number of variables is exponential. A fast heuristic is applied to compute an upper bound on the routing solution. Then, a column generation technique is used to solve the linear relaxation of the initial master problem in order to obtain a lower bound on the routing solution. This is followed by an iterative branch-and-price procedure that attempts to find a routing solution somewhere between the two established bounds. In this regard, the proposed algorithm guarantees an exact-routing solution by searching a branch-and-price tree. Due to the tightness of the bounds, the branch-and-price tree is small resulting in shorter execution times. Experimental results are provided for different netlists and board configurations in order to demonstrate the algorithms performance. The obtained results show that the algorithm finds an exact routing solution in a very short time.

[1]  STEPHEN WALTERS,et al.  Computer-aided prototyping for ASIC-based systems , 1991, IEEE Design & Test of Computers.

[2]  Martine D. F. Schlag,et al.  Architectural tradeoffs in field-programmable-device-based computing systems , 1993, [1993] Proceedings IEEE Workshop on FPGAs for Custom Computing Machines.

[3]  Richard W. Conners,et al.  A MOdular and Reprogrammable Real-time Processing Hardware, MORRPH , 1995, Proceedings IEEE Symposium on FPGAs for Custom Computing Machines.

[4]  Martin Desrochers,et al.  A Column Generation Approach to the Urban Transit Crew Scheduling Problem , 1987, Transp. Sci..

[5]  R. Gomory,et al.  A Linear Programming Approach to the Cutting-Stock Problem , 1961 .

[6]  Joseph Varghese,et al.  An efficient logic emulation system , 1992, Proceedings 1992 IEEE International Conference on Computer Design: VLSI in Computers & Processors.

[7]  Martin D. F. Wong,et al.  Board-level multiterminal net routing for FPGA-based logic emulation , 1997, TODE.

[8]  Edward G. Coffman,et al.  Approximation algorithms for bin packing: a survey , 1996 .

[9]  Mark Shand,et al.  Programmable active memories: reconfigurable systems come of age , 1996, IEEE Trans. Very Large Scale Integr. Syst..

[10]  TingTing Hwang,et al.  Net assignment for the FPGA-based logic emulation system in the folded-Clos network structure , 1997, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[11]  David E. van den Bout,et al.  AnyBoard: an FPGA-based, reconfigurable system , 1992, IEEE Design & Test of Computers.

[12]  Martine D. F. Schlag,et al.  BORG: A RECONFIGURABLE PROTOTYPING BOARD USING FIELD-PROGRAMMABLE GATE ARRAYS , 1991 .

[13]  Ralph E. Gomory,et al.  A Linear Programming Approach to the Cutting Stock Problem---Part II , 1963 .

[14]  Martin Desrochers,et al.  A New Optimization Algorithm for the Vehicle Routing Problem with Time Windows , 1990, Oper. Res..

[15]  Gerald M. Masson,et al.  A Sampler of Circuit Switching Networks , 1979, Computer.

[16]  Pamela H. Vance,et al.  Branch-and-Price Algorithms for the One-Dimensional Cutting Stock Problem , 1998, Comput. Optim. Appl..

[17]  Jonathan Rose,et al.  The Transmogrifier-2: a 1 million gate rapid-prototyping system , 1998, IEEE Trans. Very Large Scale Integr. Syst..

[18]  Daniel P. Lopresti,et al.  Building and using a highly parallel programmable logic array , 1991, Computer.

[19]  Laurence A. Wolsey,et al.  An exact algorithm for IP column generation , 1994, Oper. Res. Lett..

[20]  Martin W. P. Savelsbergh,et al.  A Branch-and-Price Algorithm for the Generalized Assignment Problem , 1997, Oper. Res..

[21]  A. A. Farley A Note on Bounding a Class of Linear Programming Problems, Including Cutting Stock Problems , 1990, Oper. Res..

[22]  Richard W. Conners,et al.  MORRPH: a modular and reprogrammable real-time processing hardware , 1995, 1995 Proceedings of the IEEE International Symposium on Industrial Electronics.

[23]  George L. Nemhauser,et al.  Solving binary cutting stock problems by column generation and branch-and-bound , 1994, Comput. Optim. Appl..

[24]  Jonathan Rose,et al.  The Transmogrifier-2: a 1 million gate rapid prototyping system , 1997, FPGA '97.

[25]  Martin W. P. Savelsbergh,et al.  Branch-and-Price: Column Generation for Solving Huge Integer Programs , 1998, Oper. Res..

[26]  Joseph Varghese,et al.  An efficient logic emulation system , 1993, IEEE Trans. Very Large Scale Integr. Syst..

[27]  Martin D. F. Wong,et al.  On optimal board-level routing for FPGA-based logic emulation , 1997, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[28]  S. Casselman Virtual computing and the Virtual Computer , 1993, [1993] Proceedings IEEE Workshop on FPGAs for Custom Computing Machines.