70
06/23/22 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital, Memory and Mixed-Signal VLSI Circuits Digital Testing: Test Pattern Generation

12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Embed Size (px)

Citation preview

Page 1: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23

Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital, Memory and Mixed-Signal

VLSI Circuits

Digital Testing: Test Pattern Generation

Page 2: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 2

Outline Types of Tests Deterministic Tests Notations and Basic Operations Design Verification Critical Path D-Algorithm Reconvergent Fanout PODEM Other Algorithms

Page 3: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 3

Deterministic Tests

NP-complete problem Algebraic: Boolean Difference General Fault Objective

Critical PathPseudo Random

AlgorithmicD-Algorithm Roth 1967 IBMPODEM Goel 1981 IBMFAN Fujiwara 1983 Kyoto U.Socrates Schultz 1988 Germany0/1 propagation Rajski 1990

Page 4: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 4

E=1G3

G4

G5

G

6

W/1

U = 0Z

V

H=1

F

G

G1B=0

A=0Justification

Sensitization or Propagation

G2

Implication

C0

Justification

The Basic Operations

W sa1 fault

Page 5: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Critical path tracing

if only one input has controlling value => such input is criticalif all inputs have value c’ =>

all inputs are critical

A signal is critical if its change causes the gate output change

Page 6: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 6

Critical Path

111011

1 01 0

100000

1 1 1

0 0 0

G2

G3

G4

G5

X=0

W=1

U=0

Z=1

Y

H=0

F=0

G=1

G1

A

B=1

G2

G3

G4

G5

X=1

W=1

U

Z=1

Y=1

H=1

F=1

G=0

G1

A=0

B=0

(a)

(b)

Critical signals

Page 7: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Critical path tracing

critical signals C Out In Out InAND 0 0 0 1 111 start with the OR 1 1 1 0 000 output andNAND 0 1 0 0 111 propagate pathNOR 1 0 1 1 000 towards input

single all

Page 8: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Critical path tracing

Example: Start with critical 0c at the output and propagate the critical signals backwards

ab

c

g

d

e

h

i

j

k

l

f

Page 9: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Critical path tracing

Example :

Make it critical by setting c to 1

Faults detected by the input (abde) = 0000 => a1, b1, d1, e1, h0, i0, j0, k0, l0

a b c d e f g h i j k l 0C

1C 1C 1C 1C

0C 1 0C 1 0C 0C 1

ab

c

g

d

e

h

i

j

k

l

f

Page 10: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Critical path tracing

Example: Find critical paths for q = 0c

ab

cd

ef

gh

i

j

k

l

m

n

o

p q

Page 11: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Critical path tracing

Example :

a b c d e f g h i j k l m n o p q 0C

0C 0C 0C

1C 0C 1 1C 1C

1C 1C 0 0 0C 0C 0 1C

ab

cd

ef

gh

i

j

k

l

m

n

o

p q

Page 12: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Fault Oriented Algorithms

Page 13: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Fault Oriented Algorithms

Page 14: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 14

A Generic TestAlgorithm

Readnetlist

DisplayResults

Generate fault list

Select one fault andgenerate a pattern

Fault simulation

Remove all faults that aredetected by the pattern

Fault list emptyor desired FC

obtained?

Fault Oriented Algorithms

Page 15: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Function of NAND Gate

cInput a

0 1 X D

0 1 1 1 1 1

1 1 0 X D

X 1 X X X X

D 1 X 1

1 D X 1 D

D

D

D

D

D

a

b c

D1/0

0/1

D

1

Inpu

t b

Page 16: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

D-Algorithm

Use D-algebraActivate fault

• Place a D or D at fault site• Do justification, forward implication and consistency check

for all signals

Repeatedly propagate D-chain toward POs through a gate

• Do justification, forward implication and consistency check for all signals

Backtrack if• A conflict occurs, or• D-frontier becomes a null set

Stop when• D or D at a PO, i.e., test found, or• If search exhausted without a test, then no test possible

Page 17: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Definitions

Justification: Changing inputs of a gate if the present input values do not justify the output value.

Forward implication: Determination of the gate output value, denoted as X, according to the input values.

Consistency check: Verifying that the gate output is justifiable from the values of inputs, which may have changed since the output was determined.

D-frontier: Set of gates whose inputs have a D or D, and the output is X.

Page 18: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Line justification in a fanout-free circuit

Justify (l, val)begin

set l to valif l is a PI then return /* l is a gate (output) */c = controlling value of l i = inversion of l input_val = val iif (input_val = c’)

then for every input j of l Justify (j, input_val) --recursive callelse begin

select one input (j) of lJustify (j, input_val)

