[发明专利]一种基于流水线执行策略的硬件SAT求解器在审

专利信息
申请号: 201911408977.6 申请日: 2019-12-31
公开(公告)号: CN111142944A 公开(公告)日: 2020-05-12
发明(设计)人: 张建民;马柯帆;陆平静;孙岩;董德尊;罗章;欧洋;王强;齐星云;曹继军;戴艺 申请(专利权)人: 中国人民解放军国防科技大学
主分类号: G06F9/38 分类号: G06F9/38
代理公司: 北京丰浩知识产权代理事务所(普通合伙) 11781 代理人: 李学康
地址: 410073 湖*** 国省代码: 湖南;43
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 流水线 执行 策略 硬件 sat 求解
【权利要求书】:

1.一种基于流水线执行策略的硬件SAT求解器,其特征在于,

包括:预处理模块、输出模块和子句搜索及变元翻转模块;

所述预处理模块,用于产生CNF公式变元的初始赋值,提取当前赋值下的不可满足子句以及所述CNF公式的子句和变元信息;

所述输出模块,用于输出所述CNF公式是否是可满足的;

所述子句搜索及变元翻转模块,用于按照预设的最大指定次数内以第一线程、第二线程、第三线程和第四线程按流水线执行策略同步循环执行搜索不可满足子句并按照一定概率对子句变元进行翻转并存储变元翻转后不可满足的子句,并将求解结果发送给输出模块。

2.如权利要求1所述的一种基于流水线执行策略的硬件SAT求解器,其特征在于,

所述硬件SAT求解器还包括:地址映射表、子句映射表、变元映射表和FIFO树;

所述地址映射表,用于将预处理模块发送的子句数据存储在片上存储器中的地址;

所述子句映射表,用于在地址映射表中记录的片上存储器中的地址上存储子句数据;

所述变元映射表,用于存储初始赋值的子句以及变元翻转后的子句;

所述FIFO树,用于存储变元翻转后不可满足的子句。

3.如权利要求2所述的一种基于流水线执行策略的硬件SAT求解器,其特征在于,

所述子句搜索及变元翻转模块按照预设的最大指定次数内以第一线程、第二线程、第三线程和第四线程按流水线执行策略同步循环执行搜索不可满足子句并按照一定概率对子句变元进行翻转并存储变元翻转后不可满足的子句,具体包括:

一个循环周期为十二个时钟周期;

所述第一线程在第一个时钟周期内,执行选择所述FIFO树中第一不可满足子句并根据所述第一不可满足子句的第一变元读地址映射表;

所述第一线程在第二个时钟周期内,执行根据所述第一不可满足子句的第一变元读子句映射表,并执行根据所述第一不可满足子句的第二变元读地址映射表;

所述第一线程在第三个时钟周期内,执行根据所述第一不可满足子句的第一变元读变元映射表,并执行根据所述第一不可满足子句的第二变元读子句映射表,并执行根据所述第一不可满足子句的第三变元读地址映射表;

所述第一线程在第四个时钟周期内,执行评估根据所述第一不可满足子句的第一变元读变元映射表获得的子句并暂存评估为不可满足的第二不可满足子句,并执行根据所述第一不可满足子句的第二变元读变元映射表,并执行根据所述第一不可满足子句的第三变元读子句映射表;

所述第一线程在第五个时钟周期内,执行计算所述第二不可满足子句的第一变元的break-value值并排序,并执行根据所述第一不可满足子句的第二变元读变元映射表获得的子句并暂存评估为不可满足的第三不可满足子句,并执行根据所述第一不可满足子句的所述第三变元读变元映射表;

所述第一线程在第六个时钟周期内,执行计算所述第二不可满足子句的第二变元的break-value值并排序,并执行计算所述第三不可满足子句的第一变元的break-value值并排序,并执行根据所述第一不可满足子句的第三变元读变元映射表获得的子句并暂存评估为不可满足的第四不可满足子句;

所述第一线程在第七个时钟周期内,执行计算所述第二不可满足子句的第三变元的break-value值并排序,并执行计算所述第三不可满足子句的第二变元的break-value值并排序,并执行计算所述第四不可满足子句的第一变元的break-value值并排序,并执行根据概率选择变元进行翻转并选择翻转后的不可满足子句;

所述第一线程在第八个时钟周期内,执行计算所述第三不可满足子句的第三变元的break-value值并排序,并执行计算所述第四不可满足子句的第二变元的break-value值并排序,并执行根据概率选择变元进行翻转并选择翻转后的不可满足子句;

所述第一线程在第九个时钟周期内,执行计算所述第四不可满足子句的第三变元的break-value值并排序,并执行根据概率选择变元进行翻转并选择翻转后的不可满足子句;

所述第一线程在第十个时钟周期内,执行根据概率选择变元进行翻转并选择翻转后的不可满足子句,并收集变元翻转后不可满足的子句并存储到FIFO树;

所述第一线程在第十一个时钟周期内,执行根据概率选择变元进行翻转并选择翻转后的不可满足子句,并收集变元翻转后不可满足的子句并存储到FIFO树;

所述第一线程在第十二个时钟周期内,执行根据概率选择变元进行翻转并选择翻转后的不可满足子句,并收集变元翻转后不可满足的子句并存储到FIFO树。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201911408977.6/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top