专利名称:一种故障诊断系统及方法
技术领域:
本发明涉及大规模数字集成电路,尤其涉及一种故障诊断系统及方法。
背景技术:
近年来,随着工艺尺度的不断縮小,集成电路的设计开始步入深亚微米和超亚微米工艺阶段。然而,虽然工艺尺寸的不断縮小可以使得芯片的性能得到提升,但生产出来的芯片的缺陷密度也不断增加,这使得量产学习过程变得更加复杂。对于集成电路生产厂商来说,为了使得芯片能够更快的投入市场,从而为厂商谋取利润,快速的量产学习是至关重要的。从20世纪60年代起,故障诊断在快速量产学习过程中便扮演着不可忽视的角色。
故障诊断在不改变芯片硬件设计的基础上,利用存在缺陷的芯片的失效响应,使用软件的方法,对此芯片进行故障诊断,为进一步的物理故障分析提供高精确度高分辨率的故障候选位置,其中精确度指被诊断出来的真实故障数目占总的真实故障数目的百分比,而分辨率指平均多少个最终候选故障位置中有一个真实故障数目,前者的期望值为100%,即通过故障诊断可以发现所有的真实故障位置,后者的期望值为l,即每个最终候选故障位置都是一个真实的故障位置。 故障诊断的主要方法分为两类原因_结果诊断方法和结果_原因诊断方法。原因_结果诊断方法根据使用的故障模型为每一个有可能发生故障的位置建立故障字典,在诊断过程中利用失效响应通过查阅故障字典,找到有可能引起失效的故障位置。然而,随着电路集成度的增加,这种需要建立庞大的故障字典的诊断方法逐渐退出了故障诊断的舞台。结果-原因诊断方法从失效响应出发,根据电路结构进行回推以縮小候选故障的数目,再配合特定的评估方法找到最有可能发生故障的位置,该方法是当今普遍使用和研究的诊断方法。 传统的故障诊断方法的不足主要表现在以下两个方面 —、在传统的故障诊断方法中,芯片被假设只有一个故障,然而随着工艺尺寸的不断縮小,实际芯片中往往可能存在多个故障,即单故障假设并不总是成立的。当多个故障存在时,故障之间有可能发生屏蔽和增强作用,如图la和图lb所示。图la和图lb中的电路有三个输入abc,两个输出gh,输入向量为abc(001),无故障时输出为gh(00)。如图la,当电路中只存在一个故障使得b的逻辑值变为1 (b/1),则该故障的效应只能通过路径beh传播到输出h。若电路中还有另外两个故障a/l和c/0存在,如图lb,则b/1因为c/0的屏蔽作用而不能传播到输出h,而因为a/1的增强作用可以传播到g,这便是多故障的屏蔽与增强作用。由于这种屏蔽与增强作用的存在,基于单故障假设的传统故障诊断方法不能很好的诊断多故障情况。 二、在传统的故障诊断方法中,往往需要于对故障模型进行假设,然而,现有的故障模型并不能准确描述所有缺陷的行为,而且即使能够准确的描述所有缺陷的行为,也不可能在找到真正的缺陷之前,预先知道应该选取什么样的故障模型进行描述。因此,基于故障模型的传统故障诊断方法不能很好的诊断未知故障模型的情况。
4
为解决基于单故障假设以及基于故障模型假设的传统诊断方法的这两个不足,目前已有两类可行方案。第一类方案通过增用特定的诊断向量以达到高精度的诊断结果,第二类方案仍采用已有的测试向量的失效响应,但通过使用不同于传统诊断方法的诊断技术,得到精确的诊断结果。 在第一类方案中,在测试阶段结束并发现芯片中存在故障后,对这些已得到的失效响应进行分析,然后根据分析结果生成一些特定的具有诊断能力的向量,并将其再次加载到芯片上得到新的失效响应,最后通过分析这些新的失效响应得到更加准确的故障候选位置。由于和测试向量相比,这些特定的诊断向量,可以针对多种具体的故障模型生成,并能尽量减小多故障屏蔽和增强作用,因此拥有更高的诊断能力,使得这类方案的诊断结果往往具有高准确度和高分辨率。然而,由于对芯片再次加载诊断向量需要一定的开销,因此在量产阶段,生产厂商往往希望只利用测试向量的失效响应进行诊断,而不使用新的诊断向量。 在第二类方案中,诊断过程只利用测试向量的失效输出,而不加载新的向量,并且诊断方法主要属于结果-原因诊断方法。在这些方法中,首先使用回推技术縮小故障候选位置的数目,然后主要通过三种方法从中筛选最有可能发生故障的位置。第一种方法对多故障进行故障模拟,并对有可能发生故障的位置赋X值以减少对故障模型的依赖,通过比较失效响应与故障模拟得到的结果,找到最有可能发生故障的位置。这种方法虽然可以通过故障模拟准确的分析多故障的屏蔽和增强作用,但是时间消耗大。第二种方法,利用一些可以由单个故障解释失效响应的测试向量(如果单个或多个故障的失效响应与某个失效向量的失效响应完全相同,称这个或这些故障可以解释此失效向量),将多故障诊断问题转化为单故障诊断问题进行诊断,由此绕开多故障屏蔽和增强作用。然而,由于这样的测试向量有可能并不存在,因此,这种方法并不能被广泛使用。第三种方法,通过评估每一个故障候选位置能够传播到输出的可能性来筛选故障候选位置。然而,由于这种评估方法只分析了存在其它故障时,一个故障能够传播出去的可能性,并没有分析在存在其它故障时,其对别的故障传播出去的影响,因此该评估并不够充分,使得诊断结果随着故障数目的增加,快速恶化。 因此,迫切地需要一种更好的故障诊断方法,能够针对多故障情况,在不依赖于故障模型的条件下,利用尽可能短的时间得到高准确度高分辨率的诊断结果。
发明内容
为了解决上述的技术问题,提供了一种故障诊断系统及方法,其目的在于,在没有任何面积和布线开销,不需要加载新的诊断向量的情况下对发生多个任意故障模型的组合逻辑故障进行诊断,并且不改变传统的组合逻辑故障诊断流程。 本发明提供了一种故障诊断方法,用于诊断出数字集成电路中的故障位置,包括 步骤l,为每个失效向量建立一个能够解释该失效向量的故障元组等价树;
步骤2,为故障元组等价树中的潜在故障打分; 步骤3,依据故障元组等价树中的潜在故障打分结果,从各潜在故障中选择最有可能是发生故障的位置加入最终候选故障位置集合;
步骤4,从故障元组等价树中删除与最终候选故障位置集合中的故障等价的或可
以被其解释的故障元组。
步骤l包括 步骤IO,得到由发生在每个失效输出上的潜在故障组成的初始故障元组; 步骤ll,追踪初始故障元组的逻辑锥,建立由逻辑锥内的潜在故障组成的故障元
组与初始故障元组的等价关系,从而针对每个失效向量建立相应的故障元组等价树。
步骤2中,按照以下规则为故障元组等价树中的潜在故障打分两个完全等价的
故障元组取得完全相同的分数;计算一个故障元组中各个潜在故障的得分时,各个潜在故
障得分相同。
所述步骤3包括 步骤30,选择故障元组等价树中得分最高的潜在故障组成一个集合; 步骤31,在该集合中选择出现次数最多的潜在故障加入最终候选故障位置集合。
还包括步骤5 : 如果仍然有存在潜在故障的故障元组等价树,则对这些故障元组等价树执行步骤2-步骤4,直到所有故障元组等价树中的潜在故障都被删除。 本发明提供了一种故障诊断系统,用于诊断出数字集成电路中的故障位置,包括 故障元组等价树建造模块,用于为每个失效向量建立一个能够解释该失效向量的故障元组等价树; 故障元组等价树打分模块,用于为故障元组等价树中的潜在故障打分; 候选故障选择模块,用于依据故障元组等价树中的潜在故障打分结果,从各潜在
故障中选择最有可能是发生故障的位置加入最终候选故障位置集合; 故障元组等价树剪枝模块,用于从故障元组等价树中删除与最终候选故障位置集合中的故障等价或可以被其解释的故障元组。 故障元组等价树建造模块,用于得到由发生在每个失效输出上的潜在故障组成的
初始故障元组;追踪初始故障元组的逻辑锥,建立由逻辑锥内的潜在故障组成的故障元组
与初始故障元组的等价关系,从而针对每个失效向量建立相应的故障元组等价树。 故障元组等价树打分模块,用于按照以下规则为故障元组等价树中的潜在故障打
分两个完全等价的故障元组取得完全相同的分数;计算一个故障元组中各个潜在故障的
得分时,各个潜在故障得分相同。
候选故障选择模块,用于选择故障元组等价树中得分最高的潜在故障组成一个集
合;在该集合中选择出现次数最多的潜在故障加入最终候选故障位置集合。 还包括再执行判断模块,用于在还有存在潜在故障的故障元组等价树时,调用故
障元组等价树打分模块、候选故障选择模块和故障元组等价树剪枝模块,直到每个故障元
组等价树中的潜在故障都被删除。 与现有技术相比,本发明能够达到的技术效果包括 1、利用本发明提供的建立故障元组等价关系树的方法,通过为每一个失效向量快速的建立潜在故障组成的故障元组之间的等价关系,很好的分析了多故障存在时的屏蔽与增强作用。
2、利用本发明提供的故障元组等价关系树打分的方法,由于打分的过程基于故障元组等价关系树的结构,充分的考虑了潜在故障之间的屏蔽与增强作用,有效的评估了各个潜在故障对解释失效向量的作用,包括对其它故障的传播的屏蔽与增强作用,以及被其它故障所屏蔽与增强的可能。 3、利用本发明提供的故障选择方法,由于在打分过程中充分的考虑了多故障之间的屏蔽和增强作用,利用得到的分数可以选出对解释失效向量有最大能力的潜在故障,大大提高了故障诊断的精度。 4、利用本发明提供的故障元组等价关系树减枝的方法,可以快速的得到已选故障
解释失效向量的能力,从而为下一次迭代能够精确的选择出故障打下良好的基础。 5、利用本发明的诊断方法,由于在建立潜在故障等价树、对潜在故障打分以及选
择的诊断过程中不关心引起潜在故障的条件或情况,因此不需要对组合逻辑的故障模型进
行假设; 6、在没有任何面积和布线开销,不需要加载新的诊断向量的情况下对发生多个任意故障模型的组合逻辑故障进行诊断,并且不改变传统的组合逻辑故障诊断流程。
图la-图lb为多故障屏蔽和增强作用示例; 图2a_图2d为本发明提供的任意故障模型的组合逻辑多故障诊断系统模块示意图; 图3为本发明提供的任意故障模型的组合逻辑多故障诊断方法流程示意 图4a_图4e为本发明提供的任意故障模型的组合逻辑多故障诊断示例。
具体实施例方式
为实现上述发明目的,本发明提供的一种任意故障模型的组合逻辑多故障诊断系统,包括故障元组等价树建造模块,故障元组等价树打分模块,候选故障选择模块,以及故障元组等价树减枝模块(故障元组指由一个或多个故障组成的故障集合),如图2a_图2d所示,其中 所述故障元组等价树建造模块,通过分析一个失效向量的失效响应,为其建立一个故障元组等价树(如果两个不同的故障或故障元组在某个向量下的失效响应是完全相同的,我们认为这两个故障或故障元组是等价的),该模块读入电路结构,失效向量以及其失效响应,生成故障元组等价树。; 所述故障元组等价树打分模块,为一个故障元组等价树中的每一个潜在故障打分,该模块读入故障元组等价树,生成所有潜在故障的分数; 所述候选故障选择模块,根据各个潜在故障在所有故障元组等价树中的分数,选出最有可能发生故障的位置作为最终候选故障位置,该模块读入潜在故障的分数,生成一个或多个最有可能发生故障的位置; 所述故障元组等价树减枝模块,从一个故障元组等价树中去掉与某个或多个特定故障等价的或可以由该个或该些特定故障解释的所有故障元组(如果在某个向量下,一个故障A的失效响应包含了另一个故障B的失效响应,则称故障A可以解释故障B),该模块读入一个故障元组等价树和若干个需要删除的故障,生成新的故障元组等价树。 还包括再执行判断模块,用于在还有存在潜在故障的故障元组等价树时,调用故
障元组等价树打分模块、候选故障选择模块和故障元组等价树剪枝模块,直到每个故障元
组等价树中的潜在故障都被删除。 假设共有n个失效向量,为实现上述发明目的,本发明提供了一种任意故障模型的组合逻辑多故障诊断方法,如图3所示,步骤如下 A、为每个失效向量建立一个能够解释该向量的故障元组等价树; B、为存在潜在故障的故障元组等价树中的潜在故障打分以评估它们解释失效向
量的能力; C、根据所有潜在故障的得分,从所有潜在故障中选择最有可能发生故障的位置加入最终候选故障位置集合; D、从存在潜在故障的故障元组等价树中删除所有与最终候选故障位置集合中的故障等价的或可以被其解释的故障元组; E、如果仍有故障元组等价树存在潜在故障,继续步骤B直到根据最终候选故障位
置集合对故障元组等价树进行删减后,所有故障元组等价树的故障元组都被删除。 上述技术方案中,所述步骤A中,建立故障元组等价树的方法包括 Al、将所有发生在失效输出上的潜在故障组成一个初始故障元组,该初始故障元
组显然可以解释该失效向量; A2、追踪初始故障元组中所有潜在故障的逻辑锥,建立逻辑锥中的潜在故障构成的故障元组与初始故障元组之间的等价关系。由于初始故障元组可以解释失效向量,因此一旦得到了与其等价的故障元组,即得到了可以解释失效向量的其它故障元组。
所述步骤A2包括两种情况 情况1、如果在建立潜在故障元组之间的等价关系的过程中,追踪到一个发生在某个门的输出上的潜在故障,并且发生这个潜在故障的位置并非一个扇出源的某一个扇出,则根据这个门的输入及输出在无故障情况下的逻辑值,建立由发生在输入上的潜在故障构成的故障元组与发生在这个门的输出上的潜在故障之间的等价关系,并进一步追踪发生在输入上的潜在故障; 情况2、如果在建立潜在故障元组之间的等价关系的过程中,追踪到一个发生在某个扇出源的一个扇出上的潜在故障,那么为了建立发生在扇出上的潜在故障与发生在扇出源上的潜在故障之间的等价关系,主要进行如下两点考虑 考虑1、若所有发生在该扇出源的扇出上的潜在故障都会被追踪到,那么发生在扇出源上的潜在故障等价于由发生在所有该扇出源的扇出上的潜在故障组成的故障元组,并进一步追踪发生在扇出源上的潜在故障; 考虑2、若存在至少一个发生在该扇出源的扇出上的潜在故障不会被追踪到,那么对发生在扇出源上的潜在故障以及对由发生在所有被追踪到的扇出上的潜在故障构成的故障元组执行故障模拟,以进行如下两点考虑 考虑21、若故障模拟的结果表明它们的故障响应完全相等,则发生在扇出源上的潜在故障等价于由发生在所有被追踪到的扇出上的潜在故障构成的故障元组,并进一步追踪发生在扇出源上的潜在故障;
8
考虑22、若故障模拟的结果表明他们的故障响应并不相等,则需要另外寻找一些 潜在故障,使得被寻找到的潜在故障与发生在所有被追踪到的扇出上的潜在故障组成的故 障元组等价于发生在扇出源上的潜在故障,从而进一步追踪发生在扇出源上的潜在故障。
上述技术方案中,所述步骤B中,根据故障元组等价树中存在的各个故障元组之 间的等价关系为所有的潜在故障打分。如果故障元组等价树中存在N个失效输出,那么每 个发生在失效输出的故障得分为1/N。在为与这些发生在失效输出的故障的等价故障元组 打分的过程中,坚持以下两个原则 原则1、两个完全等价的故障元组取得完全相同的分数; 原则2、计算一个故障元组中各个潜在故障的得分时,各个潜在故障得分完全相 同。 上述技术方案中,所述步骤C中,根据各个故障在每个故障元组等价树中的得分, 选出最有可能存在故障的潜在故障位置作为最终候选故障位置,并加入最终候选故障位置 集合中,选择的方法包括 Cl、选出每一个故障元组等价树中得分最高的潜在故障,组成一个故障集合;
C2、在步骤Cl得到的故障集合中,出现次数最多的故障被认为是最有可能出现故 障的潜在故障位置。 上述技术方案中,所述步骤D中,将所有与最终候选故障位置集合中的潜在故障 等价的或可以被其解释的故障元组从所有故障元组等价树中删除。如果一个故障元组等价 树的所有故障元组都被删除,表示最终候选故障位置集合中的所有故障组成的故障元组能 够完全解释这个失效向量。 上述技术方案中,所述步骤E中,判断是否在步骤D对故障元组等价树进行删减 后,还有存在潜在故障没被删除的故障元组等价树,即存在没被最终故障候选位置集合中 的所有故障组成的故障元组解释的失效向量,如果存在,则进入步骤B。因为部分故障元组 等价树已经在步骤D中删除了部分故障元组,因此通过重新打分,可以对剩下的各个潜在 故障进行重新评定,以得到更加精确的分数,使得下一次执行步骤C时能够选出更加准确 的结果。如果所有故障元组等价树的所有潜在故障都被删除,那么说明最终故障候选集合 中的所有故障组成的故障元组能够解释所有失效向量。 本发明为了解决多故障的屏蔽与增强作用,使用故障元组等价树来保存有可能解 释失效向量的故障元组之间的等价关系。因为潜在故障之间的组合太多,不可能通过遍历 的方法找到和分析所有故障元组之间的等价关系。因此,本发明首先找到一个由所有发生 在失效输出上的潜在故障组成的初始故障元组,这个故障元组显然能够解释该失效向量, 然后根据电路结构,追踪并建立与这些发生在失效输出上的潜在故障等价的潜在故障,以 快速建立起其它有可能解释失效输出的故障元组与初始故障元组之间的等价关系,从而建 立故障元组等价树。在建立的过程中,多故障的屏蔽与增强作用可以被很好的分析与判定。
另外,由于本发明对每一个失效向量分别分析,在分析过程中并不关心一个故障 是由什么引起的,因此可以完全独立于故障模型。 再者,基于故障元组等价树,对各个潜在故障的评分可以充分并且有效的考虑各 个潜在故障在存在其它故障的情况下对解释失效向量的能力,由此选出的故障候选位置也 就更加精确。因此,本发明可以实现对任意故障模型的组合逻辑多故障的诊断。
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图以及实施例,
对本发明的一种任意故障模型的组合逻辑多故障诊断系统及其方法进行进一步详细说明。
实施例1 如图4a_图4e所示,图4a所示是一个三输入abc,三输出klm的电路图,其被加载 测试向量abc (110),并在输出k和1上观察到两个失效响应。需要说明的是,在描述两个故 障元组是否等价时,特指在某个向量下而非任意向量下。在该实施例中,所述的两个故障元 组等价特指在向量abc(110)下,并非所有向量下。 在以下叙述中,为了描述方便,将若干故障用括号括起来,表示由该若干故障组成 的故障元组,例如(k/l, 1/1)表示由k/1和1/1组成的故障元组。在图4a_图4e中,将每 个潜在故障写在一个圆内。如果两个故障等价,则用"="将圆相连,例如图4b中描述k/1 等价于g/1的画法。如果一个故障与一个故障元组等价,则先将组成故障元组的故障所在 的圆用"+ "相连,然后用"="将单个故障所在的圆与"+ "相连,例如图处中描述i/l等价 于(c/l,m/0)的画法。 以下,将根据图3所描述的一种任意故障模型的组合逻辑多故障诊断方法,利用 图2a_图2d所描述的一种任意故障模型的组合逻辑多故障诊断系统,详细叙述对图4a中 的组合电路进行诊断的流程。 首先,由于本实施例只有一个向量abc(110),因此根据所述步骤A,为该失效向量 建立潜在故障元组等价树,该步骤可由故障元组等价树建造模块完成。 根据所述步骤Al找到由发生在失效输出上的潜在故障组成的初始故障元组,即 (k/1, 1/1)。然后追踪k/1与1/1的逻辑锥以建立潜在故障之间的等价关系,即执行所述步 骤A2 : 追踪潜在故障位置k,为所述步骤A2的情况1,根据无故障时a、 g和k的逻辑值, 得出k/1等价于g/l,进而追踪潜在故障位置g ; 追踪潜在故障位置1,为所述步骤A2的情况l,根据无故障时h, i和1的逻辑值, 得出1/1等价于(h/1, i/l),进而追踪潜在故障位置h和i ; 追踪潜在故障位置g,为所述步骤A2的情况2,由于扇出源f的两个扇出g禾P h者P 被追踪,因此为所述步骤A2的情况2的考虑l,得出(g/l, h/1)等价于f/l,进而追踪潜在 故障位置f ; 追踪潜在故障位置i,为所述步骤A2的情况2,由于扇出源c的两个扇出中只有i 被追踪,因此为所述步骤A2的情况2的考虑2,通过对c/1与i/1的故障模拟,得到c/1不 等价于i/1,因此为所述步骤A2的情况2的考虑22,可以寻找到m/0、 j/0或e/0使得(i/1, m/0) 、 (i/l, j/0)或(i/l, e/0)等价于c/l,进而追踪潜在故障位置c与e ;
追踪潜在故障位置f,为所述步骤A2的情况l,根据无故障时d与f的逻辑值,得 出f/1等价于d/0,进而追踪潜在故障位置d ; 追踪潜在故障位置d,为所述步骤A2的情况2,由于扇出源的两个扇出d和e都被 追踪到,因此为所述步骤A2的情况2的考虑l,得出(d/0, e/0)等价于b/0,进而追踪潜在 故障位置b ; 追踪潜在故障位置b,因为b为电路输入,其再无逻辑锥,追踪停止。
追踪潜在故障位置c,因为c为电路输入,其再无逻辑锥,追踪停止。
在步骤A2完成后,该失效向量的故障元组等价树的建立就完成了,如图4b所示。 通过步骤A2的执行过程,可以看到,对于多故障增强作用,例如图4b中的潜在故障b/0与 i/0之间存在的互相增强的作用,通过建立l/l等价于(h/0, i/0),可以将其很好的在故障 元组等价树中描述出来。对于多故障屏蔽作用,例如图4b中的潜在故障m/0对c/1的屏蔽 作用,可以通过建立i/l等价于(c/l,m/0),将其很好的在故障元组等价树中报述出来。因 此,通过建立故障元组等价树,可以准确的描述多故障存在时的屏蔽与增强作用。
然后,根据所述步骤B,为图4b中的故障元组等价树中的每一个潜在故障位置打 分,即评估其对解释失效向量abc(110)的能力,该步骤可由故障元组等价树打分模块完 成。执行步骤B如下 为k/1与1/1打分,由于k/1和1/1都发生在失效输出上,因此它们各得分数1/2 ;
为g/1打分,由于k/1等价于g/l,根据所述步骤B的原则l,g/l得到与k/1相同 的分数1/2 ; 为h/1与i/1打分,由于(h/l, i/1)等价于1/1,根据所述步骤B的原则1, (h/l, i/1)得到与1/1相等的分数1/2,再根据所述步骤B的原则2, b/1与i/1平分(h/l, i/1) 的分数,即各得1/4 ; 为f/1打分,由于f/1等价于(g/l,h/l),根据所述步骤B的原则1, f/1得到(g/l, h/1)的分数即3/4 ; 为c/l与m/0打分,由于(c/l,m/0)等价于i/l,根据所述步骤B的原则1, (c/l, m/0)得到与i/1相等的分数1/4,再根据所述步骤B的原则2, c/1与m/0平分(c/l, m/0) 的分数,即各得1/8 ; 为d/0打分,由于d/0等价于f/l,根据所述步骤B的原则l,d/0取得与f/1相同 的分数3/4 ; 为e/0打分,由于e/0等价于m/0,根据所述步骤B的原则1, e/0取得与m/0相同 的分数1/8 ; 为j/0打分,由于j/0等价于m/0,根据所述步骤B的原则1, j/0取得与m/0相同 的分数1/8 ; 为b/0打分,由于b/0等价于(d/0,e/0),根据所述步骤B的原则l,b/l得到(d/0, e/0)的分数即7/8。 在步骤B完成之后,故障元组等价树中所有潜在故障的得分就已计算完毕,如图 4c所示。通过步骤B的执行过程,可以看到,在评估各个潜在故障解释失效向量的能力时, 基于故障元组等价树所描述的等价关系,可以充分而有效的分析各个潜在故障解释失效 向量的能力,其中不仅评估了一个潜在故障被其它潜在故障所增强或屏蔽的可能,同时考 虑了其增强或屏蔽其它潜在故障的可能。例如图4c中的潜在故障b/0,其解释失效向量 abc(110)的能力,包括三个方面。 一是它可以完全解释实效输出k,二是它可以增强i/0传 播到输出1或被i/0增强以传播到输出l,三是它可以屏蔽c/1传播到输出m。这三方面的 能力都在b/0的得分中充分体现,因此根据故障元组等价树的打分方法充分有效的分析了 各个潜在故障解释失效向量的能力。 其次,根据步骤C,从所有潜在故障中选择最有可能发生故障的位置加入最终候选 故障位置集合,该步骤可由候选故障选择模块完成。根据步骤Cl,选出得分最高的潜在故障b/0,即该潜在故障解释失效向量abc(110)的能力最大。由于该实施例中,只存在一个 向量,因此不需要执行步骤C2。在步骤C完成之后,最终候选故障位置集合包括一个故障 b/0。 再次,根据步骤D,从故降元组等价树中去除与b/0等价或可以被b/0解释的故障 元组,该步骤可由故障元组等价树剪枝模块完成。如图4d,所有用虚线画出的潜在故障或 故障元组即与b/0等价或可以由b/0解释的故障或故障元组。在删除这些潜在故障后,剩 下的故障元组等价树如图4e所示。该步骤是整个诊断流程中必不可少的一个环节,因为当 判定了某个或多个最终故障位置后,该个或该些故障位置可能使得某些原本不等价的潜在 故障变为等价故障,如果不通过对故障元组等价树进行剪枝处理,很有可能因此而漏掉一 些真正存在故障的位置。例如图4c中1/1与i/1是不等价的,但在判定b/0为最终候选故 障位置后,可以发现,h即使不存在故障,其逻辑值也会因此而变成l,那么,此时1/1和i/1 对解释失效向量的能力正如图4e所示是完全相同的,即在判定b存在故障后,1/1等价于 i/1。因此对故障元组等价树进行剪枝的过程使得诊断更加准确。 最后,根据步骤E,由于故障元组等价树中还存在潜在故障,因此进入步骤B,对图 4e中的故障元组等价树再次进行打分、选择和删减。由于此时图4e中的故障元组等价树 仅仅剩下一个失效输出,因此1/1得分为l,在对另外两个潜在故障i/1和c/1打分的过程 中,由于它们与1/1完全等价,因此它们的得分也为1。由于1A, i/l与c/l得分相同,因 此都是最高分,所以都将加入最终候选故障位置集合,此时该集合包括四个故障b/0, 1/1, i/1与c/1。将这些故障从故障元组等价树中删除后,该故障元组等价树的所有潜在故障都 被删除,至此,对图4a中的组合逻辑电路的诊断结束,所得到的诊断结果即最终候选故障 位置集合中的所有故障。 本领域的技术人员在不脱离权利要求书确定的本发明的精神和范围的条件下,还 可以对以上内容进行各种各样的修改。因此本发明的范围并不仅限于以上的说明,而是由 权利要求书的范围来确定的。
1权利要求
一种故障诊断方法,用于诊断出数字集成电路中的故障位置,其特征在于,包括步骤1,为每个失效向量建立一个能够解释该失效向量的故障元组等价树;步骤2,为故障元组等价树中的潜在故障打分;步骤3,依据故障元组等价树中的潜在故障打分结果,从各潜在故障中选择最有可能是发生故障的位置加入最终候选故障位置集合;步骤4,从故障元组等价树中删除与最终候选故障位置集合中的故障等价的或可以被其解释的故障元组。
2. 如权利要求1所述的故障诊断方法,其特征在于,步骤1包括步骤IO,得到由发生在每个失效输出上的潜在故障组成的初始故障元组;步骤ll,追踪初始故障元组的逻辑锥,建立由逻辑锥内的潜在故障组成的故障元组与初始故障元组的等价关系,从而针对每个失效向量建立相应的故障元组等价树。
3. 如权利要求1所述的故障诊断方法,其特征在于,步骤2中,按照以下规则为故障元组等价树中的潜在故障打分两个完全等价的故障元组取得完全相同的分数;计算一个故障元组中各个潜在故障的得分时,各个潜在故障得分相同。
4. 如权利要求1所述的故障诊断方法,其特征在于,所述步骤3包括步骤30,选择故障元组等价树中得分最高的潜在故障组成一个集合;步骤31,在该集合中选择出现次数最多的潜在故障加入最终候选故障位置集合。
5. 如权利要求1所述的故障诊断方法,其特征在于,还包括步骤5 :如果仍然有存在潜在故障的故障元组等价树,则对这些故障元组等价树执行步骤2-步骤4,直到所有故障元组等价树中的潜在故障都被删除。
6. —种故障诊断系统,用于诊断出数字集成电路中的故障位置,其特征在于,包括故障元组等价树建造模块,用于为每个失效向量建立一个能够解释该失效向量的故障元组等价树;故障元组等价树打分模块,用于为故障元组等价树中的潜在故障打分;候选故障选择模块,用于依据故障元组等价树中的潜在故障打分结果,从各潜在故障中选择最有可能是发生故障的位置加入最终候选故障位置集合;故障元组等价树剪枝模块,用于从故障元组等价树中删除与最终候选故障位置集合中的故障等价或可以被其解释的故障元组。
7. 如权利要求6所述的故障诊断系统,其特征在于,故障元组等价树建造模块,用于得到由发生在每个失效输出上的潜在故障组成的初始故障元组;追踪初始故障元组的逻辑锥,建立由逻辑锥内的潜在故障组成的故障元组与初始故障元组的等价关系,从而针对每个失效向量建立相应的故障元组等价树。
8. 如权利要求6所述的故障诊断系统,其特征在于,故障元组等价树打分模块,用于按照以下规则为故障元组等价树中的潜在故障打分两个完全等价的故障元组取得完全相同的分数;计算一个故障元组中各个潜在故障的得分时,各个潜在故障得分相同。
9. 如权利要求6所述的故障诊断系统,其特征在于,候选故障选择模块,用于选择故障元组等价树中得分最高的潜在故障组成一个集合;在该集合中选择出现次数最多的潜在故障加入最终候选故障位置集合。
10. 如权利要求6所述的故障诊断系统,其特征在于,还包括再执行判断模块,用于在还有存在潜在故障的故障元组等价树时,调用故障元组等价树打分模块、候选故障选择模块和故障元组等价树剪枝模块,直到每个故障元组等价树中的潜在故障都被删除。
全文摘要
本发明涉及一种故障诊断系统及方法。该故障诊断方法,用于诊断出数字集成电路中的故障位置,包括步骤1,为每个失效向量建立一个能够解释该失效向量的故障元组等价树;步骤2,为故障元组等价树中的潜在故障打分;步骤3,依据故障元组等价树中的潜在故障打分结果,从各潜在故障中选择最有可能是发生故障的位置加入最终候选故障位置集合;步骤4,从故障元组等价树中删除与最终候选故障位置集合中的故障等价的或可以被其解释的故障元组。本发明在没有任何面积和布线开销,不需要加载新的诊断向量的情况下对发生多个任意故障模型的组合逻辑故障进行诊断,并且不改变传统的组合逻辑故障诊断流程。
文档编号G06F17/50GK101710359SQ20091023706
公开日2010年5月19日 申请日期2009年11月3日 优先权日2009年11月3日
发明者叶靖, 李晓维, 胡瑜 申请人:中国科学院计算技术研究所