用于集成电路硬件设计的故障注入测试的方法和系统技术方案

技术编号:32353999 阅读:12 留言:0更新日期:2022-02-20 03:10
本发明专利技术涉及用于集成电路硬件设计的故障注入测试的方法和系统。该方法包括:(a)接收识别所述硬件设计的一个或多个故障节点的原始故障节点列表;(b)接收指示所述原始故障节点列表中的故障节点分组成多个故障节点组的信息,每个故障节点组包括对所述硬件设计的失效模式具有相同影响的故障节点;(c)基于所述故障节点组生成最终故障节点列表;(d)从所述最终故障节点列表选择一组故障注入参数,所述一组故障注入参数识别所述最终故障节点列表中要发生故障的至少一个故障节点;(e)基于所选择的一组故障注入参数,通过使故障注入到所述硬件设计的仿真中,对所述硬件设计执行故障注入测试;(f)确定所述故障注入测试的结果。(f)确定所述故障注入测试的结果。(f)确定所述故障注入测试的结果。

【技术实现步骤摘要】
用于集成电路硬件设计的故障注入测试的方法和系统


[0001]本申请涉及用于执行集成电路硬件设计的故障注入测试的方法和系统。

技术介绍

[0002]生成集成电路(IC)通常包括开发描述集成电路的结构和/或功能的集成电路硬件设计;迭代地测试硬件设计的实例化并基于测试修改设计;以及基于硬件设计来制造集成电路。
[0003]通常,硬件设计的实例化中的失效可能由系统故障或随机故障引起。系统故障是以决定性方式发生的故障。这些故障通常由硬件设计本身或硬件制造中的错误引起。通常使用设计成根据设计的规范测试硬件设计的功能的技术来识别系统故障,例如基于仿真的验证和正式特性验证。相比之下,随机故障是在硬件设计的实例化操作期间发生的不可预测故障。随机故障被分类为永久性故障(例如,一旦出现,就不会消失的故障),这也可以被称为硬错误;和瞬态故障(例如,存在短时间的故障),这也可以被称为软错误。硬件设计可以实施一个或多个安全机制,该一个或多个安全机制被配置成检测此类故障,并且如果检测到,将硬件设计的实例化置于安全状态和/或通知实例化过程已发生故障。硬件设计如何处理随机故障通常通过故障注入测试来进行测试。故障注入测试是一种测试技术,其中故障被有意引入被测系统或装置中,以确定系统或装置如何响应此类故障。故障注入测试可用于评估硬件设计对随机故障的稳健性,并且验证安全机制(以及实现那些机制的安全逻辑)是否如预期的工作。
[0004]当进行故障注入测试时,期望尽可能接近现实世界的硅来仿真故障发生。然而,在硅或在现场可编程门阵列(FPGA)中进行故障注入测试不仅耗时且昂贵,而且调试和再现也极其困难。因此,故障注入测试通常通过将错误注入到合成的网表中而在门级(例如,经由门级仿真(GLS))执行。
[0005]下面描述的实施例仅以举例的方式提供,并且不限制解决集成电路硬件设计的故障注入测试的已知方法和系统的任何或所有缺点的实现方式。

技术实现思路

