对用于实现整数除法的集成电路硬件设计的形式验证制造技术

技术编号:18553218 阅读:19 留言:0更新日期:2018-07-28 10:31
对用于实现整数除法的集成电路硬件设计的形式验证。验证用于实现整数除法器的集成电路硬件设计的计算机实现方法,整数除法器接收分子N和分母D并输出商q和余数r。该方法包括:(a)验证基本特性对于集成电路硬件设计为真,(b)在形式上验证一个或更多个范围缩减特性对于集成电路硬件设计为真。基本特性验证集成电路硬件设计将响应于非负输入对的子集中的任何输入对N、D生成正确输出对q、r。一个或更多个范围缩减特性验证:如果集成电路硬件设计将响应于非负输入对N、D生成输出对q、r,则集成电路硬件设计将响应于另一非负输入对N′、D生成与q和r具有预定关系的输出对q′、r′,其中,N和N′具有一个或更多个预定关系中的一个。

【技术实现步骤摘要】
对用于实现整数除法的集成电路硬件设计的形式验证
本公开涉及对用于实现整数除法的集成电路硬件设计的形式验证。
技术介绍
参照图1,用于实现整数除法的集成电路100(在此可以被称为整数除法器)接收分子N和分母D作为输入,(经由硬件逻辑)执行N除以D(即,)的运算,并输出该运算的商q和余数r,其中,N=D*q+r、|r|<|D|,并且N、D、q以及r是整数。如本领域技术人员所知的,当分子N和分母D都为正时,商q是在减法结果为负数之前分母D可以从分子N中减去的次数;而余数r是在从分子N中减去分母D的商数q倍之后剩余的量。例如,如果分子N是26,并且分母D是11,那么运算的商q是2,并且余数r是4。为了生成用于实现整数除法的集成电路100,生成了描述用于实现整数除法的集成电路的结构和功能的集成电路硬件设计。然后对该集成电路硬件设计进行测试或验证,以确保按照该集成电路硬件设计制造的集成电路将按预期运转。一旦该集成电路硬件设计被验证,就将该集成电路硬件设计在集成电路制造系统处加以处理,以生成根据该集成电路硬件设计的集成电路。集成电路硬件设计例如可以通过形式验证或基于模拟的验证来进行验证。形式验证是一个系统性处理,其使用集成电路设计和数学推理的数学模型来验证集成电路硬件设计。与此相反,基于模拟的验证是通过对集成电路硬件设计的实例化(instantiation)应用激励(stimuli)并且响应于该激励监测该集成电路硬件设计的实例化的输出来测试集成电路硬件设计的处理。与基于模拟的验证相比,形式验证可以改进可控性。当彻底模拟硬件设计所需的模拟测试信号或矢量的数量变得难以管理时,发生低可控性。例如,32位比较器需要264个测试矢量(例如,激励)。这将需要数百万年来通过基于模拟的验证进行详尽验证。通过执行形式验证,32位比较器可以在不到一分钟的时间内被验证。虽然形式验证可以提供超过基于模拟的验证的优势,但用于实现整数除法的集成电路硬件设计已经很难利用形式验证来验证。下面描述的实施方式仅通过示例的方式来提供,并非限制解决验证用于实现整数除法的集成电路硬件设计的已知方法和系统的任何或全部缺点的实现。
技术实现思路
提供该
技术实现思路
,以按简化形式介绍选择的概念,其在下面详细描述中进一步描述。本
技术实现思路
不是旨在标识所要求保护的主旨的关键特征或基本特征,也不是旨在被用于限制所要求保护的主旨的范围。在此描述了验证用于实现整数除法器的集成电路硬件设计的方法,其中,该整数除法器被配置成接收分子N和分母D并输出商q和余数r。该方法包括以下步骤:(a)验证基本特性对于所述集成电路硬件设计为真;并且(B)在形式上验证一个或更多个范围缩减特性对于所述集成电路硬件设计为真。所述基本特性被配置成,验证用于实现整数除法器的所述集成电路硬件设计的实例化将响应于非负输入对的子集中的任何输入对N、D生成正确输出对q、r。所述一个或更多个范围缩减特性被配置成验证:如果用于实现整数除法器的所述集成电路硬件设计的实例化将响应于非负输入对N、D生成输出对q、r,则用于实现整数除法器的所述硬件设计的实例化将响应于输入对N′、D生成与q和r具有预定关系的输出对q′、r′,其中,N和N′具有一个或更多个预定关系中的一个。所述基本特性和所述一个或更多个范围缩减特性被配置成,使得验证基本特性和一个或更多个范围缩减特性的步骤在所述非负输入(即,N≥0、D>0)上彻底地验证用于实现整数除法的所述集成电路硬件设计的操作。在所述集成电路硬件设计被配置成处理负输入(即,N<0和/或D<0)的情况下,所述方法还可以包括以下步骤:在形式上验证一个或更多个符号关系特性,以验证所述集成电路硬件设计在所述负输入(即,N<0和/或D<0)上正确地实现整数除法。第一方面提供了验证用于实现整数除法器的集成电路硬件设计的计算机实现方法,该整数除法器被配置成接收分子N和分母D并输出商q和余数r,该方法包括以下步骤:在一个或更多个处理器中:验证基本特性对于所述集成电路硬件设计为真,所述基本特性被配置成,验证所述集成电路硬件设计的实例化将响应于非负输入对的子集中的任何输入对N、D而生成正确输出对q、r;通过形式验证工具在形式上验证一个或更多个范围缩减特性针对所述集成电路硬件设计为真,所述一个或更多个范围缩减特性被配置成验证:如果所述集成电路硬件设计的实例化将响应于非负输入对N、D生成输出对q、r,则所述集成电路硬件设计的实例化将响应于另一非负输入N′、D对生成与q和r具有预定关系的输出对q′、r′,其中,N和N′具有一个或更多个预定关系中的一个;以及输出指示所述特性是否已被成功验证的一个或更多个信号。第二方面提供了一种验证用于实现整数除法器的集成电路硬件设计的系统,该整数除法器被配置成接收分子N和分母D并输出商q和余数r,所述系统包括:一个或更多个处理器;和存储器,该存储器包括:形式验证工具;计算机可读指令,其当通过所述一个或更多个处理器执行时,使所述一个或更多个处理器:验证基本特性对于所述集成电路硬件设计为真,所述基本特性被配置成,验证所述集成电路硬件设计的实例化将响应于非负输入对的子集中的任何输入对N、D而生成正确输出对q、r;通过所述形式验证工具在形式上验证一个或更多个范围缩减特性针对所述集成电路硬件设计为真,所述一个或更多个范围缩减特性被配置成验证:如果所述集成电路硬件设计的实例化将响应于非负输入对N、D生成输出对q、r,则所述集成电路硬件设计的实例化将响应于另一非负输入对N′、D生成与q和r具有预定关系的输出对q′、r′,其中,N和N′具有一个或更多个预定关系中的一个;以及输出指示所述特性是否已被成功验证的一个或更多个信号。可以提供用于执行任何本文所述方法的计算机程序代码。可以提供存储有计算机可读指令的非暂时性计算机可读存储介质,该计算机可读指令当在计算机系统上执行时,使该计算机系统执行任何本文所述方法。上面的特征可以如技术人员所明白地进行恰当组合,并且可以与本文所述示例的任何方面相结合。附图说明下面,参照附图,对示例进行详细描述,其中:图1是实现整数除法的示例集成电路的示意图;图2是验证用于实现整数除法的集成电路硬件设计的示例系统的框图;图3是验证用于实现整数除法的集成电路硬件设计的示例方法的流程图;图4是示出二进制补码格式的示意图;图5是示出整数除法器的输入域的示意图;图6是示出二进制数N、2N和2N+1之间的关系的示意图;图7是示例基于计算的系统的框图;以及图8是生成用于实现整数除法的集成电路的示例集成电路制造系统的框图。附图示出了各种示例。技术人员应当清楚,图中所示的部件边界(例如,框、框组或其它形状)表示边界的一个示例。在一些示例中,可以将一个部件设计为多个部件,或者可以将多个部件设计为一个部件。贯穿这些图,在恰当地方使用共同的标号来表示相似的特征。具体实施方式下面的描述通过示例的方式呈现以使本领域技术人员能够制造和使用本专利技术。本专利技术不限于本文所述实施方式,并且本领域技术人员将明白针对所公开实施方式各种修改例。下面,仅通过示例的方式来对实施方式进行描述。如上所述,实现整数除法的集成电路100(例如,整数除法器)接收分子N和分母D作为输入,(经由硬件逻辑)执行N除以D(即,)的运算,并本文档来自技高网
...