end end

1

1

1

0 l

x

0

x

1 l

j

j

Page 19: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Error propagation in a fanout-free circuit

Propagate (l, err)/* err is D or D’ */begin set l to err

if l is PO then returnk = the fanout of lc = controlling value of ki = inversion of kfor every input j of k other than l

Justify (j, c’)Propagate (k, err i)

end

1

err

1

err’ kl=

Page 20: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Definition: Singular Cover

A singular cover defines the least restrictive inputs for a deterministic output value.

Used for:• Line justification: determine gate inputs for specified output.• Forward implication: determine gate output.

a

b c

X

X

0

Examples: XX0 ∩ 110 = 1100XX ∩ 0X1 = 0X1

Page 21: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Definition: D-CubesD-cubes are singular covers with five-valued signals

Used for D-drive (propagation of D through gates) and forward implication.

a

b c

X

D

X

Examples: XDX ∩ 1DD = 1DD0DX ∩ 0D1 = 0D1DDX ∩ DD1 = DD1

Page 22: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 22

Operations

PDCF

Propagation D-cube

Justification

X = D

(b)

(a)

1 1 1

0 11 01 1

D'D

{W,X,F} ={ 1,D,D}

A = 0B = 0

W = 1X = D

F = D

(c)

{W,X,F} ={ 1,D,x}

W = 1 F = xX = D

W = 1 F = 1E = x

W = xE = x

F = 1

Page 23: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

set selected inputs to D (D’)set remaining inputs to c’the output is D i (D’ i)

Example: For OR gate with (c=1, i=0) and input D set the remaining inputs to 0 and the output is D

Propagation D-cubes

Page 24: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

all inputs to c’ (c) if i = cone input to c (c’) if i’ = c (other don’t care)Example: for AND gate (c=0, i=0) and output equal to D (1/0) use all inputs equal to 1

Primitive D-cubes of fault

for output equal to D (D’) set :

Page 25: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

D-Intersection

∩ 0 1 X D

0 0 0

1 1 1

X 0 1 X D

D D D

D

D

D

D

UndefinedState

(conflict)

D

Page 26: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 27

Set Operations

AND 0 1 x D D' OR 0 1 x D D' A A'

0 0 0 0 0 0 0 0 1 x D D’ 0 1

1 0 1 x D D’ 1 1 1 1 1 1 1 0

x 0 x x x x x x 1 x x x x x

D 0 D x D 0 D D 1 x D 1 D D'

D' 0 D’ x 0 D' D' D’ 1 x 1 D' D' D

Page 27: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Testing for single stuck faults

Error propagation in a fanout-free circuit

Example : Propagate error in the following circuit

j

h

i

ab

cd

e

f sa0

g

Page 28: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Testing for single stuck faults

D

j

h

i

ab

cd

e

f sa0

g

11

0x

0

D1

D0

Error propagation in a fanout-free circuit

Example : Propagate error in the following circuit

Page 29: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Testing for single stuck faults

Example : Propagate 6 sa0 fault in the circuit

G1

G2

G3

G4sa0

12

34

7

8

9

5

6

G5

Page 30: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Testing for single stuck faults

Example : Propagate 6 sa0 fault in the circuit

G1

G2

G3

G4sa0

12

34

7

8

9

5

6

G5

D

0

D’

1

D

0

0

0

X

Page 31: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Testing for single stuck faults

Example :

G1 G2 G3 G4 G51 2 5 3 4 6 3 5 7 2 6 8 7 8 9X 1 0 X 0 D 0 X 1 0 D D’ 1 D D’1 X 0 0 X D X 0 1 D 0 D’ D 1 D’0 0 1 1 1 D’ 1 1 0 D D D’D D D’singular pdcf singular propagation propagationcover cover D-cube D-cube

G1

G2

G3

G4sa0

12

34

7

8

9

5

6

G5

Page 32: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Testing for single stuck faults

Example :

Resulting test for 6 sa0 : T = 10x0

1 2 3 4 5 6 7 8 9 branch

X 0 D Y 0 X 0 D D’ Y 0 X 0 D 1 D’ D Y

0 X 0 0 D 1 D’ D N1 0 X 0 0 D 1 D’ D N

D-drive1, select pdcf for 6 sa02, propagate through G43, propagate through G5Consistency4, use singular cover of G35, use singular cover of G1

G1

G2

G3

G4sa0

12

34

7

8

9

5

6

G5

Page 33: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

An Example: XOR

a b

a2

a1

b1

b2

c1 c

c2

d

e

f

Find tests for: c sa0c1 sa0c2 sa0

Page 34: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

XOR: Test for c sa0

