0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一种用于随机约束仿真的SAT增强的字级求解器

芯华章科技 ? 来源:未知 ? 2023-06-07 17:35 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

首届EDA国际研讨会(International Symposium of EDA,ISEDA)已在南京落下帷幕。作为国内领先的系统级验证EDA解决方案提供商,芯华章受邀出席并深度参与活动各环节,不仅受邀参展、发表主题演讲、参与圆桌论坛,并贡献专业文章入围ISEDA2023论文评选,全方位展示了公司在EDA验证领域的深厚积累和专业洞察。

本文节选自ISEDA2023入选论文《A SAT Enhanced Word-Level Solver for Constrained Random Simulation》。

摘 要

随着硬件设计复杂度的激增,验证已被广泛认为是制约整个芯片设计流程的瓶颈。基于仿真的验证通常通过生成一系列满足特定布尔/位向量约束的随机激励验证设计行为。在该验证方法学中,验证效率很大程度上取决于产生合法激励的约束求解器的性能。 本文我们首先讨论了字级求解器在求解包含特定操作符(如IF-THEN-ELSE、IMPLIES和布尔OR)的约束时遇到的挑战。为了克服这一挑战,我们引入布尔可满足性(SAT)求解器剪枝原始约束并压缩字级求解器的搜索空间。试验结果表明,在包含这些特定操作符的测试用例中,本文提出的混合求解器比原始的字级求解器平均性能提升约50%。

简 介

近几十年来,硬件设计复杂性的快速增长对功能验证提出了巨大挑战。随机约束仿真是当今行业中广泛采用的功能验证方法之一,其达到覆盖率目标所需时间的长短,很大程度上依赖于产生随机激励的约束求解器的性能与解的分布的好坏。 目前用于产生随机激励的约束求解器主要有三种:/ 01 /基于二元决策图(Binary Decision Diagram, BDD)的求解器。 该求解器通过创建BDD获取约束的所有解,因而可以轻易产生均匀的分布;然而,由于众所周知的内存爆炸问题,BDD并不适用于过于复杂的约束。 / 02 /基于值域推断的字级求解器。 该求解器通过推断压缩每个变量的可取值域构成的搜索空间,并反复从搜索空间中随机取值获取满足约束的一组解,具有易于实现、天然随机性等特性;然而,逻辑推理能力的缺失导致其在求解包含特定运算符(如IF-THEN-ELSE,IMPLIES和布尔OR)的约束上效率低下。 / 03 /基于可满足性模理论(Satisfiability Module Theory, SMT)的求解器。 该求解器扩展自比特级可满足性(Satisfiability, SAT)求解器,继承了SAT在逻辑推理上的优势,同时,得益于其广泛的应用,SMT求解器在工业界与学术界获得了极大的关注,成果颇丰;然而,SMT求解器被设计为求得一组解,因此随机性较差,且求解包含位向量的约束时需将位向量打散为单个比特,性能受限。 以上三种求解器各有优劣,综合利用第二、第三种求解器的优势,可在不牺牲易于实现与天然随机性的情况下进一步提升性能,是一条极具前景的优化随机约束仿真的路径。

一些挑战

如上所述,基于值域推断的字级求解器的性能很大程度上取决于推断结果的好坏,当推断器无法有效压缩变量的搜索空间时,该字级求解器变得无效。实践中,我们发现基于值域推断的字级求解器在求解包含特定运算符(如IF-THEN-ELSE,IMPLIES和布尔OR)时遇到挑战。例如图1所示的约束,由于推断器并不知道ITE的then分支还是else分支需要被满足,因此推断器无法压缩变量a和b的取值空间。此时,通过给变量a、b随机赋值的方式,很难从庞大的搜索空间中找出仅有的两组解。 这种挑战也可被视作是字级求解器缺乏逻辑推理能力的结果。因此,引入SAT求解器,增强字级求解器的逻辑推理能力,便自然成为一种克服该挑战的方法。 cc3d7170-0515-11ee-90ce-dac502259ad0.png 图1. 例1 ?

SAT增强的字级求解器