【技术保护点】
1.一种验证用于实现整数除法器的集成电路硬件设计的计算机实现方法(300),该整数除法器被配置成接收分子N和分母D并输出商q和余数r,所述方法(300)包括以下步骤:在一个或更多个处理器中:验证所述集成电路硬件设计的基本特性(302),其中,验证基本特性的步骤验证所述集成电路硬件设计的实例化将响应于非负输入对的子集中的任何输入对N、D生成正确输出对q、r;通过形式验证工具在形式上验证所述集成电路硬件设计的一个或更多个范围缩减特性(304),其中,验证一个或更多个范围缩减特性的步骤验证:如果所述集成电路硬件设计的实例化将响应于非负输入对N、D生成输出对q、r,则所述集成电路硬件设计的实例化将响应于另一非负输入对N′、D生成与q和r具有预定关系的输出对q′、r′,其中,N和N′具有一个或更多个预定关系中的一个;以及输出指示所述特性是否已被成功验证的一个或更多个信号(312)。

【技术特征摘要】
2017.01.19 GB 1700919.21.一种验证用于实现整数除法器的集成电路硬件设计的计算机实现方法(300),该整数除法器被配置成接收分子N和分母D并输出商q和余数r,所述方法(300)包括以下步骤:在一个或更多个处理器中:验证所述集成电路硬件设计的基本特性(302),其中,验证基本特性的步骤验证所述集成电路硬件设计的实例化将响应于非负输入对的子集中的任何输入对N、D生成正确输出对q、r;通过形式验证工具在形式上验证所述集成电路硬件设计的一个或更多个范围缩减特性(304),其中,验证一个或更多个范围缩减特性的步骤验证:如果所述集成电路硬件设计的实例化将响应于非负输入对N、D生成输出对q、r,则所述集成电路硬件设计的实例化将响应于另一非负输入对N′、D生成与q和r具有预定关系的输出对q′、r′,其中,N和N′具有一个或更多个预定关系中的一个;以及输出指示所述特性是否已被成功验证的一个或更多个信号(312)。2.根据权利要求1所述的方法(300),所述方法还包括以下步骤,响应于指示至少一个特性没有被成功验证的所述一个或更多个信号,修改所述集成电路硬件设计。3.根据权利要求1所述的方法(300),所述方法还包括以下步骤,响应于指示所述特性被成功验证的所述一个或更多个信号,在集成电路制造系统处制造根据所述集成电路硬件设计的集成电路。4.根据权利要求1所述的方法(300),其中,N与N′之间的所述一个或更多个预定关系包括N′=N+D。5.根据权利要求1所述的方法(300),其中,N与N′之间的所述一个或更多个预定关系包括N′=N+1。6.根据权利要求1所述的方法(300),其中,N与N′之间的所述一个或更多个预定关系包括N′=2zN、2zN+1、2zN+2、…、2zN+(2z-1),其中,z是整数。7.根据权利要求6所述的方法(300),其中,z等于一。8.根据权利要求7所述的方法(300),其中,所述一个或更多个范围缩减特性包括:如果N′=2N并且2r<D,则r′=2r并且q′=2q;如果N′=2N并且2r≥D,则r′=2r-D并且q′=2q+1;如果N'=2N+1并且2r<D,则r′=2r+1并且q′=2q;以及如果N′=2N+1并且2r≥D,则r'=2r+1-D并且q′=2q+1。9.根据权利要求1所述的方法(300),其中,N与N′之间的所述一个或更多个预定关系包括N′=αN、αN+1、αN+2、…、αN+(α-1),其中,α是整数。10.根据权利要求5至9中的任一项所述的方法(300),其中,非负输入对的所述子集包括非负输入对N、D,其中N=0。11.根据权利要求10所述的方法(300),其中,所述基本特性是,响应于非负输入对的所述子集中的任何输入对,每一个输出对q、r都满足q=0并且r=0。12.根据权利要求1至9中的任一项所述的方法(300),其中,非负输入对的所述子集包括非负输入对N、D,其中N<D。13.根据权利要求12所述的方法(300),其中,所述基本特性是,响应于非负输入对的所述子集中的任何输入对,每一个输出对q、r都满足q=0并且r...

【专利技术属性】
技术研发人员:E·莫里尼S·艾利奥特
申请(专利权)人:想象技术有限公司
类型:发明
国别省市:英国,GB

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

1