属性综合中活性条件提取和可视化方法、系统、存储介质和终端与流程

文档序号:18835250发布日期:2019-10-09 05:04阅读:144来源:国知局
属性综合中活性条件提取和可视化方法、系统、存储介质和终端与流程

本发明涉及芯片形式验证领域,尤其涉及属性综合中活性条件提取和可视化方法、系统、存储介质和终端。



背景技术:

芯片形式验证属性通常用断言语言来描述。现在工业界通用的断言语言是sva(systemverilogassertion)。断言不同于一般的芯片设计语言,比如verilog。前者是声明式的,即描述一种属性但不给出具体的实施方法。后者是程序性的,即通过可执行的语义来描述硬件的行为。形式验证必须把断言转换成和硬件相似的可执行模型,然后证明硬件的行为模型满足断言模型。这个转换的过程就叫断言综合。

通常情况下,断言可分为三种,安全断言、活性断言和安全活性的混合断言。其中,安全断言描述一个必须永远满足的条件,比如信号a和信号b不可能同时为1;活性断言描述一个终究会被满足的条件,比如当请求信号发出后必会收到答复信号;而混合断言则包括了上述两种条件。

断言的种类决定了验证所需的算法和复杂度。通常,活性断言的验证比安全断言的验证的算法复杂度要高。并且,由于sva有很多隐性的活性语义,用户很可能不知情的生成带活性的断言。而当用户知道一个时间上限的情况下,活性断言可以转换为安全断言。但是这些场景都要求验证平台对断言的活性进行准确提取和表达。现有技术并没有对断言的活性进行提取,也没有在提取后的进行展示以帮助用户进行差错发现与后续改进。

因此,针对上述问题,提供属性综合中活性条件提取和可视化方法、系统、存储介质和终端,是本领域亟待解决的技术问题。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供属性综合中活性条件提取和可视化方法、系统、存储介质和终端,帮助用户避免不必要的活性断言,提高形式验证的效率。

本发明的目的是通过以下技术方案来实现的:属性综合中活性条件提取和可视化方法,包括以下步骤:

将描述芯片形式验证属性的基于正则表达式的断言转换为不确定状态机;

将不确定状态机转换为确定状态机;

在各转换步骤之后,提取状态循环上的状态转换条件并将其转换为活性条件;

将各转换步骤生成的包括所述活性条件的状态机形成图形文件;

显示所述图形文件,并标识出所述活性条件。

进一步地,所述的方法还包括:

在各转换步骤完成后,进行状态机最小化操作,用于清除多余的等价状态和状态转换。

进一步地,所述的方法还包括:

在显示所述图形文件时,同时显示时间上限;

获取将活性断言转换为安全断言的输入指令,并根据所述输入指令对断言进行调整;

其中,所述的安全断言描述一个必须永远满足的条件,所述的活性断言描述一个终究会被满足的条件。

进一步地,在显示所述图形文件步骤中,还标识出状态机的初始状态、接受状态和拒绝状态。

本发明还提供属性综合中活性条件提取和可视化系统,包括

断言转换模块:用于将描述芯片形式验证属性的基于正则表达式的断言转换为不确定状态机;

不确定状态机转换模块:用于将不确定状态机转换为确定状态机;

活性条件提取模块:用于对断言转换模块和不确定状态机转换模块得到的状态机,提取状态循环上的状态转换条件并将其转换为活性条件;

图形文件形成模块:用于将生成的包括所述活性条件的状态机形成图形文件;

图形可视化模块:用于显示所述图形文件,并标识出所述活性条件。

进一步地,所述的系统还包括:

状态机最小化模块:用于对断言转换模块和不确定状态机转换模块得到的状态机,进行状态机最小化操作,所述的最小化操作用于清除多余的等价状态和状态转换。

进一步地,所述的图形可视化模块还包括:用于在显示所述图形文件时,同时显示时间上限;

所述的系统还包括:

断言调整模块:用于获取将活性断言转换为安全断言的输入指令,并根据所述输入指令对断言进行调整;

其中,所述的安全断言描述一个必须永远满足的条件,所述的活性断言描述一个终究会被满足的条件。

进一步地,在显示所述图形文件时,还标识出状态机的初始状态、接受状态和拒绝状态。

本发明还提供一种存储介质,其上存储有计算机指令,所述计算机指令运行时执行所述的属性综合中活性条件提取和可视化方法的步骤。

