• 中国计算机学会会刊
  • 中国科技核心期刊
  • 中文核心期刊

计算机工程与科学 ›› 2021, Vol. 43 ›› Issue (12): 2126-2130.

• 高性能计算 • 上一篇    下一篇

基于不完全算法的并行FPGA SAT求解器

黎铁军,马柯帆,张建民


  

  1. (国防科技大学计算机学院,湖南 长沙 410073)
  • 收稿日期:2020-11-24 修回日期:2020-12-26 接受日期:2021-12-25 出版日期:2021-12-25 发布日期:2021-12-31
  • 基金资助:
    国家自然科学基金(62072464,U19A2062);并行与分布处理国家级重点实验室开放基金(WDZC20205500116)

A parallel FPGA SAT solver based on incomplete algorithm

LI Tie-jun,MA Ke-fan,ZHANG Jian-min   

  1. (College of Computer Science and Technology,National University of Defense Technology,Changsha 410073,China)
  • Received:2020-11-24 Revised:2020-12-26 Accepted:2021-12-25 Online:2021-12-25 Published:2021-12-31

摘要: 可满足性问题是计算机理论与应用的核心问题。在FPGA上提出了一个基于不完全算法的并行求解器pprobSAT+。使用多线程的策略来减少相关组件的等待时间,提高了求解器效率。此外,不同线程采用共用地址和子句信息的数据存储结构,以减少片上存储器的资源开销。当所有数据均存储在FPGA的片上存储器时,pprobSAT+求解器可以达到最佳性能。实验结果表明,相比于单线程的求解器,所提出的pprobSAT+求解器可获得超过2倍的加速比。

关键词: 布尔可满足, FPGA, 不完全算法, 多线程

Abstract: The Boolean satisfiability (SAT) problem is the key problem in computer theory and application. his paper proposes a parallel SAT solver based on incomplete algorithm on FPGA. The algorithm uses a multi-threaded strategy to reduce the waiting time of related components and improve the efficiency of the solver. In addition, different threads use data storage structures that share addresses and clause information to reduce the resource overhead of on-chip memory. When all data is stored in the FPGA’s on-chip memory, the solver can achieve the best performance. The experimental results show that, compared with the single-threaded solver, the solver proposed in this paper can achieve a speedup of more than 2 times. 


Key words: boolean satisfiability, FPGA, incomplete algorithm, multi-thread