Module 4
Revision
Question 1: Illustrate the fault table method for effective test
generation for the circuit whose Boolean function is z = x1x2’ +
x3.
• Step-1: Draw the logic circuit diagram
• Step-2: Name the terminals a, b, c, and d.
2
Contd…
• Step-3: Construct the fault table.
3
Contd…
• Step-4: Identify the equivalent faults.
• Here, a, b, and c stuck at 0 yields same output for all input
combinations. So, they are indistinguishable or equivalent
faults.
• Similarly, c and d stuck at 1 yields same output for all input
combinations. So, they are equivalent faults.
4
Contd…
• Step-5: Construct the fault cover table.
5
Contd…
• Step-6: Identify essential test vectors.
6
Contd…
• Step-7: Identify the minimum test set.
• Here, the minimum test set is {000, 100, 110, (001, or 011, or
111)}
7
Question 2: Illustrate the fault table method used for effective test
set generation for the circuit whose Boolean function is z = x1’x2
+ x3.
• Step-1: Draw the logic circuit diagram
• Step-2: Name the terminals a, b, c, and d.
8
Contd…
• Step-3: Construct Fault table
9
Contd…
• Step-4: Identify equivalent faults.
• Here, a, b, and c stuck at 0 yields same output for all input
combinations. So, they are indistinguishable or equivalent
faults.
• Similarly, c and d stuck at 1 yields same output for all input
combinations. So, they are equivalent faults.
10
Contd…
• Step-5: Construct Fault cover table.
11
Contd…
• Step-6: Identify Essential Test Vectors.
• Identify the columns with single ‘x’ in the fault cover table. The
input combination corresponding to that ‘x’ is an essential test
vector.
• In this example, 000, 010, and 110 are essential test vectors
(ETV).
12
Contd…
• Step-7: Identify the minimum test set.
• Here, the minimum test set is {000, 010, 110, (001, or 101, or
111)}
13
Question 3: Using path sensitization technique, find the test set for
the following faults.
(i) SA0 at x3 (ii) SA1 at x3 (iii) SA0 at g (iv) SA1 at g
14
Contd…
• (i) SA0 at x3
• Step 1: Fault activation – x3 is
the input of a NOT gate. To test
for SA0 at x3, set x3 = 1.
• Without fault, the output of
NOT gate will be 0. With fault,
the output of NOT gate is 1.
15
Contd…
• Step-2: Fault Propagation
• An s-a-0 fault at the input of a NOT gate is propagated as s-a-1
fault at its output.
• An s-a-1 fault at the input of a NOT gate is propagated as s-a-0
fault at its output.
• An s-a-0 fault at the input of OR/AND gate is propagated as s-
a-0 fault at its output.
16
Contd…
• An s-a-1 fault at the input of OR/AND gate is propagated as s-
a-1 fault at its output.
• Here, output z will have s-a-1 fault if s-a-0 at x3 is propagated.
17
Contd…
• Step 3: Backward Tracing
• Test vector: {11111}
18
Contd…
• (ii) SA1 at x3
• Step 1: Fault activation
19
Contd…
• Step-2: Fault Propagation
20
Contd…
• Step 3: Backward Tracing
• Test vector: {11011}
21
Contd…
• (iii) SA0 at g
• Step 1: Fault activation
22
Contd…
• Step-2: Fault Propagation
23
Contd…
• Step 3: Backward Tracing
• Test vector: {11101}
24
Contd…
• (iv) SA1 at g
• Step 1: Fault activation
25
Contd…
• Step-2: Fault Propagation
26
Contd…
• Step 3: Backward Tracing
• Test vector: {00101}
27
Question 4: Using path sensitization technique, find the test set for
the fault SA1 at g in the following circuit.
28
Contd…
• Step 1: Fault activation
29
Contd…
• Step-2: Fault Propagation
30
Contd…
• Step 3: Backward Tracing
• Test vector: {(00100), or (01100), or (10100) }
31
Question 5: Using Boolean difference, find the test vectors for sa0
fault on input line 1 and sa1 fault on the internal line 2 of the
circuit given below.
32
Contd…
• Step 1: Find the expression for output
• z = ( x1’ + x2 ) x3’
• Step 2: Compute the Boolean difference w.r.t x1
• ∂f/∂x1 = ( x2 x3’ )⊕ x3’ = x2’ x3’
• Step 3: Generate test vectors for SA1 at x1 by x1’ ∂f/∂x1 = 1
• i.e., x1’ x2’ x3’ = 1 T = {000}
33
Contd…
• Step 4: Compute the Boolean difference w.r.t x3’
• ∂f/∂x3’ = (x1’ + x2)⊕ 0 = x1’ + x2
• Step 3: Generate test vectors for SA1 at x3’ by x3 ∂f/∂x3’ = 1
• i.e., x1’ x3+ x2 x3 = 1 T = {0 x2 1, x11 1}
34
Question 6: Using the Boolean difference method find the test
vector for the logic function f = x y + y’ z to detect faults (i) SA0
at y (ii) SA1 at y
• Step 1: Compute the Boolean difference w.r.t y
• ∂f/∂y = ( x⋅1 + 0.z )⊕( x⋅0 + 1.z) = x ⊕ z
• Step 2: Generate test vectors to detect SA0 at y by y. ∂f /∂y =
1. i.e., y x’ z + y x z’ = 1 T = {011, 110}
• Step 3: Generate test vectors to detect SA1 at y by y’. ∂f/∂y = 1.
i.e., y’ x’ z + y’ x z’ = 1 T = {001, 100}
35
Question 7: A circuit realizes the function z=x1’x4+x2’x3+x1x4’.
Using the Boolean difference method, find the test vectors for
SA0 faults and SA1 faults on the input line x1 of the circuit.
• Step 1: Compute the Boolean difference
• ∂f/∂x1=(0.x4+x2’x3+1.x4’)⊕(1.x4+x2’x3+0.x4’)=(x2’x3+x4’)⊕
(x4+x2’x3) = x2+x3’
• Step 2: Generate test vectors to detect SA0 at x1 by x1. ∂f/∂x1=1.
• i.e., x1 x2 + x1 x3’ = 1 T = {1 1 x3 x4, 1 x2 0 x4}
• Step 3: Generate test vectors to detect SA1 at y by x1’. ∂f/∂x1 =1.
• i.e., x1’ x2 + x1’ x3’ = 1 T = {0 1 x3 x4, 0 x2 0 x4}
36
Question 8: Using the Boolean difference method, find the test
vectors for SA0 faults and SA1 faults at node w of the following
circuit.
37
Contd…
• Step 1: Find the expression for output
• z = x y + y’ z = x y + w
• Step 2: Compute the Boolean difference w.r.t w
• ∂f/∂w = 1⊕ x y = x’ + y’
• Step 3: Generate test vectors for SA0 at x1 by w ∂f/∂w = 1
• i.e., w x’ + w y’ = 1 or x’ y’ z + y’ z = 1 or y’ z = 1 T = {x 0
1}
38
Contd…
• Step 4: Generate test vectors for SA0 at x1 by w’ ∂f/∂w = 1
• i.e., w’ x’ + w’ y’ = 1 or (y’ z)’ x’ + (y’ z)’ y' = 1 or (y + z’) x’
+ (y + z’) y’ = 1 or x’ y + x’ z’ + y’ z’ = 1 or x’ y + y’ z’ =1
• T = {0 1 z, x 0 0}
39
Question 9: Using the Boolean difference method, find the test
vectors for SA0 fault at node z of the following circuit.
40
Contd…
• Step 1: Output Expression f = x y + x y z
• Step 2: Compute the Boolean difference
• ∂f/∂z = (x y + x y.1) ⊕ (x y + x y.0)
= (x y) ⊕ (x y) = 0
• Step 3: Condition to detect s-a-0 is z. ∂f/∂z = 1. But this condition
cannot be satisfied Fault is undetectable (Reason: redundancy in
the circuit)
41
Question 10: Find the test vectors for all SA0 and SA1 faults of the
circuit whose Boolean function is x1x2’+x3x4 using Kohavi
algorithm.
x3x4(2211)
• Step 1: a-test x 3x 4
x 1x 2 00 01 11 10
00 1
Minterms Cubes
01 1 x 1x 2 ’
x 1x 2 ’ 1022 (1022)
11 1
x 3x 4 2211
10 1 1 1 1
Table for a-tests Corresponding K-map
42
Contd…
• To derive the a-tests, consider each cube and mark a minterm that
belongs to only that cube.
• For cube 1022, minterm 8 or 9 or 10 can be used.
• For cube 2211, minterm 3 or 7 or 15 can be used.
• a-test vectors={1000 or 1001 or 1010, 0011 or 0111 or 1111}
• To derive the b-tests, consider each cube and mark all the adjacent
cubes. Choose a set of minterms that will cover all these subcubes
but not present in the function.
43
x 3x 4
x 1x 2 00 01 11 10
00
01
Cubes Adjacent
11
1022 1122
10
1022 0022
2211 2201 Corresponding map
2211 2210 Minterm Cubes covered
Table for b-tests 1 0022,2201
◦ Test set={0001,1110} 14 1122,2210 44
Question 11: Find the test vectors for all SA0 and SA1 faults of the
circuit whose Boolean function is x1x2+x1x3’x4’+x2x4 using
Kohavi algorithm.
• Step 1: a-test
• * denotes the minterms that belong to only one group.
• Test set: {1000, 1110, 0101 or 0111}
45
Contd…
• Step 2: b-test
• Test set: {0100, 1001, 1010}
46