本发明还提供一种终端,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行所述的属性综合中活性条件提取和可视化方法的步骤。

本发明的有益效果是:

(1)本发明采取分步的综合过程图形展示,有利于用户对断言生成过程的理解和纠错。特别是对于活性条件的标识,能帮助用户避免不必要的活性断言,提高形式验证的效率。

(2)本发明还根据在完成标识之后,显示时间上限,方便用户将活性断言转换为安全断言,并根据所述输入指令对断言进行调整。

附图说明

图1为本发明方法流程图;

图2为不确定状态机的转换规则示意图;

图3为不确定状态机的综合过程示意图;

图4为属性断言的不确定状态机转在转换为确定状态机的示意图;

图5为约束断言的不确定状态机转在转换为确定状态机的示意图;

图6为最小化操作的示意图;

图7为生成活性条件的示意图;

图8为本发明系统流程图。

具体实施方式

下面结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。

实施例1

本实施例提供属性综合中活性条件提取和可视化方法,该方法用于帮助用户对断言综合的结果进行分步骤式的图形化展示,帮助用户发现活性条件的标识,帮助用户避免不必要的活性断言,提高形式验证的效率。

具体地,如图1所示,在本实施例中,所述的属性综合中活性条件提取和可视化方法包括以下步骤:

s1:将描述芯片形式验证属性的基于正则表达式(regularexpression)的断言转换为不确定状态机(nda,non-deterministicautomaton)。

在本步骤的转换过程中,根据一定的规则对底层子表达式的综合结果进行组合生成高一级表达式的结果并迭代生成最后结果。该步骤地规则如图2所示:

图2中状态0在所有情况下(条件为1)都转换到自己(0状态的自循环)。同时,条件为a是转换到状态1,为!a时转换到状态2。也就是说,状态0在条件a时可以转换到状态0或1,条件!a时到状态0或2。这样同一条件到多个状态的转换形成了不确定性。

另外,图3给出了综合过程的例子:

图2是底层表达式“a”的状态机,图3的左边是表达式“b”的状态机,图3的右边是表达式“b推出a”的状态机,显示了把“b”状态机的状态1替代为“a”状态机的由底层表达式状态机综合为高层表达式状态机的过程。

在完成步骤s1后,不确定状态机必须转换为确定状态机(da,deterministicautomaton)才能用在验证中。因此:

s2:将不确定状态机转换为确定状态机。

与步骤s1中不同的是,在本步骤的转换过程中,需要根据断言的性质采用不同的处理方式。例如属性断言表达了被验证设计的规范和需求,约束断言则是对于验证环境的限制和假设。

对于属性断言,只需要在该属性断言的初始状态上加一个不确定的自循环,而所有此状态的所有原始状态转换只能在所述不确定的自循环不发生的情况下发生。详细情况如图4所示。

如图4,左边的非确定状态机对初始状态0引入条件loop后成为右图的确定状态机:状态0的自循环条件变为loop,状态0到1的转换条件变为a&!loop,状态0到2的转换条件变为!a&!loop,这样任一指定条件下一个状态只能转换到唯一一个状态。

对于约束断言,确定性状态机必须由幂集操作生成,详细情况如图5所示。

图5是约束“a->b”的非确定状态机(左)和确定状态机(右)。转换由经典的幂集操作完成。幂集操作的基本步骤是把同一条件下可以到达的多个状态合为一个状态,由于状态组合的数量是状态数量的指数倍,转换过程可能出现“状态爆炸”的问题。所以转换过程中的状态机最小化优化至关重要。

在步骤s2完成后,完成了断言综合操作。

另外,优选地,在本实施例中,在步骤s1和/或s2之后,所述的方法还包括:

s1’/s2’:在各转换步骤完成后,进行状态机最小化操作,其中最小化操作用于清除多余的等价状态和状态转换,以减轻状态爆炸问题,详情情况如图6所示。

图6是一个最小化优化的例子。左图状态1和2等价,因为两者在条件b时都转换到状态3,在条件!b时都转换到状态4。经过等价状态合并,结果为右图,状态2被去掉。

在步骤s1和/或s2后,甚至在上述优先实施例的步骤s1’和/或s2’,会进行下述的s3步骤。

s3:在各转换步骤之后,提取状态循环上的状态转换条件并将其转换为活性条件。

具体地,活性条件的提取基于对状态循环的跟踪。由于有向图上所有循环均可以由简单循环组成,因此在本实施例中,只提取简单循环,并从循环上的状态转换条件生成活性条件,详情情况如图7所示。