a b

a2

a1

b1

b2

c1 c

c2

d

e

f

Action Operation D-frontier

1. Activate fault c=1 or c=c1=c2=D d, e

2. Justify c=1 0X1, a=a1=a2=0 d, e

3. Forward impl a2=0 0D1, d=1 e

4. Forward imp d=1 1XX , no implication possible e

5. D-drive c2→e D1D, b2=b=b1=1, e=D f

6. Forward impl b1=1 011, consistency checked f

7. D-drive e→f 1DD, f=D PO

8. Stop, test found Test: (a,b) = (0, 1), f = 1

Page 35: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Test-Detect: XOR, Test (0,1)

Determine good circuit signal values.

For each fault• Place a D or D at the fault site• Perform forward implications• Fault is detected if any PO assumes a D or D value

a b

a2

a1

b1

b2

c1 c

c2

d

e

f

0

11 0

1

1

b1

b2

D for c1 sa0

D for c2 sa0

D

D

0D1 (null D-frontier) → c1 sa0 not detected

D1D

1DX ∩ 1DD = 1DD, D at PO →c2 sa0 is detected

Page 36: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

XOR: Test for c1 sa0

a b

a2

a1

b1

b2

c1 c

c2

d

e

f

Action Operation D-frontier1. Activate fault c1=1 or c=c2=1, c1=D d2. Justify c=1 0X1, a=a1=a2=0 d3. Forward impl a2=0 0D1, d=1 null4. Back-up, redo step 3 No choice available null 5. Back-up, redo step 2 X01, b=b1=b2=0, a=X, d=X d6. Forward impl b2=0 101, e=1 d7. Forward impl e=1 X1X, no implication possible d8. D-drive c1→d 1DD, a2=a=a1=1,d=D f9. Forward impl a1=1 101, consistency checked f10. Forward impl d=D D1D, f=D PO11. Stop, test found Test: (a,b) = (1, 0), f = 1

Page 37: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

An Example

The circuit will be used to illustrate the D-algorithm for faults on three different nodes

an internal node X

a primary input Y

a primary output Z

X/0G2

G3

G4

G5

W = 1

U = 0

Z

Y

HF

G

G1B = 0

A = 0

Page 38: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 39

Node X sa0 Fault 1 Operation Gate A B X Y W U F G H Z

2 Initialization x x x x x x x x x x

3 PDFC G1 0 0 D

4 0 0 D x x x x x x x

5 D-drive G2 D 1 D

6 0 0 D x 1 x D x x x

7 D-drive G3 0 D D’

8 0 0 D x 1 0 D D’ x x

9 D-drive G5 D’ 0 D'

10 0 0 D x 1 0 D D’ 0 D'

11 Justification H = 00

x 0 0

12 0 0 D 0 1 0 D’ 0 D'

13 Justification H = 00

0 x 0

14 0 0 D 0 1 0 D D’ 0 D'

X/0G2

G3

G4

G5

W = 1

U = 0

Z

Y

HF

G

G1B = 0

A = 0

Page 39: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 40

Compact Table 1 Operation Gate A B X Y W U F G H Z

2 Initialization x x x x x x x x x x

3 PDFC G1 0 0 D x x x x x x x

4 D frontier G2 0 0 D x 1 x D x x x

5 D frontier G3 0 0 D x 1 0 D D’ x x

6 D frontier G5 0 0 D x 1 0 D D’ 0 D'

7 Justification H = 0 0 0 D x 1 0 D’ 0 D'

8 Justification H = 0 0 0 D 0 1 0 D D’ 0 D'

Page 40: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 41

Input Y sa1 Fault

1 Operation Gate A B X Y W U F G H Z

2 Initialization x x x x x x x x x x

3 PDCF Y x x x D’ x x x x x x

4 D frontier G4 x x x D’ x x 1 x D’ x

5 Implication F=1 x x x D’ x x 1 0 D’ x

6 D frontier G5 x x x D’ x x 1 0 D’ D’

7 Justification F =1 x x 1 D’ 1 x 0 D’ D'

8 Justification X=1 0 0 1 D’ 1 x 0 D’ D'

X/0

G2

G3

G4

G5

W = 1

U = 0

Z

Y

HF

G

G1B = 0

A = 0

Page 41: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 42

Output Z sa0 Fault

1 Operation Gate A B X Y W U F G H Z

2 PDCF G5 x x x x x x x 1 x D

3 Justification G x x x x x 0 0 1 x D

4 Justification F x x x x 0 0 0 1 x D

5 Justification F x x 0 x x 0 0 1 x D

6 Justification X x 1 0 x x 0 0 1 x D

X/0

