基于故障注入的基准电路故障响应分析

[11-20 00:53:20]   来源:http://www.88dzw.com  集成电路   阅读:8181

文章摘要:(4)故障注入首先一个循环是对于整个故障集for(p_f=0;p_f<FAULT_SIZE;p_f++),判断注入的故障0或是故障1,接着嵌套循环for(p_tr=0;p_tr<TESTS_R;p_tr++),依次在输入端输入每个测试向量,然后嵌套循环for(p_no=1;p_no<MAX_LINE;p_no++)遍历网表,在便利网表之前,根据先前的判断是故障0或是故障1,将这节点的value固定为0或1即可。根据以上结果做统计工作,写文件fault_list.out和fault_sum.out。写文件fault_list.out是在每次循环for(p_no=1;p_no&l

基于故障注入的基准电路故障响应分析,标签:集成电路设计,半导体集成电路,http://www.88dzw.com

  (4)故障注入

  首先一个循环是对于整个故障集for(p_f=0;p_f<FAULT_SIZE;p_f++),判断注入的故障0或是故障1,接着嵌套循环for(p_tr=0;p_tr<TESTS_R;p_tr++),依次在输入端输入每个测试向量,然后嵌套循环for(p_no=1;p_no<MAX_LINE;p_no++)遍历网表,在便利网表之前,根据先前的判断是故障0或是故障1,将这节点的value固定为0或1即可。

  根据以上结果做统计工作,写文件fault_list.out和fault_sum.out。写文件fault_list.out是在每次循环for(p_no=1;p_no<MAX_LINE;p_no++)结束后,写文件fault_sum.out实在循环for(p_tr=0;p_tr<TESTS_R;p_tr++)结束后。

  根据数据得到程序最后需要的统计结果,即故障响应率。其计算公式为:

  sum of error/(refss*tlotv)

  sum of error是注入单故障之后,对于测试向量集,得到的结果与参考值不同的次数;srefss是simplistically reduced equivalent fault set size的缩写,即最小等价故障类的大小;tlotv是the length of test vectors的缩写,即测试向量的个数。

  3.4 注入双故障的分析

  在进行注入单故障情况下的分析以及得出结果故障响应率(FRF)后,继续考虑对ISCAS85基准电路注入双重故障的情况进行研究。

  注入双故障,基本的思想就是在注入一个单故障的情况下,再注入一个与之不同的故障,其等价效果极为注入双故障。所以在fault_injection增加1层循环,即:

  for(p_f=0;p_f<FAULT_SIZE;p_f++);

  从而由原先的整个故障集-整个测试向量-遍历网表每一行的3层嵌套循环,扩展为整个故障集-整个故障集-整个测试向量-遍历网表每一行的4层循环。当然另外在便利网表时要注入双重故障,即要判断此节点是否时注入故障的那2个节点以及注入的是故障0还是故障1,进行响应的操作。

  注入双故障时的故障响应率(FRF)的计算公式为:

  sum of errot/{[srefss*(srefss-1)]*tlotv}

  4 结 语

  根据各个电路的输出结果,结合上面的计算参数,就可以得到注入单故障的故障响应率(FRF)。如表2所示。


  对于注入单故障的故障响应率(FRF)的分析可以从两个方面来看:从故障注入的角度,他反映了注入故障之后的电路,对于测试向量的响应情况,故障响应率越高,说明这组测试向量对电路的故障检测能力越强;但是如果从容错的角度来看,故障响应率(FRF)越低,说明更多情况下,即使电路中存在故障,也可以得到正确的输出结果,说明的电路具有比较强的容错能力。

  同样,结合注入单故障时的计算参数srefss和tlotv,得到注入双故障的故障响应率(FRF)。如表3所示。


  从此组数据可以看出,注入双重故障下的故障响应率比注入单故障是的故障响应率有明显的增大,增加1倍左右。这个结果是可以理解的,从故障响应的角度,一组测试向量在双故障情况下其故障响应能力明显提高(因为输出结果出错的几率大大增加);而从容错的角度来看,电路能够容纳双故障的能力一定会大大降低,导致故障响应率的提高。


上一页  [1] [2] 


Tag:集成电路集成电路设计,半导体集成电路集成电路

《基于故障注入的基准电路故障响应分析》相关文章

分类导航
最新更新
热门排行