图7是一个活性属性的状态机。带“*”号的状态1因为条件为!b的自循环,形成一个状循环路径,活性条件为!b,也用“*”号标注。即当状态机处于状态1的时候,如果活性条件!b永远满足,则状态2(目标状态)永远不可到达,造成该活性状态失败。简单循环由一个或多个不同的状态组成,不包含其他循环。

s4:将各转换步骤生成的包括所述活性条件的状态机形成图形文件。

在本实施例中,所述的图形文件为graphviz图形文件,并且该图形文件可以由相应的工具进行显示。

s5:显示所述图形文件,并标识出所述活性条件。

该步骤可以对断言综合的结果进行分步骤式的图形化展示,无论是步骤s1和步骤s2中,帮助用户发现活性条件的标识。状态转换条件和活性条件会被标识出来。

另外,优选地,在本实施例中,在步骤s5中,还标识出状态机的初始状态、接受状态和拒绝状态。

在该步骤中,所述的标识包括但不限于颜色、形状、大小、文字等。

另外,更优地,在本实施例中,所述的方法还包括:

s6:在显示所述图形文件时,同时显示时间上限;

s7:获取将活性断言转换为安全断言的输入指令,并根据所述输入指令对断言进行调整;其中,所述的安全断言描述一个必须永远满足的条件,所述的活性断言描述一个终究会被满足的条件。

具体地,由于sva有很多隐性的活性语义,用户很可能不知情的生成带活性的断言;同时活性断言的验证比安全断言的验证的算法复杂度要高。

而当用户知道一个时间上限的情况下,活性断言可以转换为安全断言,因此用户可以根据步骤s5中标识出来的活性条件以及步骤s6中显示出来的时间上限,输入将活性断言转换为安全断言的输入指令。之后会根据所述输入指令对断言进行相应调整。

时间上限的估算和具体的设计场景有关。比如在基于先进先出的跨时钟域信息传递协议中,数据的延迟上限即先进先出的深度。

实施例2

本实施例提供属性综合中活性条件提取和可视化系统,该系统的发明构思与实施例1相同,用于帮助用户对断言综合的结果进行分步骤式的图形化展示,帮助用户发现活性条件的标识,帮助用户避免不必要的活性断言,提高形式验证的效率。如图8所示,所述的系统包括:

断言转换模块:用于将描述芯片形式验证属性的基于正则表达式的断言转换为不确定状态机;

不确定状态机转换模块:用于将不确定状态机转换为确定状态机;

活性条件提取模块:用于对断言转换模块和不确定状态机转换模块得到的状态机,提取状态循环上的状态转换条件并将其转换为活性条件;

图形文件形成模块:用于将生成的包括所述活性条件的状态机形成图形文件;

图形可视化模块:用于显示所述图形文件,并标识出所述活性条件。

更优地,在本实施例中,所述的系统还包括:

状态机最小化模块:用于对断言转换模块和不确定状态机转换模块得到的状态机,进行状态机最小化操作,所述的最小化操作用于清除多余的等价状态和状态转换。

更优地,在本实施例中,所述的图形可视化模块还包括:用于在显示所述图形文件时,同时显示时间上限;

所述的系统还包括:

断言调整模块:用于获取将活性断言转换为安全断言的输入指令,并根据所述输入指令对断言进行调整;

其中,所述的安全断言描述一个必须永远满足的条件,所述的活性断言描述一个终究会被满足的条件。

更优地,在本实施例中,在显示所述图形文件时,还标识出状态机的初始状态、接受状态和拒绝状态。

本发明实施例提供的属性综合中活性条件提取和可视化系统中相关部分的说明请参见本发明实施例1提供的属性综合中活性条件提取和可视化方法中对应部分的详细说明,在此不再赘述。另外,本发明实施例提供的上述技术方案中与现有技术中对应的技术方案实现原理一致的部分并未详细说明,以免过多赘述。

实施例3

基于实施例1的实现,本发明还提供一种存储介质,其上存储有计算机指令,所述计算机指令运行时执行实施例1中所述的属性综合中活性条件提取和可视化方法的步骤。

基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

实施例4

基于实施例1的实现,本发明还提供一种终端,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行所述的属性综合中活性条件提取和可视化方法的步骤。

在本发明所提供的所有实施例中,应该理解到,所揭露系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元/模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其他不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本发明创造的保护范围之中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1