[0006]提供本
技术实现思路
是为了介绍在以下详细描述中进一步描述的一些概念。本
技术实现思路
不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。
[0007]本文中描述了用于对集成电路硬件设计执行故障注入测试的方法和系统。所述方法包括:(a)接收识别用于所述硬件设计的一个或多个故障节点的原始故障节点列表;(b)接收指示所述原始故障节点列表中的一个或多个故障节点分组成多个故障节点组的信息,每个故障节点组包括对所述硬件设计的失效模式具有相同影响的故障节点;(c)基于所述故障节点组生成最终故障节点列表;(d)基于所述最终故障节点列表选择一组故障注入参数,所述一组故障注入参数识别所述最终故障节点列表中要发生故障的至少一个故障节
点;(e)根据所选的一组故障注入参数,通过使故障注入到所述硬件设计的仿真中,对所述硬件设计执行故障注入测试;(f)确定所述故障注入测试的结果;(g)存储所述故障注入测试的结果;以及重复(d)到(g)至少一次。
[0008]第一方面提供一种对集成电路硬件设计执行故障注入测试的计算机实施的方法,所述方法包括:(a)接收识别所述硬件设计的一个或多个故障节点的原始故障节点列表;(b)接收指示所述原始故障节点列表中的一个或多个故障节点分组成多个故障节点组的信息,每个故障节点组包括对所述硬件设计的失效模式具有相同影响的故障节点;(c)基于所述故障节点组生成最终故障节点列表;(d)基于所述最终故障节点列表选择一组故障注入参数,所述一组故障注入参数识别所述最终故障节点列表中要发生故障的至少一个故障节点;(e)根据所选的一组故障注入参数,通过使故障注入到所述硬件设计的仿真中,对所述硬件设计执行故障注入测试;(f)确定所述故障注入测试的结果;(g)存储所述故障注入测试的结果;以及重复(d)到(g)至少一次。
[0009]选择一组故障注入参数可包括选择所述多个故障节点组中的故障节点组,以及从所选择的故障节点组中选择一个或多个故障节点。
[0010]可以选择所选择的故障节点组中的一个或多个故障节点,使得未选择用于故障注入测试的所选择的故障节点组的故障节点比已经选择用于故障注入测试的所选择的故障节点组的故障节点更有可能被选择。
[0011]选择一组故障注入参数还可包括从所述故障注入测试的结果确定所选择的故障节点组的哪些故障节点尚未被选择用于故障注入测试,并且随机选择尚未被选择用于故障注入测试的所选择的故障节点组的故障节点中的一个。
[0012]可以选择所述多个故障节点组中的故障节点组,使得已选择用于故障注入测试的故障节点组的次数越少,所述故障节点组被选择的可能性越大。
[0013]选择一组故障注入参数还可包括从所述故障注入测试的结果确定已经被选择用于故障注入测试最少次数的所述多个故障节点组中的哪些故障节点组,并且随机选择已经被选择用于故障注入测试最少次数的所述故障节点组中的一个。
[0014]当所述故障注入测试是单点故障测试时,从所选择的故障节点组选择一个或多个故障节点可包括从所选择的故障节点组选择单个故障节点。
[0015]每个故障节点组可以与失效模式相关联。每个失效模式可以与在所述硬件设计中实施的安全机制相关联。当所述故障注入测试是双点故障测试时,选择所选择的故障节点组的一个或多个故障节点可包括:选择所选择的故障节点组中的第一故障节点,所述第一故障节点形成实施用于相关联失效模式的安全机制的安全逻辑的一部分;以及第二故障节点,所述第二故障节点不形成实施用于相关联失效模式的安全机制的安全逻辑的一部分。
[0016]选择一组故障注入参数还可包括选择以下中的一者或多者:待注入故障的时间、故障的持续时间以及故障是0还是1。
[0017]所述方法还可包括从用于仿真所述硬件设计的切换覆盖率信息生成所述原始故障节点列表。
[0018]所述切换覆盖率信息可以识别一个或多个切换元件并且从所述切换覆盖率信息生成所述原始故障节点列表可包括将所述切换覆盖率信息中识别的每个切换元件作为故障节点添加到所述原始故障节点列表。
[0019]所述方法还可包括从所述硬件设计的仿真生成所述切换覆盖率信息。
[0020]所述原始故障节点列表中的每个故障节点可形成无故障节点组、一个或多于个一故障节点组的一部分,并且从所述故障节点组生成所述最终故障节点列表可包括将形成至少一个故障节点组的一部分的每个故障节点添加到所述最终故障节点列表。
[0021]所述最终故障节点列表可包括用于所述最终故障节点列表中的每个故障节点的条目,所述最终故障节点列表中的每个条目可包括识别故障节点的信息和识别所述故障节点形成其一部分的一个或多个故障节点组的信息。
[0022]每个失效模式可以与在所述硬件设计中实施的安全机制相关联,并且所述最终故障节点列表中的每个条目还可包括识别与所述故障节点形成其一部分的所述一个或多个故障节点组相关联的失效模式的信息和/或对于所述故障节点形成其一部分的每个故障节点组指示所述故障节点是否形成实施用本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种对集成电路硬件设计执行故障注入测试的计算机实施的方法(100),所述方法(100)包括:(a)接收识别所述硬件设计的一个或多个故障节点的原始故障节点列表(102);(b)接收指示所述原始故障节点列表中的一个或多个故障节点分组成多个故障节点组的信息,每个故障节点组包括对所述硬件设计的失效模式具有相同影响的故障节点(104);(c)基于所述故障节点组生成最终故障节点列表(106);(d)基于所述最终故障节点列表选择一组故障注入参数,所述一组故障注入参数识别所述最终故障节点列表中要发生故障的至少一个故障节点(108);(e)根据所选择的一组故障注入参数,通过使故障注入到所述硬件设计的仿真中,对所述硬件设计执行故障注入测试(110);(f)确定所述故障注入测试的结果(112);(g)存储所述故障注入测试的结果(114);以及重复(d)到(g)至少一次。2.根据权利要求1所述的方法(100),其中选择一组故障注入参数包括选择所述多个故障节点组中的故障节点组,以及从所选择的故障节点组中选择一个或多个故障节点。3.根据权利要求2所述的方法(100),其中选择所选择的故障节点组中的一个或多个故障节点,使得未选择用于故障注入测试的所选择的故障节点组的故障节点比已经选择用于故障注入测试的所选择的故障节点组的故障节点更有可能被选择。4.根据权利要求3所述的方法(100),其中选择一组故障注入参数还包括从所述故障注入测试的结果确定所选择的故障节点组的哪些故障节点尚未被选择用于故障注入测试,并且随机选择尚未被选择用于故障注入测试的所选择的故障节点组的故障节点中的一个。5.根据权利要求2所述的方法(100),其中选择所述多个故障节点组中的故障节点组,使得已选择用于故障注入测试的故障节点组的次数越少,所述故障节点组被选择的可能性越大。6.根据权利要求2所述的方法(100),其中当所述故障注入测试是单点故障测试时,从所选择的故障节点组选择一个或多个故障节点包括从所选择的故障节点组选择单个故障节点。7.根据权利要求2所述的方法(100),其中:每个故障节点组与失效模式相关联;每个失效模式与实施于所述硬件设计中的安全机制相关联;并且当所述故障注入测试是双点故障测试时,选择所选择的故障节点组的一个或多个故障节点包括:选择所选择的故障节点组中的第一故障节点,所述第一故障节点形成实施用于相关联失效模式的安全机制的安全逻辑的一部分;以及第二故障节点,所述第二故障节点不形成实施用于相关联失效模式的安全机制的安全逻辑的一部分。8.根据权利要求2所述的方法(100),其中选择一组故障注入参数还包括选择以下中的一者或多者:待注入故障的时间、故障的持续时间以及故障是0还是1。9.根据权利要求1所述的方法(100),其还包括从用于仿真所述硬件设计的切换覆盖率信息生成所述原始故障节点列表。10.根据权利要求9所述的方法(100),其中所述切换覆盖率信息识别一个或多个切换
元件并且从所述切换覆盖率信息生成所述原始故障节点列表包括将所述切换覆盖率信息中识别的每个切换元件作为故障节点添加到所述原始故障节点列表。11.根据权利要求9所述的方法(100),其还包括从所述硬件设计的仿真生成所述切换覆盖率信息。12.根据权利要求1至11中任一项所述的方法(100),其中所述原始故障节点列...

【专利技术属性】
技术研发人员:R
申请(专利权)人:想象技术有限公司
类型:发明
国别省市:

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

1