突变测试中对突变、测试用例、随机种子的组合排序的方法和设备的制造方法_3

文档序号:9579267阅读:来源:国知局
是3。然后再对不同 的测试用例,每个测试用例都执行预定次数的电路仿真,得到每次仿真对应的一个随机种 子,以及每个突变在该测试用例下的激活周期数。例如,对于表1所示的例子,在第一次电 路仿真中,对标识为0和6的组合进行仿真,得到随机种子0x52b3487f以及两个激活周期 数;在第二次电路仿真中,对标识为1和7的组合进行仿真,得到随机种子〇X9837abcf以 及两个激活周期数;在第三次电路仿真中,对标识为2和8的组合进行仿真,得到随机种子 〇Xab48dce9以及两个激活周期数;以此类推,一共要进行6次电路仿真,得到6个随机种子 和12个激活周期数。电路仿真时需要的随机种子,可以由用户输入;如果没有输入随机种 子,仿真平台就自动生成一个随机种子。激活周期数越大,则说明该突变、测试用例、随机种 子的组合越有可能对待测试集成电路造成影响,从而应该给予更高的排序优先级。
[0044] 在同样的突变和同样的测试用例组合中,若使用不同的随机种子所得到的激活 周期数的变化非常大,那么应该给予该突变、测试用例、随机种子的组合更高的排序优先 级。这是因为该情况说明对于测试用例和突变来说,该随机种子所触发的情况是异常情况 (Abnormal),能够给功能验证平台提供更大的测试压力,因此应该给予更高的排序优先级。 该变化情况可以通过步骤S204计算相同突变、相同测试用例、不同随机种子情况下对应的 所有激活周期数的方差(Deviation)来实现。如何计算若干值的方差是本领域技术人员公 知的,这里不再赘述。例如对于表1的例子,可以得到4个方差值。
[0045] 在步骤S205的根据突变与测试用例目标的信号之间的距离、突变、测试用例、随 机种子的组合对应的激活周期数、以及突变、测试用例的组合对应的激活周期数方差,对突 变、测试用例、随机种子的组合排序中,前面已经叙述,对突变、测试用例、随机种子的组合 排序的排序准则包括:距离越近(小),该组合应该被给予更高的优先级;激活周期数越大, 应该给予该组合更高的优先级;并且激活周期数的方差越大,该组合应该被给予更高的优 先级。在一种简单的实现方式中,可以使用以下公式来计算突变的优先级 :
[0046]
[0047] 其中,P",t,s为突变、测试用例和随机种子的组合对应的排序优先级;FS为静态距离 调节因子,取值范围为0-1之间的数;Fd为突变激活周期数调节因子,取值范围为0-1之间 的数;FD突变激活周期数方差调节因子,取值范围为0-1之间的数;d为突变与测试用例目 标的信号之间的距离;v为突变、测试用例和随机种子的组合对应的突变激活周期数;D为 突变和测试用例的组合对应的激活周期数方差;ctotal为仿真总周期数。这里F分别为不同 部分的调节因子,允许工程师根据具体的项目特点对不同部分所占的比例进行调节。根据 突变、测试用例、随机种子的组合排序的排序准则,计算组合的优先级的方法有多种,上述 公式仅为其中一种。本领域技术人员可以根据上述原则设计合适的组合优先级的计算方 法。
[0048]表1
[0049]
[0051] 表1给出了不同部分的调节因子均为1时使用上述公式计算出的对于每个组合的 排序优先级。可以根据该优先级的值对组合进行排序。
[0052] 在排序结果中,排序最高(0号标识)的为突变标号0、测试用例标号0和该特定随 机种子的组合,排序第二的(5号标识)为突变标号1,测试用例标号1和该特定随机种子的 组合,以此类推,按照组合的标识排序结果为:0、5、3、10、4、2、8、6、7、1、9、11。这样就可以按 照排序后的组合进行突变测试仿真。例如,如果只选择5个组合,则选择的标识号为:0、5、 3、10、4。在一种实施方式中,根据突变、测试用例、随机种子的组合的排序以及测试要求,选 择部分突变、测试用例、随机种子的组合;以及使用选择的突变、测试用例、随机种子的组合 对编译后的待测试集成电路进行突变仿真。在仿真过程中,突变被使能。
[0053] 如果产生的突变在逻辑上与某个输出信号相关,那么该输出信号成为该突变的目 标点。如果突变激活了,那么期望该目标点的行为也发生变化,即也被激活。总体来看,如 果对突变、测试用例以及随机种子的组合的排序得当,那么电路仿真后,会观察到总的测试 用例目标的激活周期数,和总的突变的激活周期数非常接近。通过他们之间的比例,可以定 量地确定当前排序的质量。基于这个理念,在一种优选的实施方式中,可以通过如下公式确 定上述组合排序的质量。
[0054]
[0055」其屮选择的组合是指对哭变、测试用例、随机柙于的组合排序后选择进仃哭变测 试的突变、测试用例、随机种子的组合,例如对于表1中,就是指标识号为:053104的组合。 每个组合具有至少一个相关的测试用例目标,当有多于一个相关的测试用例目标时,要通 过控制数据流图得到该突变所对应的全部测试目标的信号的个数,作为相关的测试用例目 标个数。具体通过控制数据流图得到该突变所对应的全部测试目标的信号的个数是本领域 技术人员的常用知识,这里不再赘述。假设组合0、5、3、10、4对应的相关的测试用例目标个 数分别为1,2, 3,4, 5,6,则对0号组合激活并使能突变后使用随机种子0X52b3487f进行突 变仿真,可以得到每个测试用例目标对应的该组合相关的测试用例目标激活周期数,例如 对于5号组合,根据上面的假设,有两个测试用例目标,假设突变仿真得到的该组合相关的 测试用例目标激活周期数分别为A和B,则在上式的分子中将A+B的和记入,同样,对于其 他组合也是类似的,这样,分子中一共有1+2+3+4+5+6 = 21个不同的组合相关的测试用例 目标激活周期数相加得到的和。分母中的"与选择的组合相关的测试用例目标个数"为21, "选择的组合激活周期数"是表1中上述6个组合的突变激活周期数的列中的每个数的平均 值。具体来说,Qp越大,选择的组合越合适,也就是排序的质量越高。具体本领域技术人员 可以根据经验,为Qp设定一个阈值,只有满足阈值条件的Qp对应的组合对应的排序才被接 受,否则,需要重新排序。
[0056] 在同一个发明构思下,本发明还公开了一种突变测试中对突变、测试用例、随机种 子的组合排序的设备,图7示出了一种突变测试中对突变、测试用例、随机种子的组合排 序的设备700的结构框图,根据图7,该设备包括包括:相关逻辑门及其上的突变获得装置 701,被配置为根据测试用例目标的信号,对编译后的待测试集成电路获得与该测试用例目 标的信号相关的逻辑门及相关的逻辑门上的突变;距离计算装置702,被配置为计算所述 突变与所述测试用例目标的信号之间的距离;激活周期数获得装置703,被配置为对编译 后的待测试集成电路进行电路仿真,获得突变、测试用例、随机种子的组合对应的激活周期 数;激活周期数方差获得装置704,被配置为获得突变、测试用例的组合对应的激活周期数 方差;以及排序装置705,被配置为根据突变与测试用例目标的信号之间的距离,突变、测 试用例、随机种子的组合对应的激活周期数,以及突变、测试用例的组合对应的激活周期数 方差,对突变、测试用例、随机种子的组合排序。
[0057] 在一种实施方式中,相关逻辑门及其上的突变获得装置包括:控制数据流图生成 装置,被配置为为所述编译后的待测试集成电路生成控制数据流图;以及相关逻辑门获得 装置,被配置为根据所述测试用例目标的信号,对生成的控制数据流图使用图搜索算法,确 定该控制数据流图中与所述测试用例目标的信号相关的逻辑门。
[0058] 在一种实施方式中,所述相关逻辑门及其上的突变获得装置使用如下方式之一获 得相关的逻辑门上的突变:(1)为所述编译后的待测试集成电路的所有逻辑门产生突变; 以及响应于确定了相关的逻辑门,获取相关的逻辑门上的突变;(2)响应于确定了相关的 逻辑门,仅为相关的逻辑门产生突变。
[0059] 在一种实施方式中,距离计算装置使用如下方式之一计算所述突变与所述测试用 例目标的信号之间的距离:(1)根据所述控制数据流图将所述相关的逻辑门与所述测试用 例目标的信号之间相隔的逻辑门个数作为该相关的逻辑门上的突变与所述测试用例目标 的信号之间的距离;(2)根据所述控制数据流图将所述相关的逻辑门与所述测试用例目标 的信号之间相隔的寄存器个数作为该相关的逻辑门上
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1