A virtual logic algorithm for solving satisfiability problems using reconfigurable hardware

Satisfiability (SAT) is a computationally expensive algorithm central to computer science. In this paper, we present a virtual logic algorithm that allows an FPGA based reconfigurable comparing platform to process SAT solver circuits much larger than its available capacity. Our algorithm is based on decomposition techniques that create independent subproblems (pages) that fit the size of the available reconfigurable hardware. Those pages can take turns reusing the platform, and creating a virtual logic environment.

[1]  Brad L. Hutchings,et al.  A dynamic instruction set computer , 1995, Proceedings IEEE Symposium on FPGAs for Custom Computing Machines.

[2]  Daniel G. Saab,et al.  A massively-parallel easily-scalable satisfiability solver using reconfigurable hardware , 1999, DAC '99.

[3]  M. Abramovici,et al.  A massively-parallel easily-scalable satisfiability solver using reconfigurable hardware , 1999, Proceedings 1999 Design Automation Conference (Cat. No. 99CH36361).

[4]  Daniel G. Saab,et al.  Satisfiability on reconfigurable hardware , 1997, FPL.

[5]  Robert K. Brayton,et al.  Timing analysis and delay-fault test generation using path-recursive functions , 1991, 1991 IEEE International Conference on Computer-Aided Design Digest of Technical Papers.

[6]  Bradly K. Fawcett Applications of reconfigurable logic , 1994 .

[7]  Sharad Malik,et al.  Using reconfigurable computing techniques to accelerate problems in the CAD domain: a case study with Boolean satisfiability , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[8]  Makoto Yokoo,et al.  Solving Satisfiability Problems on FPGAs , 1996, FPL.

[9]  Sharad Malik,et al.  Solving Boolean Satisfiability with Dynamic Hardware Configurations , 1998, FPL.

[10]  Sharad Malik,et al.  Certified timing verification and the transition delay of a logic circuit , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[11]  Stephen A. Cook,et al.  The complexity of theorem-proving procedures , 1971, STOC.

[12]  Saman Adham,et al.  BIST fault diagnosis in scan-based VLSI environments , 1996, Proceedings International Test Conference 1996. Test and Design Validity.

[13]  William H. Mangione-Smith,et al.  Dynamic circuit generation for solving specific problem instances of Boolean satisfiability , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[14]  Marco Platzner,et al.  Acceleration of Satisfiability Algorithms by Reconfigurable Hardware , 1998, FPL.

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

[16]  Hideo Fujiwara,et al.  On the Acceleration of Test Generation Algorithms , 1983, IEEE Transactions on Computers.

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

[18]  Allen Van Gelder,et al.  Partitioning Methods for Satisfiability Testing on Large Formulas , 1996, CADE.

[19]  Robert K. Brayton,et al.  Logic Minimization Algorithms for VLSI Synthesis , 1984, The Kluwer International Series in Engineering and Computer Science.

[20]  Sharad Malik,et al.  Accelerating Boolean satisfiability with configurable hardware , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[21]  Herman Schmit Incremental reconfiguration for pipelined applications , 1997, Proceedings. The 5th Annual IEEE Symposium on Field-Programmable Custom Computing Machines Cat. No.97TB100186).

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