用于逻辑系统设计的仿真的方法、电子设备和存储介质技术方案

技术编号:39138035 阅读:9 留言:0更新日期:2023-10-23 14:53
本申请提供一种用于逻辑系统设计的仿真的方法、电子设备和存储介质,方法包括:获取用于逻辑系统设计的仿真的约束条件,所述约束条件包括由多个原始变量构成的多个表达式;根据所述约束条件确定所述约束条件的命题骨架,其中,所述多个表达式分别用多个布尔变量替代;求解满足所述命题骨架的所述多个布尔变量的值的多个组合;以及基于所述多个组合分别求解满足所述约束条件的多个原始变量的值,采用本方法能够满足目前的用于逻辑系统设计的仿真的约束条件的求解需求。的约束条件的求解需求。的约束条件的求解需求。

【技术实现步骤摘要】
用于逻辑系统设计的仿真的方法、电子设备和存储介质


[0001]本申请涉及计算机软件
,尤其涉及一种用于逻辑系统设计的仿真的方法、电子设备和存储介质。

技术介绍

[0002]功能验证是EDA流程中一个不可或缺的环节。在基于仿真测试的功能验证方法中,约束条件求解器用于产生一系列满足功能验证需求的随机激励,成为了主流商业数字仿真工具的核心组件之一。并且随着芯片设计复杂度的急剧增加,一个能够高效处理大规模复杂约束、且解具有较好随机分布的约束条件求解器被认为是突破大规模验证瓶颈、缩短验证周期的有效工具。
[0003]然而,目前的约束条件求解器缺乏逻辑推理能力,求解存在操作符的约束的能力较差,不能够满足目前的用于逻辑系统设计的仿真的约束条件的求解需求。

技术实现思路

[0004]本申请的第一方面提供一种用于逻辑系统设计的仿真的方法,所述方法包括:获取用于逻辑系统设计的仿真的约束条件,所述约束条件包括由多个原始变量构成的多个表达式;
[0005]根据所述约束条件确定所述约束条件的命题骨架,其中,所述多个表达式分别用多个布尔变量替代;
[0006]求解满足所述命题骨架的所述多个布尔变量的值的多个组合;以及
[0007]基于所述多个组合分别求解满足所述约束条件的多个原始变量的值。
[0008]本申请的第二方面提供一种电子设备,包括:存储器,用于存储一组指令;以及至少一个处理器,配置为执行所述一组指令以使得所述电子设备执行如第一方面所述的方法。
[0009]本申请的第三方面提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机的一组指令,该组指令用于在被执行时使所述计算机执行如第一方面所述的方法。
[0010]本申请提供的一种用于逻辑系统设计的仿真的方法,通过将约束条件中的由多个原始变量构成的多个表达式使用布尔变量替代。然后求解满足所述命题骨架的所述多个布尔变量的值的多个组合。能够消除位向量对约束条件中造成的影响。进而,基于所述多个组合分别求解满足所述约束条件的多个原始变量的值。可以将求解约束条件的过程区分为两个阶段,即求解命题骨架和利用满足命题骨架的解求解约束条件的过程。由于目前的约束条件求解器缺乏逻辑推理能力,求解存在操作符的约束的能力较差。因此,可以将求解存在操作符的过程进行单独拆分,能够提高约束求解的效率,并且可以满足目前的用于逻辑系统设计的仿真的约束条件的求解需求。
附图说明
[0011]为了更清楚地说明本申请或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0012]图1示出了根据本申请实施例的示例性电子设备的结构示意图。
[0013]图2A示出了根据本申请实施例的示例性仿真系统的示意图;
[0014]图2B示出了根据本申请实施例的示例性编译器的示意图;
[0015]图3示出了根据本申请实施例的作为示例地约束条件的示意图;
[0016]图4示出了根据本申请实施例的作为示例地命题骨架的示意图;
[0017]图5示出了根据本申请实施例的示例性一种用于逻辑系统设计的仿真的方法的流程图。
具体实施方式
[0018]为使本申请的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本申请进一步详细说明。
[0019]需要说明的是,除非另外定义,本申请使用的技术术语或者科学术语应当为本申请所属领域内具有一般技能的人士所理解的通常意义。本申请中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
[0020]随着计算机技术的发展,电子设计自动化(electronic design automation,EDA)工具、需求分析、程序验证、代码安全性度量及安全分析等相关领域中,约束条件求解器被广泛应用。
[0021]当前存在三种类型的约束条件求解器用于对仿真测试时涉及到的约束条件进行求解,包括:BDD求解器、字级求解器和SAT求解器。其中,BDD求解器由于公认的内存爆炸问题,已无法适应求解大规模约束条件。由于字级求解器具有易于实现、天然随机性的优势,已被成功应用于商业数字仿真器,但是由于缺乏逻辑推理能力,字级求解器在求解包含诸如if