cc5157d0-0515-11ee-90ce-dac502259ad0.png 图2. 例1的抽象语法树 ?图2是例1的抽象语法树表示。从图2中,我们惊喜地发现,位于关系操作符之上的全是布尔操作符,位于关系操作符之下的则全是位向量操作符。因此,约束问题中存在一个清晰的分界线,将原始问题分割成布尔和位向量两部分。SAT求解器有极强的逻辑推理能力,特别适合求解布尔约束;基于值域推断的字级求解器能快速求解位向量约束,尤其是包含数学运算符的位向量约束。约束问题的这一独特结构,使得充分利用不同求解器的优势求解约束的不同部分成为可能。具体的求解步骤如图3所示: cc841030-0515-11ee-90ce-dac502259ad0.png 图3 求解流程 ?

01

将关系操作符所代表的位向量表达式替换成不同的布尔变量,构建原问题的命题骨架(例1的命题骨架如图4);

02

利用SAT求解器产生一系列满足命题骨架的布尔变量的赋值;

03

随机选取一组布尔变量的赋值,并用字级求解器求解其所代表的位向量约束;

04

若第三步有解,则返回该解,若无解则返回第三步,选择另一组赋值。

cc946d0e-0515-11ee-90ce-dac502259ad0.png 图4 例1的命题骨架 ?

试验结果

为验证上述求解策略是否有效,我们用纯字级求解器(W Solver)和SAT增强的字级求解器(W-SAT Solver)求解了14个测试用例,其用时如下表所示。ccb0028a-0515-11ee-90ce-dac502259ad0.png对于布尔操作符占主导的test1至test7,由于引入了SAT,W-SAT求解器的性能得到极大提升,最大为79%,平均约50%;对于位向量操作符占主导的test8至test14,由于增加了额外操作,W-SAT的性能略有下降,平均下降约10%,几乎可忽略不计。 试验结果表明,SAT增强的字级求解器继承了字级求解器在求解位向量操作符占主导时在约束上的优势,同时,求解布尔操作符占主导的约束时,性能也获得可观提升,证明了其求解各种约束的有效性。

结论与展望

在保留易于实现与天然随机性等特性的前提下,相较于纯字级求解器,SAT增强的字级求解器在求解布尔操作符占主导的约束时,性能有显著提升,求解位向量占主导的约束的性能几无差别,因此能有效处理多种不同约束。 实践中,我们也发现当约束过于复杂时,SAT求解器产生的大部分布尔变量赋值可能并不满足原始约束,如何更高效地剔除这些无效的布尔变量赋值,将会是我们下一步研究的重点。 论文作者:袁宸/刘军/余胜蛟/齐正华


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯华章
    +关注

    关注

    0

    文章

    184

    浏览量

    11705

原文标题:一种用于随机约束仿真的SAT增强的字级求解器

