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都被检测过。

相关推荐
Timmylyx05182 小时前
类欧几里得学习笔记
笔记·学习·算法
aluluka2 小时前
Emacs折腾日记(三十六)——打造个人笔记系统
笔记·python·emacs
d_b_2 小时前
UCIE 笔记(一)
笔记·学习·芯片
悠哉悠哉愿意2 小时前
【强化学习学习笔记】强化学习简介
笔记·学习·强化学习
Jack___Xue3 小时前
LangGraph学习笔记(六)---LangGraph ReAct应用
笔记·学习·react.js
呱呱巨基4 小时前
Linux 第一个系统程序 进度条
linux·c++·笔记·学习
林深现海4 小时前
【刘二大人】PyTorch深度学习实践笔记 —— 第二集:线性模型(凝练版)
pytorch·笔记·深度学习
历程里程碑4 小时前
Linux 16 环境变量
linux·运维·服务器·开发语言·数据库·c++·笔记
横木沉4 小时前
Opencode启动时内置Bun段错误的解决笔记
人工智能·笔记·bun·vibecoding·opencode