通过轨迹包含来减小时序网表的方法和系统技术方案

技术编号:3946602 阅读:227 留言:0更新日期:2012-04-11 18:40
提供了通过针对电路设计网表的轨迹包含来减小时序网表的方法和系统,这通过首先标识该网表的切割并枚举不匹配轨迹的集合。对反映用于特定输入i的时序余因子和用于输入“J”的集合的时间上非相关性的约束的、该切割的余因子版本执行时间受限的展开。在对输入“J”的集合的时间上非相关性的约束下,通过相对于该网表的该切割来执行等价检查来确定是否存在轨迹包含。响应于检测到轨迹包含,通过将输入“i”合并到常数来简化该网表。

【技术实现步骤摘要】

本专利技术涉及状态机的数字电路设计,并且更具体地,涉及用于有效改善数字电路设计的系统、方法和计算机产品。
技术介绍
可以使用状态等式和状态变量以描述系统的行为和状态来建模具有存储器元件 的电子电路。与定义状态之间的转换的逻辑耦合的系统的状态变量的完整集合典型地包括 关于系统的历史的足够信息,以使得能够计算系统的未来行为。简化模型以精简状态变量 的数量,或者简化定义状态转换的逻辑,这减轻了例如分析模型以验证它符合给定规范的 计算代价。状态变量模型的综合(synthesis)和验证通常需要大量的计算资源。因此,对于 逻辑设计中的各种任务,减小设计尺寸的能力处于中心重要的地位,这是由于相对于设计 尺寸,验证算法通常需要指数级的资源。减小设计尺寸的能力可能在使用验证算法来暴露 设计缺陷是否可行的方面有所区别。所需要的是在保留相对于验证结果的该设计的行为的同时减小设计尺寸的自动方法。
技术实现思路
在此公开的实施例通过提供通过保留相对于验证结果的该设计的行为的轨迹包 含(trace-containment)检测的方法来减小设计尺寸的系统、方法和计算机产品,来解决 上述的需要。提供各种实施例,用于通过电路设计网表的轨迹包含来减小时序网表,这通过标 识该网表的切割、枚举不匹配(mismatch)轨迹的集合、然后从这些不匹配轨迹得到输入 “J”的集合用于等价检查以检测轨迹包含。各种实施例执行该切割的余因子版本的时间受 限的展开,其中该切割的余因子版本反映用于i的时序余因子和用于输入“J”的集合的时 间上非相关性的约束,然后确定是否存在轨迹包含。响应于检测到轨迹包含,可以识别对输 入“J”的集合的约束关系。当识别对输入“J”的约束关系时,这些实施例可以试图证明该 贞害1J白勺介(sequential equivalence)。附图说明被合并在说明书中并组成说明书的一部分的附示了本专利技术的各种实施例。与 通常描述一起,附图起到解释本专利技术的原理的作用。在附图中图IA描绘了通过基于轨迹包含的减小来减小网表(netlist)尺寸的整体架构的 方法的流程图100 ;图IB描绘了高层(high level)轨迹包含检查的方法的流程图150 ;图2A描绘了根据本专利技术的各种实施例的使用网表切割(cut)来获取在基于轨迹包含的减小中使用的切割的方法的流程图200 ;图2B描绘了搜索切割而针对的电路中的示例寄存器;图2C描绘了用于获取在基于轨迹包含的减小中使用的切割的伪代码;图3描绘了根据本专利技术的各种实施例的用于确定在输入之间的时间关系的方法的流程图300 ;图4A-D描述了用于实现被搜索来消除的输入和其他输入之间的所确定的时间关 系的逻辑;以及图5描绘了适于实现和实践各种示例实施例的计算机系统500。 具体实施例方式在此公开的各种实施例经由轨迹包含检测来提供时序设计(sequentialdesign) 的自动减小。这包括许多相互关联的方面,例如包括通过反复假定期望的减小、假定在该设 计的输入之间的时间关系以使能(enable)轨迹包含检测、然后尝试证明相应的轨迹包含 以使能该减小来减小网表尺寸的整体架构。第二相关方面包括计算该网表的切割,针对其 来获得可以用于使能有效的轨迹包含检测的不匹配轨迹。在第三相关方面中,在输入之间 确定可以用于使能有效的轨迹包含检测的时间关系。最后,第四相关方面涉及用于实现我 们希望消除的输入和其他输入之间的确定的时间关系以使能轨迹等价检测的机制。尽管在 一些情况下,各种方面中的一些可以被实现为单独的解决方案,但是提供根据所公开的实 施例的整体验证架构仍然是有用的。用于电路设计的网表包括具有代表门的顶点(vertices)和代表这些门之间的相 互连接的边的有向(directed)图。这些门具有相关功能,例如常数、初级输入(primary input)、诸如AND门之类的组合逻辑和时序元件(在下文中被称为寄存器)。寄存器具有两 种类型的相关功能它们的下一状态功能和它们的初始值功能。两者在图形中用其他门来 代表。在语义上,对于给定的寄存器,在时间“0”(“初始化”或“复位”时间)处在其初始值门 处出现的值将被用作该寄存器自身的值。在时间“i”处在其下一状态功能门处出现的值将 在时间“i+1”处被用于寄存器自身。不具有寄存器的网表被称为“组合(combinational)”。 可以将网表中的某些门标记为目标。目标与被搜索来验证的属性相关联。验证处理的目的 是搜索将“1”驱动到目标节点(以及如果发现一,则生成随时间的对门的配值(valuation) 的“轨迹”,例示该情况)的方式,或者证明目标的这种取值(assertion)是不可能的方式。 术语“余因子(cofactor)”表示用常数来替代设计中的输入。正的余因子表示用常数1代 替输入。负的余因子表示用常数0代替输入。可以通过“合并”操作来简化网表,该“合并” 操作用对要合并到其上的门的参考,来代替来自一个门的扇出参考(fanout references)。 “切割”表示将网表图形分割为两个部分的分割。图IA描绘了用于通过基于轨迹包含的减小来减小网表尺寸的整体架构的方法的 流程图100。本专利技术的该第一个方面涉及反复假定期望的减小,假定该设计的输入之间的时 间关系以使能有效的轨迹包含检测,然后尝试证明相应的轨迹包含以使能该减小。通过下 面的伪代码来描绘该处理的上层循环。方法在101处开始,并前进到103以取第一输入i。 在块105中,对于每个输入i,将时序余因子逻辑添加到输入i。方法前进到107来确定i 被余因子为0的网表轨迹是否包含i被余因子为1的网表。如上所述,术语余因子表示用常数——用于正余因子的常数1或者用于负余因子的常数O—来替代设计中的输入。如 果在107中确定i被余因子为0的网表轨迹包含i被余因子为1的网表,则该方法沿着“是 (YES) ”分支前进到109以将i合并到0。然后,方法从109前进到117来确定是否取另一 输入i。然而,返回到块107中,如果确定i被余因子为0的网表轨迹不包含i被余因子为 1的网表,则该方法沿着“否(NO)”分支前进到111。在块111中,该方法检查i被余因子为1的网表轨迹是否包含i被余因子为0的 网表。如果这被发现是真的,则该方法沿着“是(YES) ”分支前进到113以将i合并到1。然 而,如果在块111中确定i被余因子为1的网表轨迹不包含i被余因子为0的网表,则该方 法沿着“否(NO) ”分支前进到115,在115中确定不能消除输入i并且从i中去除(remove) 时序余因子。然后,方法前进到117来确定是否存在将被考虑的另一输入i。如果存在,则 该方法沿着“是(YES) ”分支从117返回到103以取另一输入i。如果在117中确定不存在 另外的i输入,则该方法沿着“否(NO) ”分支从117前进并且结束。 至少一些实施例可以将时序余因子逻辑用作在给相同代理人的专利技术名称 为“Method, System and Application for Sequential Cofactor-Base Analysis ofNetlists”、代理案号AUS920080393. · IBM-0144( ‘393申请)的共同未决美本文档来自技高网...

【技术保护点】
一种通过执行被装载到计算机系统中的指令来标识时序电路设计网表的轨迹包含的方法,所述方法包括:通过执行所述指令,标识包括输入i的网表的切割;通过执行所述指令,枚举不匹配轨迹的集合;通过执行所述指令,从所述不匹配轨迹得到输入“J”的集合用于等价检查以检测轨迹包含;通过执行所述指令,对反映用于输入i的时序余因子和用于输入“J”的集合的时间上非相关性的约束的、该切割的余因子版本执行时间受限的展开;通过执行所述指令,确定是否存在轨迹包含;响应于检测到轨迹包含,识别对所述输入“J”的集合的约束关系;以及通过执行所述指令,试图证明经受所述约束关系的所述切割的时序等价。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:贾森R鲍姆加特纳罗伯特L坎泽尔曼哈利莫尼弗里什帕鲁蒂
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

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

1