Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
by
SAMPRAKASH MAJUMDAR, B.Sc.Engr.
A THESIS
IN
ELECTRICAL ENGINEERING
MASTER OF SCIENCE
IN
ELECTRICAL ENGINEERING
Approved
c/
Accepted
May, 1975
T3
ACKNOWLEDGMENTS
I am deeply indebted to Dr. Jagadish C. Prabhakar
for his continuous direction and encouragement, for his
valuable hours of discussion, and for his serving as the
chairman of my committee.
11
TABLE OF CONTENTS
ACKNOWLEDGMENTS
ii
LIST OF TABLES
iv
LIST OF FIGURES
Chapter
I.
II.
INTRODUCTION
Path Sensitization
D-Algorithm
Fault Matrix
Boolean Difference
Partitioning
State-Table Analysis
III.
IV.
CONCLUSIONS
8
12
19
20
27
28
31
31
32
39
40
61
REFERENCES
63
111
LIST OF TABLES
Table
I.
Page
Summary of Fault Detection Techniques
IV
30
LIST OF FIGURES
Figure
Page
2.1.
2.2.
Example of d-algorithm
14
2.3.
17
2.4.
18
2.5.
26
3.1.
34
3.2.
35
3.2a.
3.2b.
36
3.3.
38
3.4.
The M-graph
43
3.5.
Placement of test-points
45
3.6.
48
3.7.
3.8.
3.9.
54
3.10.
55
3.11.
BCD adder/subtracter
56
3.12.
58
3.13.
3.14.
. 36
60
CHAPTER I
INTRODUCTION
A logic circuit, network, or system is a collection of
elements put together to perform a certain specified
function.
the
This model
In
the next
the output and next state if the present inputs are known.
The general state machine model is divided into five
classes:
These machines
2) Class 1 is the
The important
This mechanism is
is called a diagnosis.
of detecting a fault is to apply a set of tests to a network or machine and observe the corresponding output.
If
After
One is
Intermittent fault is
also a possibility.
faults.
hence, designs are required to be simulated before implementing them into the circuit.
However,
Since in calculating a
Such
difficulties is the insertion of extra leads in the circuit solely for testing purposes.
1) the
CHAPTER II
METHODS OF FAULT DETECTION
In this chapter most of the major techniques of fault
detection are described.
Path Sensitization
For combinational logic circuits one powerful approach
to test generation relies on path sensitizing, the application of input such that the output depends directly on the
condition of the lead being tested.
Path sensitization is
With
this method one can determine how the fault can be provoked
and how it can be propagated to the output by means of a
sensitized path or paths from the fault through the associated gate to the output(s) of the network.
Example.
o
u
f-l
c3
N
H
4-
i-l
CO
Qi
W
I
.JG
a
o
Qi
cB
cd
X
W
CM
10
Now a test to determine whether lead 1 (the top input to
the AND gate) is stuck at '1' (s-a-1) would require (a) that
the nominal logic value of the signal on lead one be set
to zero; (b) that the output of the gate becomes one if
and only if lead 1 is s-a-1; and (c) that the change in the
output of the AND gate due to the fault be reflected in
a change in the network output.
Condition (a) is met by setting a=0; condition (b) is
met by setting to one the signal values on both leads 7
and lead 9, the condition (c) by setting to 0 the signal
on lead 12. Another way to state this situation is to
(a) provoke the fault, (b) sensitize the gate under test
and (c) set up a sensitive path from the gate to the
network output.
to the output.
To provoke
But leads 8,
-T~
11
incompatible.
Of
For
'a
f ^
12
altering any arbitrary choices until the conflict is
resolved.
In this method
It was
D-Algorithm is an algorithm
13
It is essentially an
This
The
To propagate
To drive the
implies Og.
To propagate the error on line 9 through gate 12
requires the cube 08^91011^12'
assigned to lines 10 and 11.
^^^
14
H
U
O
rH
fC
I
M-l
O
(U
cd
w
<N
CM
|J4
CNI r o
S5
15
consistency operation.
But 0 1
implies
0^, and 0^0^ implies 1^^^^ which contradicts or is inconsistant to the previous assignment of 0^.
is to be made to find a test.
Therefore a choice
That is,
Roth et al.,
,^^^--^-
16
circuit which is equivalent to the original circuit except
for races.
Applying the
t.
1+1
(2.1)
17
F
s-a -n
-1-
S
,
Fig. 2.3.
18
t.+l
^i
p
1
X
R.+l
L d
0
C!
'^i
' d
s-a-0
" s-^-0
S^+1
Fig. 2.4.
19
Fault Matrix
The fault matrix relates a set of tests to its
associated faults.
20
the sets of tests by representing them as an equivalent
model using only logic gates.
The major problem associated with this method is the
size of the initial input test setfor example a simple
combinational network has an upper bound of 2^ possible
test .inputs, where n is the number of input variables.
Consequently for large variable problems the method soon
becomes unwieldy.
If the
is often the case that a test that has been derived for
one fault will also be valid for the other faults.
It is
In a paper in 1959
21
tool.
Hsiao
and Chia (12), (13) have extended the use of the Boolean
difference to asynchronous circuits.
Gerald
fault situations.
Such ex-
This simplifica-
22
The rest of this chapter will be spent on defining
Boolean difference, its properties, and its application
to error analysis with an example.
Let there be a logic function that has one output F
and n inputs x^, x^, x^. . . .x^, so that F(x) = F(x^, x ,
x^f..).
error, let input x^, then the output would be F(x^, x^, x-,
x.,...x^).
For this
convenient.)
^^
= F(x^,
x^,
x^) F ( x ^ ,
x^,
x^).
(2.2)
a) dF(x) _ dF(x)
^^ dx^
dx^
(2.3)
b) cSF(X) _ dF(X)
^^ dx^
dx.
(2.4)
23
c)
. dF(x)G(x)
"^^
e)
dx^
d F(X)-K;(X)
dx.
(2.5)
^^""^^d^y^^^^^-d^ty-d^
dG(x)
= FH) ^^@m)
" d ^ ^^-^^
dF (x)/r\ dF (x)
^ ^
dG(x) .
dx.
f)
d F(x)-K3(x)
dx.
dF(x)^dG(x)
dx. ^ dx.
1
,^ ,.
(2.7)
(2.8)
This is the
24
of other switches the output F(x) is independent of
position of x..
(2.9)
(2.10)
i
. dF(x) _ ,
^^ dx..1
(2.11)
^^ dF(x)G(x)
dx^
^p(x)^^^
^i
if F(x) is independent of x^
(2.12)
25
.. dF(x)-K;(x) ^ p7^.dG(x)
.^ ^ _.
(2.13)
2^7
*^^^^-3^
= b a(c+d)+cd
= b a+cd
(2.14)
da
= (b+bcd) 0 b c d = be + bd = 1
(2.15)
a(be + bd) = 1
(2.16)
26
Q)
C
0)
u
H
cd
(U
iH
o
o
PQ
M-l
O
r-\
Q)
iH
CM
rl
Cl4
Cd
0^:3
27
which comprises the set of all tests for lead "a" s-a-1.
Partitioning
This method was first proposed by Brule et al., ( 5 ) ,
but the real development was done by Seshu (31). It is
normally applicable to existing rather than proposed
systems, although Marlett (18) used a modified partitioning
technique to compare theoretical designs of computer
central processing units.
The combinational
28
procedure implies that a fixed set of tests is applied and
system identification does not occur until all the
responses are received, whereas the sequential procedure
uses the response of one test to determine the next.
Seshu's paper contains a useful section on the advantages
and disadvantages of the two procedures and the sequential
procedure is now generally accepted as being more efficient
Foremost among the attempts to implement this technique
is the sequential analyzer described by Seshu (30) . The
set of tests can be pre-specified and the analyzer details
the order in which they should be presented depending upon
whether detection or full diagnosis is requiredthe
selection process being assisted by the application of
certain criteria.
Alternatively the analyzer will attempt to drive the
test
29
networksgood or faulty.
30
Ii.
aii
lO
rH
rH
CM
00
CM
n
^
fH
CO
O
'^^
fc
vo
CM
in
CM
^
*
CM
5
8
Propo
<7\
D/S D/O
BuTxpM
D
O
sq.TrEa:HB^
EH
9T3T^irW
0-e-s
I-e-s
aibuTs
0 as
<
quoo
"^^
-H
U-l
H
CQ
-H
Q
exnpcw
0 g
Ipr^cxL-qns
T^QL
<L!
I
2
ii
.a
s
1
I!
CHAPTER III
GRAPH THEORETIC TECHNIQUES OF FAULT DETECTION
Graphical Representation
The application of graph theoretic techniques in
analyzing digital systems and determining the digital
test sequence for fault diagnosis in digital system is
gaining momentum.
The
computer programs.
Any digital system can be looked at from two
distinct levels:
It can be
32
relationship.
into being.
This amounts to
33
types of gates or functional units like counters, adders,
etc.
In partic-
AND, OR, INVERTER, Delay gate and one half of dual flipflop to perform serial binary addition.
This can be
During
34
u
Q)
r\ r^r^
T3
T)
cd
U
cd
^o
o
cd
t1
Qi
cn
1
I
r^
I
-4
PQ
J)
35
iH
CO
0)
u
0>
H
tH
o
H
c
o
H
4J
H
P
J-l
CC
PH
CM
4,
1
t
CO
3
H
fa
<; pq
n It
-4 <
n n
S
36
'd
Cd
CM
/"-S
CO
u
(U
CUTJ
^^TJ
cd
3 v-^
+4 i H
m X
0)
o 4J
PJ ;^
o (U
H >
U
Cd
5?
H
Q) !5
CO
<U42
M CO
a)cM
}4
CO
rH
Cd
o
H
cu
.^
:3
43 Cr>
a.H
Cd tw
OM^
cd
%.
en
tio
y>k
Cd
rO p
CM C
CO
^ S
a
c
u
o
CO r-H
(U H
1
v^ pH
a
Cd (U H
V^rH
W
cd
CM r H
. Cd ix^
CO
T3
C!
Cd
o >-)
..
. X!
tT> PUOJ
H cd
fa Ou X
/~\ J^
rCl <U
N-'
>
37
The connectivity
Then the
38
CM
H
U
>i
+J
H
>
H
4J
O
O
O
LO
-d
(d
(d
td
(U
H
fd
CO
ro
O
iH
iH
iH
_J
u
H
[X4
<d
39
A maximal strongly
no common nodes).
or disjoint if there is no arc from any node in one subgraph to another node in the subgraph.
Behavioral Description
The behavioral description concerns itself with the
input-output characteristics of the elements of the
system as stated before and as such is necessary for
devising the diagnostic tests.
For
this reason, we consider the structure of the interconnections and flow of information first and derive
valuable
A vertex from
40
which a signal can leave is called an exist vertex.
When
In any oriented
An
41
42
is i and whose final vertex is j. For example, the
oriented graph in Figure 3.4 is a M-graph of type M(i x j) .
Let us consider the oriented graph of Figure 3.6.
A measurable set f^ ( 1 x 3 ) is 1, 2, 3, 4, because directed
path p^ = (ab) from 1 to 3 passes vertices 1, 2, 3, and
directed path P2 = (de) from 1 to 3 passes vertices 1, 4, 3,
but there are no connected directed M-graphs of type
M(l X 3) which contain vertex "5." A measurable set
^(1 X 5) can be shown to be (1, 2, 3, 4, and 5).
Let Q be a set of all vertices in all oriented graphs,
then f2 (i x j) = r2-fi(i x j).
If the
f2 (i x k)
43
I
1
Fig. 3.4.
The M-graph.
I
1
44
X j ) 0 fi(i X k)
(3.1)
an
X j)C)
(3.2)
Q(i X k)
^(i X j ) 0 an
X k)
(3.3)
^(i X j ) 0 ^(i X k)
(3.4)
x k).
St., St ,
45
rt
n
Fig. 3.5.
Placement of test-point
46
Let the
NHW
J"
= W4}
However,
47
This partition of
x j ) , p = l , 2....ka
collection of sets
P ) ^ ^ i^(i^ X j^)
^ ^p=l
P
P
(3.6)
oriented graph.
fid X 3) = (1, 2, 3, 4)
fid X 4) = (1, 2, 4)
fi(2 X 5) = (2, 3, 4, 5)
<3.7)
48
Fig. 3.6.
49
a D-partition consists of
fi(l X 3 ) 0 fid X 4) Ofi(2 X 5) = (2, 4)
(3.3)
(3.9)
(3.10)
(3.11)
(3.12)
(3.13)
fid X 3 ) 0 ^ ( 1 X 4 ) 0 ^ ( 2 X 5) = (5)
(3.14)
(3.15)
50
if two vertices v^^ and V2 are in the same set in a Dpartition under a collection M of measurable sets, and one
of these two vertices is faulty, then it is impossible to
determine which of these two vertices is faulty just by
the measurement corresponding to measurable set M.
Thus k-
an oriented
graph is k-distinguishable under a collection of Mmeasurable sets if 1) there exists a set R in a D-partition
of M such that R contains k-vertices and 2) there are no
sets in a D-partition of M which contains more than kvertices.
For example, the oriented graph in Figure 3.6 is
2-distinguishable under a collection M of measurable sets,
fid X 3), fid X 4) and fi(2 x 5), because there is a (2, 4)
in a D-partition {D} of M and there are no sets in {D}
consisting of more than two vertices.
It is to be noted here that an oriented graph G
being k-distinugishable under a collection M of measurable
sets means that there exists a set of k vertices such that
if one of these two vertices is faulty, the measurement
corresponding to these measurable sets cannot
determine
^:5WJJ. ,.--;*r*?5"-
51
52
CO
+J
H
CQ
%
4J
0
U
C
H
U
H
:3
u
u
H
O
cd
H
O
H
H
4J
V^
Cd
CO
fa
<d
PQ
PQ
53
S = A + B
B
(a) Graphical representation of figure 3.7
S = A + B
S = A + B
Fig. 3.8.
54
X
Qi
4J
u
Q)
>
H
4J
Q)
CO
<u
u
a
(U
u
H
CTN
CO
fa
55
CO
0)
-p
u
>
o
c
0
H
td
+J
Q)
(0
(U
Cd
H
CU
fd
ro
fa
56
CO
U
Q)
4J
O
(d
U
+J
to
u
0)
Csj
fd
Q
U
pa
ro
t7>
H
fa
O
Q
57
The circuit of Figure 3.11 can be partitioned into subunits as shown in Figure 3.13.
The test
point can now be shown in the way pointed in the Figure 3.14
thereby attaining complete test of circuit of Figure 3.11.
58
AQ A ^
2 -ijiput
multiplexer
A2 A
Binary
'4
fxill adder
4-bit binary
full adder
Fig. 3.12.
12
3^3
P a r t i t i o n i n g of f i g u r e 3 . 1 1 .
59
Fig. 3.13.
60
10
D
Fiq. 3.14.
CHAPTER IV
CONCLUSIONS
Despite substantial success in improving circuit
reliability in recent years, there is growing interest
in techniques for detecting and locating failures in
complex digital networks.
There are two basic approaches to testing digital
systems:
In functional testing
The tensor
62
theoretic techniques to tensor method of analysis,
thereby having a unified approach of functional and
structural testing.
In the new
REFERENCES
1.
SIM^'voi
7 ' December,
n^"" \Theory
of Boolean Functions,"
iAra,
Vol.^ 7,
1959.
? L F T^^.
?^^'' ^^^*^^ ^ ^ Combinational Logic Nets,"
ifoo,
bb-V^ """ Electronic Compute,r.c . Vol. EC-15,
3.
4.
5.
6.
7.
8.
9.
10.
11.
64
12.
13.
14.
Kautz, W. H. , "Fault Testing and Diagnosis in Combinational Digital Circuits," IEEE Transactions on Computers,
Vol. C-17, 1968, pp. 352-366.
15.
16.
17.
18.
Marlett, R. A., "On the Design and Testing of SelfDiagnosible Computers," Digest of the First Annual
IEEE Computer Conference, September, 1967, pp. 14-16.
19.
20.
21.
22.
II
65
23.
24.
25.
26.
27.
28.
29.
30.
31.