G2

G3

G4

G5

W = 1

U = 0

Z

Y

HF

G

G1B = 0

A = 0

Page 42: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,
Page 43: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,
Page 44: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,
Page 45: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Multiple-Valued AlgebrasMultiple-Valued AlgebrasSymbol

DD01X

G0G1F0F1

AlternativeRepresentation

1/00/10/01/1X/X0/X1/XX/0X/1

FaultyCircuit

0101XXX01

Fault-freecircuit

1001X01XX

Roth’sAlgebra

Muth’sAdditions

Page 46: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Complexity of D-Algorithm

Signal values on all lines (PIs and internal lines) are manipulated using 5-valued algebra.

Worst-case combinations of signals that may be tried is 5#lines

• For XOR circuit, 512 = 244,140,625.

Podem: A reduced-complexity ATPG algorithm• Recognizes that internal signals depend on PIs.• Only PIs are independent variables and should be

manipulated.• Because faults are internal, a PI can assume only 3

values (0, 1, X).• Worst-case combinations = 3#PI; for XOR circuit, 32 = 8.

Page 47: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Podem: Path oriented decision makingStep 1: Define an objective (fault activation, D-drive, or line justification)Step 2: Backtrace from site of objective to PIs (use testability measure guidance) to determine a value for a PIStep 3: Simulate logic with new PI value

• If objective not accomplished but is possible, then continue backtrace to another PI (step 2)

• If objective accomplished and test not found, then define new objective (step 1)

• If objective becomes impossible, try alternative backtrace (step 2)

Use X-PATH-CHECK to test whether D-frontier still there – a path of X’s from a D-frontier to a PO must exist.

Podem Algorithm

Page 48: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

XOR Example Again

(1,1)6

(1,1)6

(3,2)5

(4,2)3

(4,2)3

(5,5)0

6

6

5

5

Compute SCOAP testability measures: (CC0,CC1)CO

7

7

Page 49: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Podem: Objective and Backtrace

(1,1)6

(1,1)6

(3,2)5

(4,2)3

(4,2)3

(5,5)0

6

6

5

5

sa0

1. Objective 1: set fault site to 1

0

2&3. Backtrace to a PI and simulate

1

1

D

X-path check fails→ Back up:Erase effects of steps 2&3Try alternative backtrace

7

7

Page 50: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Podem: Back up

(1,1)6

(1,1)6

(3,2)5

(4,2)3

(4,2)3

(5,5)0

6

6

5

5

sa0

1. Objective 1: set fault site to 1

0

4&5. Alt. backtrace to a PIand simulate

1

1

D

X-path check: OKObjective 1 achieved

X-path

7

7

Page 51: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Podem: D-Drive

(1,1)6

(1,1)6

(3,2)5

(4,2)3

(4,2)3

(5,5)0

6

6

5

5

sa0

4. Objective 2: D-drive, set line to 1

1

5. Backtrace to a PI and simulate

1

1

D

1 D

D0

D at PO→Test found

7

7

Page 52: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Another Podem Example

1. Objective “0”2. Backtrace “A=0”3. Logic simulation for A=0

(9, 2)

S-a-1

0

4. Objective possible but not accomplished yet

Page 53: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Podem Example (Cont.)

1. Objective “0”5. Backtrace “B=0”6. Logic simulation for A=0, B=0

7. Objective possible but not accomplished yet

(9, 2)

S-a-1

0

00

0

Page 54: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Podem Example (Cont.)

9. Logic simulation for E=0

10. Objective possible but not accomplished yet

(9, 2)0

S-a-1

1. Objective “0”

0

8. Backtrace “E=0”

00

0

0

Page 55: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Podem Example (Cont.)

11. Backtrace “D=0”

12. Logic simulation for D=0

13. Objective accomplished

(9, 2)

S-a-1

1. Objective “0”

0

00

0

0

0

0

0

Page 56: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 57

PODEM Flowchart

START

Assign a binary value to anunassigned primary input

Determine implications of allprimary inputs

Is there a D or a Don any primary ouput?

Test possiblewith the additional assigned primary

inputs?

Is there anuntried combination of

values on assigned primary inputs?

Set untried combination ofvalues on assigned primary

inputs

Test has beengenerated

yes

no

no

maybe

no

yes

No PatternExists

Page 57: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 58

PODEM Example E sa1 Fault

U

W

X

0

1

00 1

1

1. Assign x to all inputs

2. Assigning 0 to the primary input, U, causes E = 1; hence, this choice does not further our goal and it is discarded. Then U =1

3. We proceed with W = 1. The implication of this value is not furthering the objective nor is it blocking it.

