Accelerating Boolean Satisfiability on an FPGA

  • Kanupriya Gulati
  • Sunil P. Khatri


In this chapter, we propose an FPGA-based SAT approach in which the traversal of the implication graph as well as conflict clause generation is performed in hardware, in parallel. In our approach, clause literals are stored in the FPGA slices. In order to solve large SAT instances, we heuristically partition the clauses into a number of ‘bins,’ each of which can fit in the FPGA. This is done in a preprocessing step.


FPGA Device Clause Generation Decision Engine FPGA Board Implication Graph 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
  2. 2.
    Abramovici, M., de Sousa, J., Saab, D.: A massively-parallel easily-scalable satisfiability solver using reconfigurable hardware. In: Proceedings, Design Automation Conference (DAC), pp. 684–690 (1999)Google Scholar
  3. 3.
    Cook, S.: The complexity of theorem-proving procedures. In: Proceedings, Third ACM Symposium Theory of Computing, pp. 151–158 (1971)Google Scholar
  4. 4.
    Gulati, K., Paul, S., Khatri, S.P., Patil, S., Jas, A.: FPGA-based hardware acceleration for Boolean satisfiability. ACM Transaction on Design Automation of Electronic Systems 14(2), 1–11 (2009)CrossRefGoogle Scholar
  5. 5.
    Mencer, O., Platzner, M.: Dynamic circuit generation for Boolean satisfiability in an object-oriented design environment. In: HICSS ’99: Proceedings of the Thirty-second Annual Hawaii International Conference on System Sciences-Volume 3, p. 3044. IEEE Computer Society, Washington, DC (1999)Google Scholar
  6. 6.
    Pagarani, T., Kocan, F., Saab, D., Abraham, J.: Parallel and scalable architecture for solving satisfiability on reconfigurable FPGA. In: Proceedings, IEEE Custom Integrated Circuits Conference (CICC), pp. 147–150 (2000)Google Scholar
  7. 7.
    Platzner, M., Micheli, G.D.: Acceleration of satisfiability algorithms by reconfigurable hardware. In: FPL ’98: Proceedings of the 8th International Workshop on Field-Programmable Logic and Applications, from FPGAs to Computing Paradigm, pp. 69–78. Springer-Verlag, London (1998)CrossRefGoogle Scholar
  8. 8.
    Redekopp, M., Dandalis, A.: A parallel pipelined SAT solver for FPGAs. In: FPL ’00: Proceedings of The Roadmap to Reconfigurable Computing, 10th International Workshop on Field-Programmable Logic and Applications, pp. 462–468. Springer-Verlag, London (2000)CrossRefGoogle Scholar
  9. 9.
    Safar, M., El-Kharashi, M., Salem, A.: FPGA-based SAT solver. In: Proceedings, Canadian Conference on Electrical and Computer Engineering, pp. 1901–1904 (2006)Google Scholar
  10. 10.
    Safar, M., Shalan, M., El-Kharashi, M.W., Salem, A.: Interactive presentation: A shift register based clause evaluator for reconfigurable SAT solver. In: DATE ’07: Proceedings of the Conference on Design, Automation and Test in Europe, pp. 153–158 (2007)Google Scholar
  11. 11.
    Silva, M., Sakallah, J.: GRASP – a new search algorithm for satisfiability. In: Proceedings of the International Conference on Computer-Aided Design (ICCAD), pp. 220–7 (1996)Google Scholar
  12. 12.
    Skliarova, I., Ferrari, A.B.: A software/reconfigurable hardware SAT solver. IEEE Transactions on Very Large Scale Integration Systems 12(4), 408–419 (2004)CrossRefGoogle Scholar
  13. 13.
    Suyama, T., Yokoo, M., Sawada, H., Nagoya, A.: Solving satisfiability problems using reconfigurable computing. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 9(1), 109–116 (2001)CrossRefGoogle Scholar
  14. 14.
    Zhao, Y., Malik, S., Wang, A., Moskewicz, M., Madigan, C.: Matching architecture to application via configurable processors: A case study with Boolean satisfiability problem. In: Proceedings, International Conference on Computer Design (ICCD), pp. 447–452 (2001)Google Scholar
  15. 15.
    Zhong, P., Martonosi, M., Ashar, P.: FPGA-based SAT solver architecture with near-zero synthesis and layout overhead. IEE Proceedings – Computers and Digital Techniques 147(3), 135–141 (2000)CrossRefGoogle Scholar
  16. 16.
    Zhong, P., Martonosi, M., Ashar, P., Malik, S.: Accelerating Boolean Satisfiability with configurable hardware. In: Proceedings, IEEE Symposium on FPGAs for Custom Computing Machines, pp. 186–195 (1998)Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2010

Authors and Affiliations

  1. 1.CoppellUSA
  2. 2.Department of Electrical & Computer EngineeringTexas A & M UniversityCollege StationUSA

Personalised recommendations