Professional Documents
Culture Documents
PODEM Algorithm
PODEM Algorithm
TDS I: Lecture 9
D Algorithm
(More Examples)
Lecture 9
TDS I: Lecture 9
Example: A/0
Step 1
D-Drive: Set A = 1
TDS I: Lecture 9
Example: A/0
Step 2
D-Drive : Set f = 0
0
1
Lecture 9
TDS I: Lecture 9
Example: A/0
Step 3
D-Drive : Set k = 1
1
D
0
1
TDS I: Lecture 9
Example: A/0
Step 4
Consistency: Set g = 1
1
0
Lecture 9
1
D
D
TDS I: Lecture 9
Example: A/0
Step 5
Consistency: f = 0
Already set
0
1
TDS I: Lecture 9
Example: A/0
Step 6
Lecture 9
D
D
TDS I: Lecture 9
Example: A/0
Step 7
Consistency: Set B = 0
0
0
1
D
TDS I: Lecture 9
Example s/1
sa1
Lecture 9
TDS I: Lecture 9
10
Example s/1
sa1
0
TDS I: Lecture 9
11
Example s/1
1
1
1 sa1
0
D
D
Lecture 9
TDS I: Lecture 9
12
Example s/1
1
1
1 sa1
0
D
D
1
Copyright 2010, M. Tahoori
TDS I: Lecture 9
13
Example: u/1
Lecture 9
TDS I: Lecture 9
14
Example: u/1
0
sa1
TDS I: Lecture 9
15
Example: u/1
1
0
Lecture 9
0
sa1
TDS I: Lecture 9
0
D
16
Example: u/1
Inconsistency
d = 0 and m = 1
Backtrack
Remove B = 0 assignment
TDS I: Lecture 9
17
Example: u/1
Backtrack
Lecture 9
TDS I: Lecture 9
18
Example: u/1
0
D
sa1
TDS I: Lecture 9
19
Example: u/1
0
D
sa1
1
Copyright 2010, M. Tahoori
Lecture 9
TDS I: Lecture 9
20
10
Example: u/1
1
1
D
0
0
sa1
1
Copyright 2010, M. Tahoori
TDS I: Lecture 9
21
PODEM
Lecture 9
TDS I: Lecture 9
22
11
Motivation
To improved reliability
Search too undirected
Large XOR-gate trees
Must set all external inputs to define output
TDS I: Lecture 9
23
Objectives
bring ATPG closer to propagating D (D) to PO
Backtracing
To obtain a PI assignment given an initial objective
Lecture 9
TDS I: Lecture 9
24
12
TDS I: Lecture 9
25
Put D on k
z
&
e
g
0
d
&
m
&
p
Copyright 2010, M. Tahoori
Lecture 9
TDS I: Lecture 9
26
13
Justify 0 on d
Implication
a
b
z
e
&
g
c
0
d0
&
m
&
p
Copyright 2010, M. Tahoori
TDS I: Lecture 9
27
K still hasnt D
Justify 0 on c
Implication: k=h=m=D
a
b
z
&
e
g
c 0
d0
D
+
hD
&
&
p
Copyright 2010, M. Tahoori
Lecture 9
TDS I: Lecture 9
28
14
Propagate through w
Set g = 1
Implication
a
b
0
1
z
1e
&
g1
c 0
d0
D
+
hD
&
1
+
f1
&
p
Copyright 2010, M. Tahoori
TDS I: Lecture 9
29
Conflict
f is 1 so propagation is blocked
Set b = 0
Implication
0
0
a
b
z
0e
&
g0
c 0
d0
D
+
hD
&
&
w 0
p
Copyright 2010, M. Tahoori
Lecture 9
TDS I: Lecture 9
30
15
Set p = 1
Implication
Test found
abcd = 0001
0
0
a
b
z
0e
&
g0
c 0
d0
D
+
hD
&
&
w 0
f D
D
y
p 1
Copyright 2010, M. Tahoori
TDS I: Lecture 9
31
Another Example
Lecture 9
TDS I: Lecture 9
32
16
Example: S/1
sa1
TDS I: Lecture 9
33
Example: S/1
Initial objective:
sa1
Lecture 9
TDS I: Lecture 9
34
17
Example: S/1
Backtrace from r
1
sa1
TDS I: Lecture 9
35
Example: S/1
Lecture 9
TDS I: Lecture 9
36
18
Example: S/1
Forward implications: d = 0, X = 1
1
0
0
sa1
TDS I: Lecture 9
37
Example: S/1
0
sa1
Lecture 9
TDS I: Lecture 9
38
19
Example: S/1
1
0
sa1
TDS I: Lecture 9
39
Example: S/1
Set B to 1.
Implications in stack: A = 0, B = 1
Lecture 9
sa1
TDS I: Lecture 9
40
20
Example: S/1
Forward implications:
k = 1, m = 0, r = 1, q = 1,Y = 1, s = D, u = D, v=D, Z = 1
0 sa1
1
D
D
1
D
1
TDS I: Lecture 9
41
Example: S/1
X-PATH-CHECK
sa1
Lecture 9
TDS I: Lecture 9
42
21
Example: S/1
TDS I: Lecture 9
43
Example: S/1
Forward implications:
d = 0, X=1, m = 1, r = 0, s = 1, q = 0, Y = 1, v = 0, Z = 1
0
0
1 sa1
0
1
0
1
Lecture 9
TDS I: Lecture 9
44
22
Example: S/1
TDS I: Lecture 9
45
Example: S/1
Lecture 9
TDS I: Lecture 9
46
23
Example: S/1
Set B = 0.
Implications in stack: A = 1, B = 0
1
1
sa1
TDS I: Lecture 9
47
Example: S/1
Forward implications:
d = 0, X = 1, m = 1, r = 0.
0
1
1 sa1
0
0
Lecture 9
TDS I: Lecture 9
1
48
24
Example: S/1
TDS I: Lecture 9
49
Example: S/1
Forward implications:
d = 1, m = 1, r = 1, q = 0, s = D, v = D, X = 0, Y = D
Test found
1
1
Lecture 9
1 sa1
0
D
D
TDS I: Lecture 9
D
D
50
25
PODEM
Major aspects
TDS I: Lecture 9
51
Which PI to Choose?
Decision gate
Imply gate
Logic value at the output of a gate is such that all inputs of the gate must be
at a particular value in order to control its output to the desired value
AND with output 1
Logic value at the output of a gate is such that only one input of the gate
can control its output to the desired value
AND with output 0
The shortest logical path to primary inputs or has the best controllability
The longest logical path to primary inputs or has the worst controllability
Lecture 9
TDS I: Lecture 9
52
26
TDS I: Lecture 9
53
Inconsistencies in PI Assignment
Lecture 9
TDS I: Lecture 9
54
27
Handling Inconsistencies
Backtracking
No inconsistency detected
Continue
Otherwise
Lecture 9
TDS I: Lecture 9
55
28