DFT笔记27

3.4.3 Deductive Fault Simulation(演绎故障仿真)

演绎故障仿真是一种非常不同于前面两种的仿真方法,它是基于逻辑归因,而不是仿真。

演绎故障仿真非常快,因为它只需要仿真fault-free的电路即可。

下图是个例子,具体的推导过程需要的时候看原文,很好理解:

deductive fault simulation的优点是:用一个test pattern在一次fault list propagation pass中就可以检测到所有故障。

虽然这个例子里面没有提到故障坍塌,但是实际操作中需要先进行故障坍塌再去用这个方法仿真。

用test pattern P2和P3仿真,在输出K能检测到的故障如下面两图,和P1各有不同:

下图是deductive fault simulation的流程图,和前面两个类似:

在上面的例子里面涉及到的gate只是两输入的,但同样的方法也可以用在多输入gate上,有相关公式,作为拓展阅读再看吧。

deductive fault simulation的优缺点:

  • 优点:可以同时处理所有故障
  • 缺点:
    • 未知的值不好处理,在文献中有详细讨论
    • 只适合用在zero-delay的时序模型中,仿真过程中是不考虑时间信息的
    • 存储管理问题,fault list的大小是不可预测的,可能在算法执行过程中占用大量空间

3.4.4 Concurrent Fault Simulation(同时性的故障仿真)

Concurrent fault simulation:good电路和faulty电路其实不一样的地方只局限在一小个区域内,所以这个仿真只仿真这些区域。他是一种fault-free和faulty电路一起仿真的基于事件的仿真方法。

几个概念:

  1. concurrent fault list:每个门都有这么一个list
  2. bad gates:里面包括了bad gates,就是bad门的名称和值,和演绎仿真相似
  3. local faults:是指当前这个门的值,输入输出值都被标记上

下面还是用电路N举的例子,用到pattern P1,假设A stuck-at one, C stuck-at zero, and J stuck-at zero,但只能检测到A stuck-at one(具体过程需要时候看原文):

下面紧接着用pattern P2,如下图,在P1的基础上叠加,这次P2能检测出C stuck-at zero:

继续,叠加pattern P3,如下图(不能被检测到的bad gate会被对应门的concurrent fault list删掉,就是画叉的),这次能检测到J stuck-at zero:

concurrent fault simulation的测试流程也是类似,如下图:

直到所有的pattern都被测试过或者所有fault都被检测过。

相关推荐
雾岛听蓝11 小时前
C++11新特性(lambda、包装器)
c++·经验分享·笔记
代码游侠13 小时前
Linux驱动复习——驱动
linux·运维·arm开发·笔记·学习
枷锁—sha14 小时前
【CTFshow-pwn系列】03_栈溢出【pwn 053】详解:逐字节爆破!手写 Canary 的终极破解
网络·笔记·安全·网络安全
浅念-14 小时前
C++ 继承
开发语言·c++·经验分享·笔记·学习·算法·继承
峰顶听歌的鲸鱼15 小时前
Zabbix监控系统
linux·运维·笔记·安全·云计算·zabbix·学习方法
白云偷星子16 小时前
RHCSA笔记5
linux·运维·笔记
zzcufo17 小时前
Anki 使用完整教程
笔记·学习
Leventure_轩先生18 小时前
从 HiFi-GAN 到 NSF-HiFi-GAN:声码器学习笔记
笔记·学习·生成对抗网络
蒸蒸yyyyzwd18 小时前
DDIA阅读笔记ch6分区
笔记
跃龙客19 小时前
atomic笔记
笔记·算法