下面以7.10所示的电路图为例,用D算法求其测试码。
图7.10 D算法举例电路
 |
先求故障es-a-1的故障原始D立方pdcf,以及各元件的质覆盖cover和传播D立方pdc。
pdcf (es-a-1) = ∩pdcf{
X X|1 }=
cover(AND2) = ,
pdc(AND2) = 
cover(OR2) = ,
pdc(OR2) = 
cover(NOR2) = ,
pdc(NOR2) = 
cover(NOT) = ,
pdc(NOT) = { D | D
}
参看表7.9的D算法执行过程。
1. 开始,将故障es-a-1的一个故障D立方{0 X | D}作为初始测试D立方tc0
。其D前沿为{G},C前沿为空。
2. 做D驱赶,用G的传播D立方{0 D|
D}与tc0作D交,得tc1。g的负载元件有J和I,作为新的D前沿,C前沿仍为空。
3. 选J做D驱赶,用J的传播D立方{1 D|
D}与tc1作D交,得tc2。又得新的D前沿元素L,放入D前沿DF中。C前沿为空。
4. 选L做D驱赶,得tc3。D到达了输出端。但C前沿中有K,需要做一致性操作。
5. 选K的一个质立方与tc3作D交,得tc4。这时D前沿中又有元素I,再做一致性操作。
6. 选I的质立方{ 1| 0 }与tc4作D交,结果为空。
7. 回溯到tc3,选K的另一个质立方再做一致性操作,得tc6。
8. 这时C前沿中又出现新元素H,再做一致性操作,得tc7。
9. 这时C前沿为空,所有信号的值已确定,输出端也出现了D。D算法获得成功。于是得到故障es-a-1的一个测试向量T
= { 1 0 0 1 }。
|