A comparative study of two Boolean formulations of FPGA detailed routing constraints

We present empirical analyses of two Boolean satisfiability (SAT) formulations of FPGA (field programmable gate array) detailed routing constraints. Boolean SAT-based routing transforms a routing problem into a Boolean SAT instance by rendering geometric routing constraints as an atomic Boolean function. The generated Boolean function is satisfiable if and only if the corresponding routing is possible. Two different Boolean SAT-based routing models are analyzed: the track-based and the route-based routing constraint model. The track-based routing model transforms a routing task into a net-to-track assignment problem, whereas the route-based routing model reduces it into a routability-checking problem with explicitly enumerated set of detailed routes for nets. In both models, routing constraints are represented as CNF Boolean satisfiability clauses. Through comparative experiments, we demonstrate that the route-based formulation yields an easier-to-evaluate and more scalable routability Boolean function than the track-based method. This is empirical evidence that a smart/efficient Boolean formulation can achieve significant performance improvement in real-world applications.

[1]  David A. McAllester,et al.  A Rearrangement Search Strategy for Determining Propositional Satisfiability , 1988, AAAI.

[2]  Jonathan Rose,et al.  A detailed router for field-programmable gate arrays , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[3]  Joseph L. Ganley,et al.  Performance-oriented placement and routing for field-programmable gate arrays , 1995, Proceedings of EURO-DAC. European Design Automation Conference.

[4]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[5]  Randal E. Bryant,et al.  Superscalar Processor Verification Using Efficient Reductions of the Logic of Equality with Uninterpreted Functions to Propositional Logic , 1999, CHARME.

[6]  Naveed A. Sherwani Algorithms for VLSI Physcial Design Automation , 1998 .

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

[8]  Rob A. Rutenbar,et al.  A comparative study of two Boolean formulations of FPGA detailed routing constraints , 2001, ISPD '01.

[9]  Pierre Marchal,et al.  Field-programmable gate arrays , 1999, CACM.

[10]  Robert K. Brayton,et al.  Multi-Valued Decision Diagrams , 1990 .

[11]  Rob A. Rutenbar,et al.  Performance-driven simultaneous placement and routing for FPGA's , 1998, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[12]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[13]  Roberto J. Bayardo,et al.  Using CSP Look-Back Techniques to Solve Real-World SAT Instances , 1997, AAAI/IAAI.

[14]  Vaughn Betz,et al.  A fast routability-driven router for FPGAs , 1998, FPGA '98.

[15]  Steven J. E. Wilton,et al.  Architectures and algorithms for field-programmable gate arrays with embedded memory , 1997 .

[16]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.

[17]  Hilary Putnam,et al.  A Computing Procedure for Quantification Theory , 1960, JACM.

[18]  Wolfgang Kunz,et al.  An exact algorithm for solving difficult detailed routing problems , 2001, ISPD '01.

[19]  Martine D. F. Schlag,et al.  On Routability Prediction for Field-Programmable Gate Arrays , 1993, 30th ACM/IEEE Design Automation Conference.

[20]  C. Y. Lee An Algorithm for Path Connections and Its Applications , 1961, IRE Trans. Electron. Comput..

[21]  Eugene Goldberg,et al.  BerkMin: A Fast and Robust Sat-Solver , 2002, Discret. Appl. Math..

[22]  Thomas G. Szymanski Dogleg Channel Routing is NP-Complete , 1985, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[23]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[24]  Hantao Zhang,et al.  SATO: An Efficient Propositional Prover , 1997, CADE.

[25]  Gabriel Robins,et al.  New Performance-Driven FPGA Routing Algorithms , 1996, 32nd Design Automation Conference.

[26]  Vaughn Betz,et al.  VPR: A new packing, placement and routing tool for FPGA research , 1997, FPL.

[27]  丸山 勉,et al.  Field Programmable Gate Array による複雑適応系の計算の高速化 , 1999 .

[28]  Cheng-Yuan Liou,et al.  Conformality in the self-organization network , 2000, Artif. Intell..

[29]  Rob A. Rutenbar,et al.  FPGA routing and routability estimation via Boolean satisfiability , 1997, FPGA '97.

[30]  Carl Ebeling,et al.  PathFinder: A Negotiation-Based Performance-Driven Router for FPGAs , 1995, Third International ACM Symposium on Field-Programmable Gate Arrays.

[31]  Jonathan Rose,et al.  A detailed router for field-programmable gate arrays , 1992, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[32]  Tracy Larrabee,et al.  Test pattern generation using Boolean satisfiability , 1992, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[33]  Allen C.-H. Wu,et al.  A Performance and Routability Driven Router for FPGAs Considering Path Delays , 1995, 32nd Design Automation Conference.

[34]  Rob A. Rutenbar,et al.  FPGA routing and routability estimation via Boolean satisfiability , 1998, IEEE Trans. Very Large Scale Integr. Syst..

[35]  Masahiro Fujita,et al.  Symbolic model checking using SAT procedures instead of BDDs , 1999, DAC '99.

[36]  Akihiro Hashimoto,et al.  Wire routing by optimizing channel assignment within large apertures , 1971, DAC.

[37]  Srinivas Devadas,et al.  Optimal layout via Boolean satisfiability , 1989, 1989 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[38]  Chu Min Li,et al.  Integrating Equivalency Reasoning into Davis-Putnam Procedure , 2000, AAAI/IAAI.

[39]  Joao Marques-Silva,et al.  GRASP: A Search Algorithm for Propositional Satisfiability , 1999, IEEE Trans. Computers.

[40]  Malgorzata Marek-Sadowska,et al.  Routing for array-type FPGA's , 1997, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[41]  Rob A. Rutenbar,et al.  A new FPGA detailed routing approach via search-based Booleansatisfiability , 2002, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[42]  Eugene Goldberg,et al.  BerkMin: A Fast and Robust Sat-Solver , 2002 .

[43]  Armin Biere,et al.  Symbolic Model Checking without BDDs , 1999, TACAS.

[44]  Rob A. Rutenbar,et al.  Satisfiability-based layout revisited: detailed routing of complex FPGAs via search-based Boolean SAT , 1999, FPGA '99.

[45]  Dominik Stoffel,et al.  Reasoning in Boolean Networks - Logic Synthesis and Verification Using Testing Techniques , 1997, Frontiers in electronic testing.

[46]  Melvin A. Breuer,et al.  A class of min-cut placement algorithms , 1988, DAC '77.

[47]  Bart Selman,et al.  Local search strategies for satisfiability testing , 1993, Cliques, Coloring, and Satisfiability.