文章出处:【微信号:X-EPIC,微信公众号:芯华章科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    CST求解选择指南:瞬态(T)、频域(F)还是积分方程(I)

    CST求解选择指南:瞬态、频域还是积分方程?详解CST MWS三核心求解的特点和最佳应用场景,帮助您选择合适的
    的头像 发表于 07-25 14:24 ?154次阅读
    CST<b class='flag-5'>求解</b><b class='flag-5'>器</b>选择指南:瞬态(T)、频域(F)还是积分方程(I)

    Simcenter STAR-CCM+在燃烧学方面的应用:提供了个可以高效、高保真进行燃烧仿真的迅速而可扩展的化学求解

    ,确保获得精确结果,同时减少提前构建网格的工作量,是火焰瞬态仿真的理想选择使用多时间尺度法进行共轭热仿真和LES,获得制造燃烧室内衬所需的高保真数据摘要如今,新
    的头像 发表于 06-27 17:11 ?271次阅读
    Simcenter STAR-CCM+在燃烧学方面的应用:提供了<b class='flag-5'>一</b>个可以高效、高保真进行燃烧<b class='flag-5'>仿真的</b>迅速而可扩展的化学<b class='flag-5'>求解</b><b class='flag-5'>器</b>

    VirtualLab:立方体分束上的受抑全内反射(FTIR)

    摘要 光分束设备在光谱学、干涉测量和光通信领域的许多应用中发挥着关键作用。一种常见的分光是基于受抑全内反射(FTIR)的效果,由两个玻璃棱镜组成,它们被个非常薄的层分开。如果该层
    发表于 05-27 08:41

    西门子再收购EDA公司 西门子宣布收购Excellicon公司 时序约束工具开发商

    精彩看点 此次收购将帮助系统芯片 (SoC) 设计人员通过经市场检验的时序约束管理能力来加速设计,并提高功能约束和结构约束的正确性 ? 西门子宣布 收购 Excellicon 公司
    的头像 发表于 05-20 19:04 ?932次阅读
    西门子再收购EDA公司  西门子宣布收购Excellicon公司  时序<b class='flag-5'>约束</b>工具开发商

    概伦电子千兆高精度电路仿真器NanoSpice Giga介绍

    NanoSpiceGiga是概伦电子自主研发的千兆晶体管SPICE电路仿真器,通过基于大数据的并行仿真引擎处理十亿以上单元的电路仿真,可
    的头像 发表于 04-23 15:21 ?492次阅读
    概伦电子千兆<b class='flag-5'>级</b>高精度电路<b class='flag-5'>仿真器</b>NanoSpice Giga介绍

    概伦电子先进数字仿真器VeriSim介绍

    VeriSim是款先进的逻辑仿真器,提供全面的数字设计验证解决方案,特别适用于大型SoC设计。它配备高性能的仿真引擎和约束
    的头像 发表于 04-22 10:19 ?677次阅读

    开关电源仿真

    些用平常手段很难获得的宝贵设计参数。3、作为一种高性能通用仿真软件,Saber并不只是针对个别电路才奏效,实际上,电力电子领域所有电路拓扑中的变压、电感元件,我们都可以把他们置于真
    发表于 04-09 14:47

    一种分段气隙的CLLC变换平面变压设计

    一种路径,采用磁集成方法,对1MHz双向CLLC变换的变压进行研究、设计与测试,通过优化PCB绕线方法、进行仿真优化,提出了一种分段气隙
    发表于 03-27 13:57

    文详解Vivado时序约束

    Vivado的时序约束是保存在xdc文件中,添加或创建设计的工程源文件后,需要创建xdc文件设置时序约束。时序约束文件可以直接创建或添加已存在的约束文件,创建
    的头像 发表于 03-24 09:44 ?3634次阅读
    <b class='flag-5'>一</b>文详解Vivado时序<b class='flag-5'>约束</b>

    AI的“随机性”挑战:它们比人类更“不随机”?

    一种独特的人类特质。最近,来自康奈尔大学探讨了大语言模型(LLMs)在随机性方面的表现。他们通过个经典的实验——生成二进制随机序列,来观察这些模型是否能像人类
    的头像 发表于 02-20 13:11 ?716次阅读
    AI的“<b class='flag-5'>随机</b>性”挑战:它们比人类更“不<b class='flag-5'>随机</b>”?

    内存储分为随机存储和什么

    ,Read-Only Memory)。 随机存储(RAM) 随机存储的定义和特点 随机
    的头像 发表于 10-14 09:54 ?3074次阅读

    随机内存储器的特点有哪些

    随机存取存储器(Random Access Memory,简称RAM)是计算机和其他电子设备中用于存储数据的一种半导体存储。它允许数据在任何时间被读取或写入,因此被称为“
    的头像 发表于 10-14 09:51 ?1636次阅读

    【干货分享】硬件在环仿真(HiL)测试

    、HiL是什么?硬件在环仿真(Hardware-in-the-Loop,简称HIL)是真的控制连接假的被控对象,以一种高效低成本的方式对
    的头像 发表于 09-19 17:15 ?2893次阅读
    【干货分享】硬件在环<b class='flag-5'>仿真</b>(HiL)测试

    JK触发一种什么稳态电路

    JK触发一种具有两个稳态的数字逻辑电路,广泛应用于数字电路设计中。 引言 在数字电路设计中,触发一种非常重要的基本逻辑元件。触发
    的头像 发表于 08-22 10:39 ?2130次阅读

    仿真器的使用方法有哪些

    仿真器一种用于模拟和测试电子系统、软件或硬件的工具。它可以帮助工程师在实际硬件或软件部署之前,对设计进行验证和调试。 仿真器的基本概念 仿真器
    的头像 发表于 08-22 09:16 ?2598次阅读