边界扫描用于故障注入的限制与改进方案
1. 故障注入背景与IEEE 1149.1技术
随着数字电路复杂度的增加和小型化发展,传统的引脚级故障注入技术如MES - SALINE或RIFLE已逐渐过时。IEEE 1149.1技术最初是为应对测试领域的类似挑战而提出的,因此有人提议将其用作替代的故障注入技术。Sedmak曾提出三种利用该技术进行故障注入的方法:
- 使用SAMPLE/PRELOAD指令,随后再使用其他指令将错误值暴露到输出引脚。
- 采用HIGHZ/CLAMP指令获得相同效果。
- 实现用户自定义指令,强制或反转输出信号值。
2. 故障注入步骤
在进行故障注入之前,需要对目标及其环境进行研究,从而得出故障模型。故障模型主要确定以下空间的相关子集:
- 瞬间(Instant)
- 局部性(Locality)
- 动态性(Dynamics)
- 类型(Type)
故障注入实验包含三个主要步骤,具体如下:
graph LR
A[设置触发条件] --> B[注入故障]
B --> C[观察影响]
- 设置触发条件 :确定注入的瞬间,常用的条件有时间相关(如事件发生后的时间)、空间相关(如访问特定内存地址)或事件驱动(如中断)。
- 注入故障 :故障的局部性(如具体引脚)、动态性(持续时间)和类型(如位翻转)决定了注入过程。