then

else(ITE)、逻辑or等操作符的约束条件时性能较差。而SAT求解器非常擅长于逻辑推理,但是解的随机性一般,且求解数学运算时性能明显弱于字级求解器。因此,目前亟需一种能够在逻辑系统设计的仿真的过程中求解约束条件时能够求解存在操作符的约束条件,并具有较强逻辑推理能力对用于逻辑系统设计的仿真的约束条件求解的方法。
[0022]通过将约束条件中的由多个原始变量构成的多个表达式使用布尔变量替代。然后求解满足所述命题骨架的所述多个布尔变量的值的多个组合。能够消除位向量对约束条件中造成的影响。进而,基于所述多个组合分别求解满足所述约束条件的多个原始变量的值。可以将求解约束条件的过程区分为两个阶段,即求解命题骨架和利用满足命题骨架的解求解约束条件的过程。由于目前的约束条件求解器缺乏逻辑推理能力,求解存在操作符的约束的能力较差。因此,可以将求解存在操作符的过程进行单独拆分,能够提高约束求解的效
率,并且可以满足目前的用于逻辑系统设计的仿真的约束条件的求解需求。
[0023]图1示出了根据本申请实施例的电子设备100的结构示意图。电子设备100可以是运行仿真系统的电子设备。如图1所示,电子设备100可以包括:处理器102、存储器104、网络接口106、外围接口108和总线110。其中,处理器102、存储器104、网络接口106和外围接口108通过总线110实现彼此之间在电子设备内部的通信连接。
[0024]处理器102可以是中央处理器(Central Processing Unit,CPU)、图像处理器、神经网络处理器(NPU)、微控制器(MCU)、可编程逻辑器件、数字信号处理器(DSP)、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路。处理器102可以用于执行与本申请描述的技术相关的功能。在一些实施例中,处理器102还可以包括集成为单一逻辑组件的多个处理器。如图1所示,处理器102可以包括多个处理器102a、102b和102c。
[0025]存储器104可以配置为存储数据(例如,指令集、计算机代码、中间数据等)。在一些实施例中,用于本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于逻辑系统设计的仿真的方法,其特征在于,所述方法包括:获取用于逻辑系统设计的仿真的约束条件,所述约束条件包括由多个原始变量构成的多个表达式;根据所述约束条件确定所述约束条件的命题骨架,其中,所述多个表达式分别用多个布尔变量替代;求解满足所述命题骨架的所述多个布尔变量的值的多个组合;以及基于所述多个组合分别求解满足所述约束条件的多个原始变量的值。2.根据权利要求1所述的方法,其特征在于,所述求解满足所述命题骨架的所述多个布尔变量的值进一步包括:使用第一求解器求解满足所述命题骨架的至少一组布尔变量的值。3.根据权利要求1所述的方法,其特征在于,所述第一求解器是SAT求解器。4.根据权利要求1所述的方法,其特征在于,基于所述多个组合分别求解满足所述约束条件的多个原始变量的值进一步包括:在所述多个组合中选取第一组所述多个布尔变量的值;使用第二求解器根据所述多个布尔变量的值确定满足所述约束条件的多个原始变量的值。5.根据...

【专利技术属性】
技术研发人员:袁宸刘军余胜蛟齐正华
申请(专利权)人:芯华章科技厦门有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1