4. X = 1 is rejected and X=0 is selected.

5. This Implies F=0, H=0 and we can propagate D’ on G, then D on the primary output, Z.

=D’

G2

G3

G1

G4

G5X

W

U

Z

YH

F

G

E=D

=D

Page 58: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 59

PODEM Example G sa1 Fault

G2

G3

G1

G4

G5

XW

Z

YF

G

EV H

I

U

W

0

1

0

XV 1

1E1

1. Assign x to all inputs

2. Assigning 0 to the primary input, W, causes G = 1; hence, this choice is discarded. Then W =1 which causes F=0.

3. We proceed with X = 1. The implication of this value is not furthering the objective nor is it blocking it.

4. Similarly V=1 is selected.

5. E=1 is rejected, so E=0 which implies I=1 and we can propagate D on the primary output, Z.

=D’

=D

Page 59: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 60

Other Algorithms

FANA variation of PODEM with better heuristic to prune the search tree for backtracking

SocratesA variation of FAN using testability analysis to cut down on backtracking

Page 60: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

04/18/23 Copyright©2001, Samiha Mourad 61

Comparing FAN to PODEM

Computing Time Average Backtracks %age of Faults Aborted

Circuit PODEM FAN PODEM FAN PODEM FAN

1 1.3 1 4.9 1.2 0.32 0.37

2 3.6 1 42.3 15.2 2.26 3.13

3 5.6 1 61.9 0.6 2.42 4.00

4 1.9 1 5.0 0.2 0.99 1.10

5 4.8 1 53.0 23.2 0.82 1.02

Page 61: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Multi fault detection with 01 sequence (Dr. Janusz Rajski)

1, Drive backward from output 01 to establish 2 test vectors

2, Propagate forward (with fault effects)

3, Analyze the results (backward)

Page 62: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Rajski’s method

Example : ABCE = (00, 11, 01, 11)

G701,11,00

E=11,00

A=00,11

B’=00,11

C=01,00,11

B=11,00

G2=01,00,11

G3=00,11

G4=10,11,00

G5=01,11,00

G1=01,00,11

G8=00,11

G6=00,10,11

If single fault

Page 63: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Rajski’s method

Example : ABCE = (00, 11, 00, 10)

G7=01

E=10,11

A=00

B’=00,11

C=00

B=11

G1=00

G2=00

G3=01,00,11

G4=11,00

G6=01,00

G8=01,00,11

G5=00

Page 64: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Rajski’s method

Example : ABCE = (10, 00, 00, xx)

G7=01

E=xx

A=10

B’=11

C=00

B=00,11

G1=00

G2=10

G3=11

G4=01

G5=00,10

G6=01

Page 65: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Rajski’s method

Example :multiple faultscoverage

sa1 sa0A x 3B 3 xC x xE 2 xG1 x xG2 x xG3 x 2G4 3 2G5 x xG6 x 2G7 x xG8 x 2

Page 66: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Rajski’s method

Example :

01,11,00

a

b

c

d

e

f

Z

g

h

00,11

01,11,00

11,00

01,00,11

00,1101,11,00

01,11,00

00,11

11,00

01,11,0000,11

h1= 01,11,00

h2= 01,11,00

i

jk

001010

000010abcdef

Multiple faults

sa0 sa1a xb xc x xd xe xf xg xh x xh1 xh2 xi xj xk x xZ x x

Page 67: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Rajski’s method

01,00,11

a

b

c

d

e

f

Z

g

h

10,00,11

11,00

01,00,11

00,11

11,0001,00,11

11,00

00,11

11,00

01,00,1100,11

h1= 11,00

h2= 11,00

i

jk

if single fault

000110

100110abcdef

sa0 sa1a 2 xb xc x xd xe xf xg x 2h x xh1 xh2 xi x 2j xk x xZ x x

Example :

Page 68: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Rajski’s method

G701,11,00

Example : ABCE = (00, 11, 01, 11) single fault test – critical signals areunderlined

E=11,00

A=00,11

B’=00,11

C=01,00,11

B=11,00

G2=01,00,11

G3=00,11

G4=10,11,00

G5=01,11,00

G1=01,00,11

G8=00,11

G6=00,10,11

Page 69: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

Example :UsingRajski’smethod

Page 70: 12/3/2015 Based on text by S. Mourad "Priciples of Electronic Systems" and M. L. Bushnell and V. D. Agrawal, Essentials of Electronic Testing for Digital,

01,00,11

10,00,11

00,11

00,11

10,00,11

01,00,11

00,11

11,00

00,11

00,11

00,11

00,11

11,00

11,00

11,00

11

00,11

Example :UsingRajski’smethod