Fault Modeling and Fault Simulation Luis Alejandro Cortés, Daniel Karlsson Embedded Systems Laboratory Department of Computer and Information Science Linköping University Outline ■ ■ Fault Modeling ❏ Logical Fault Models ❏ Fault Detection ❏ Single Stuck-Fault Model ❏ Multiple Stuck-Fault Model Fault Simulation ❏ Serial Fault Simulation ❏ Parallel, Deductive, and Concurrent Fault Simulation ❏ Critical Path Tracing Fault Modeling and Fault Simulation Luis Alejandro Cortés, Daniel Karlsson 2 of 21 Nov. 20, 2000 Basic Definitions ■ Error : An instance of an incorrect operation of the CUT Physical Faults Design Errors ■ Fabrication Errors Fabrication Defects Physical Failures } Error Testing: “Are there faults introduced during manufacturing or operation?” A fault is detected by observing an error caused by it Fault Modeling and Fault Simulation Luis Alejandro Cortés, Daniel Karlsson 3 of 21 Nov. 20, 2000 Logical Fault Models ■ ■ Fault models are needed to analyze the result of the test Logical Fault : Representation of the effect of the physical faults on the operation of the system ❏ ■ ■ Only the logic function is usually considered (not timing) Logical faults allow a mathematical treatment of testing and diagnosis Assumptions are considered to make the analysis feasible ❏ E.g. single-fault assumption Fault Modeling and Fault Simulation Luis Alejandro Cortés, Daniel Karlsson 4 of 21 Nov. 20, 2000 Logical Fault Models (cont’d) 0 1 Stuck-at-1 Stuck-at-0 a.b b a+b AND a.b a AND-bridging OR a+b OR-bridging 0 Stuck-at-0 Fault Modeling and Fault Simulation Luis Alejandro Cortés, Daniel Karlsson 5 of 21 Nov. 20, 2000 Fault Detection (Combinational Circuits) x Z(x) C faulty Cf x Zf(x) ■ A test vector t detects a fault f iff Zf(t)=Z(t) ■ A fault f is detectable if there exists a test t that detects f Fault Modeling and Fault Simulation Luis Alejandro Cortés, Daniel Karlsson 6 of 21 Nov. 20, 2000 Detectable Faults x z y 0 f is undetectable f x OR g y z t=00 is the only test that detects g z t=00 does NOT detect g in the presence of f x OR y g 0 f Fault Modeling and Fault Simulation Luis Alejandro Cortés, Daniel Karlsson 7 of 21 Nov. 20, 2000 Fault Detection (Sequential Circuits) X R(q,X) S faulty Sf X ■ Rf(qf,X) A test sequence T detects a fault f iff, for every pair of initial states q and qf, the output sequences R(q,T) and Rf(qf,T) are different for some ti in T Fault Modeling and Fault Simulation Luis Alejandro Cortés, Daniel Karlsson 8 of 21 Nov. 20, 2000 Single Stuck-Fault (SSF) Model ■ May represent different physical faults ■ Technology independent ■ ■ Test sets used to detect SSFs can detect other faults not explicitly considered The number of SSFs in a circuit is small, compared to other fault models ☞ Successful model Fault Modeling and Fault Simulation Luis Alejandro Cortés, Daniel Karlsson 9 of 21 Nov. 20, 2000 SSF Model (cont’d) ■ 2n possible SSFs (n = no. lines in which a SSF may occur) m=4 n=6 m n = ∑ ( 1 + f i – qi ) i=1 s1 m = signal sources s3 s2 s4 n = (G + I )(1 + f – q) Fault Modeling and Fault Simulation Luis Alejandro Cortés, Daniel Karlsson f i = fanout count of signal s i 1 if f i = 1 qi = 0 if f i > 1 f = average fanout count q = fraction of signals with single fanout G = no. gates I = no. primary inputs 10 of 21 Nov. 20, 2000 Fault Equivalence ■ The number of SSFs can be reduced based on equivalence fault relations A B D C B s-a-1, C s-a-0, and D s-a-1, are functionally equivalent ■ Determining whether two arbitrary faults are functionally equivalent is an NP-complete problem (compute and show the two faulty functions are identical) ❏ Relation analysis based on structural equivalence Fault Modeling and Fault Simulation Luis Alejandro Cortés, Daniel Karlsson 11 of 21 Nov. 20, 2000 Multiple Stuck-Fault (MSF) Model ■ n = no. possible SSF sites ❏ 2n SSFs n ❏ ∑ i=1 ■ n 2 i = 3 n – 1 i MSFs If we consider k faults occurring simultaneously k ❏ ∑ i=1 ❏ n 2 i i MSFs Example: n=5000, k=2 50.000.000 MSFs (double faults) 10.000 SSFs Fault Modeling and Fault Simulation Luis Alejandro Cortés, Daniel Karlsson 12 of 21 Nov. 20, 2000