FPGA acceleration of enhanced boolean constraint propagation for SAT solvers

  • Authors:
  • Jason Thong;Nicola Nicolici

  • Affiliations:
  • McMaster University, Canada;McMaster University, Canada

  • Venue:
  • Proceedings of the International Conference on Computer-Aided Design
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

We propose a hardware architecture to accelerate boolean constraint propagation (BCP). Although satisfiability (SAT) solvers in software use varying search and learning strategies, BCP is a fundamental component and by far consumes the most CPU time. Our field-programmable gate array (FPGA) design uses on-chip SRAM to facilitate the acceleration of BCP. We discuss many insights to our innovative hardware memory layout, which is very compact and enables extremely fast BCP. It also supports multithreading to minimize the idle time in hardware and to fully utilize the multicore processor host. Additionally, many industrial SAT instances encode logic gates as constraints. We compact these to simultaneously reduce the hardware memory usage as well as speed up the computation (enhanced BCP). We implemented our enhanced BCP core and integrated it with a simple software SAT solver which communicates over PCI Express. Hardware performance counters show that a single processing engine is up to 4x faster than a state-of-the-art software SAT solver.