1. Boolean Differences
Examples
Fault Diagnosis and Failure Tolerance
Alexander Kwasi Amoah
Kwame Nkrumah University of Science and Technology
Department of Computer Engineering, Student
4th May 2017
2. Outline
Boolean Difference in Simple Terms Illustration
Example A
Dealing with faulty primary input
Example B
Dealing with faulty internal node
Example C
When faults cannot be detected by any input vector
2
4. Example A - Dealing with faulty primary input
Using Boolean Difference, create a test for the circuit shown below with a fault y SA0
4
5. Example A - Solution
Objective: Find test vectors that can test for SA0 at node y using Boolean
Difference method
Output of fault-free circuit, f, is given by 𝑓 = 𝑥. 𝑦 + 𝑦. 𝑧
Output of the faulted circuit (y SA0. i.e. put y = 0) is given as
𝑔 = 𝑥. 𝑦 + 𝑦. 𝑧 = 𝑧
Next, we compute T as 𝑇 = 𝑓⨁𝑔 = 𝑓𝑔 + 𝑓 𝑔, where T = Test
: 𝑇 = 𝑥. 𝑦 + 𝑦. 𝑧 𝑧 + 𝑥. 𝑦 + 𝑦. 𝑧 𝑧
: 𝑇 = 𝑥. 𝑦 𝑦. 𝑧 𝑧 + 𝑥. 𝑦. 𝑧
5
6. Example A – Solution : cont.
: 𝑇 = 𝑥 + 𝑦 𝑦 + 𝑧 𝑧 + 𝑥. 𝑦. 𝑧
: 𝑇 = 𝑥 + 𝑦 𝑦 + 𝑧 𝑧 + 𝑥. 𝑦. 𝑧
: 𝑇 = 𝑥 + 𝑦 𝑦𝑧 + 𝑥. 𝑦. 𝑧
: 𝑇 = 𝑥𝑦𝑧 + 𝑥𝑦 𝑧
But T must be a 1 for the required test vectors distinguishing between the
two circuits: 𝑇 = 𝑥𝑦𝑧 + 𝑥𝑦 𝑧 = 1
For y SA0 we let y = 1
: 𝑇 = 𝑥𝑧 + 𝑥 𝑧 = 1
6
7. Example A – Solution : Truth Table for T7
Truth Table for 𝑻 = 𝒙𝒛 + 𝒙 𝒛 T = 1 Note that y = 1
x z 𝒙 𝒛 𝒙𝒛 𝒙 𝒛 𝑻 = 𝒙𝒛 + 𝒙 𝒛 Condition Satisfied Required Test Vector (xyz)
0 0 1 1 0 0 0 No -
0 1 1 0 1 0 1 Yes 011
1 0 0 1 0 1 1 Yes 110
1 1 0 0 0 0 0 No -
Thus a test has been successfully created to test the circuit at SA0 at node y. Meaning
that applying the test vectors identified, (011 and 110), different outputs will be
realized for the two circuits as shown in the figure on next slide
9. Example A – Solution : 0s and 1s Application, cont.9
10. Example B - Dealing with faulty internal node
Using Boolean Difference, create a test for the circuit shown below with a fault w SA0
10
11. Example B - Solution
Objective: Find test vectors that can test for SA0 at node w using Boolean
Difference method
Output of fault-free circuit, f, is given by 𝑓 = 𝑥. 𝑦 + 𝑦. 𝑧
Output of the faulted circuit (w SA0. i.e. put 𝑤 = 𝑦. 𝑧 = 0) is given as
𝑔 = 𝑥. 𝑦
Next, we compute T as 𝑇 = 𝑓⨁𝑔 = 𝑓𝑔 + 𝑓 𝑔, where T = Test
: 𝑇 = 𝑓⨁𝑔 = 𝑥. 𝑦 + 𝑦. 𝑧 𝑥. 𝑦 + (𝑥. 𝑦 + 𝑦. 𝑧)𝑥. 𝑦
: 𝑇 = (𝑥. 𝑦)( 𝑦. 𝑧)𝑥. 𝑦 + (𝑥. 𝑦 + 𝑦. 𝑧)𝑥. 𝑦
11
12. Example B – Solution : cont.
: 𝑇 = ( 𝑥 + 𝑦)(𝑦 + 𝑧)𝑥. 𝑦 + (𝑥. 𝑦 + 𝑦. 𝑧)( 𝑥 + 𝑦)
: 𝑇 = 𝑥. 𝑦. 𝑧 + 𝑦. 𝑧
: 𝑇 = 𝑦. 𝑧( 𝑥 + 1)
: 𝑇 = 𝑦. 𝑧
But T must be a 1 for the required test vectors distinguishing between the
two circuits: 𝑇 = 𝑦. 𝑧 = 1
For w SA0 we let 𝑤 = 𝑦. 𝑧 = 1
: 𝑇 = 𝑤 = 𝑦. 𝑧 = 1
12
13. Example B – Solution : Truth Table for T13
Truth Table for 𝑻 = 𝒚. 𝒛 T = 1 Note that x = X
y z 𝒚 𝑻 = 𝑦. 𝑧 Condition Satisfied Required Test Vector (xyz)
0 0 1 0 No -
0 1 1 1 Yes X01
1 0 0 0 No -
1 1 0 0 No -
Thus a test has been successfully (Test Vectors = 001 and 101) created to test the
circuit at SA0 at node w. Meaning that applying the test vectors identified, different
outputs will be realized for the two circuits as shown in the figure on next slide
14. Example B – Solution : 0s and 1s Application14
15. Example B – Solution : 0s and 1s Application, cont.15
16. Example C - When faults cannot be detected by any input vector
Using Boolean Difference, create a test for the circuit shown below with a fault z SA0
16
17. Example C - Solution
Objective: Find test vectors that can test for SA0 at node z using Boolean
Difference method
Output of fault-free circuit, f, is given by
𝑓 = 𝑥. 𝑦 + 𝑥. 𝑦. 𝑧 = 𝑥. 𝑦(1 + 𝑧) = 𝑥. 𝑦
Output of the faulted circuit (z SA0. i.e. put 𝑧 = 0) is given as 𝑔 = 𝑥. 𝑦
Next, we compute T as 𝑇 = 𝑓⨁𝑔 = 𝑓𝑔 + 𝑓 𝑔, where T = Test
: 𝑇 = 𝑓⨁𝑔 = 𝑥. 𝑦 𝑥. 𝑦 + 𝑥. 𝑦 𝑥. 𝑦 = 0
The condition for testability (𝑓⨁𝑔 = 1) cannot be satisfied, hence, the
fault is undetectable
17
19. 19 Differential Fault
Fault ListIntersection
Deductive Simulation
Thank you
Not leaving without saying a big…
Presentation by
Alexander K. Amoah
Editor's Notes
Outline of the presentation
Boolean Differences
In this method, an equation describes the set of tests for a given fault. The equation is usually quite complex, and a large part of the work involves reducing the equation to a manageable size.
Given a function 𝐹 that describes the behavior of a digital circuit, if a fault occurs that transforms the circuit into another circuit whose behavior is expressed by 𝐹 ∗ , then the 1-points of the function 𝑇,
𝑇 = 𝐹 ⊕ 𝐹 ∗ = 𝐹 𝐹 ∗ +𝐹 𝐹 ∗
define the complete set of tests capable of distinguishing between 𝐹 and 𝐹 ∗ .
For instance when you take the vectors like xyz = (111) and (001), one cannot tell the output difference of the fault free and faulted circuits, as shown in the figures below