0% found this document useful (0 votes)
6 views41 pages

DFT 3 Simulation Part2

The document discusses VLSI testing, focusing on fault modeling and simulation techniques, including various methods like serial, parallel, and concurrent fault simulation. It highlights the advantages and disadvantages of these techniques, as well as alternatives such as toggle coverage and fault sampling. Additionally, it addresses issues related to fault simulation, such as CPU time, memory requirements, and compatibility with logic simulation.

Uploaded by

omar.sendiony
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views41 pages

DFT 3 Simulation Part2

The document discusses VLSI testing, focusing on fault modeling and simulation techniques, including various methods like serial, parallel, and concurrent fault simulation. It highlights the advantages and disadvantages of these techniques, as well as alternatives such as toggle coverage and fault sampling. Additionally, it addresses issues related to fault simulation, such as CPU time, memory requirements, and compatibility with logic simulation.

Uploaded by

omar.sendiony
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 41

VLSI TESTING

FAULT MODELING & SIMULATION

1
ACKNOWLEDGMENT

• This slides has been inspired and adapted from


• Professor James Chien Mo Li (VLSI Test © National Taiwan University)

2
FAULT SIMULATION
• Introduction
• Fault simulation techniques
 Serial fault simulation
 Parallel fault simulation (1965)
 PPSFP (1985)
 Deductive fault simulation (1972)
 Concurrent fault simulation (1974) *
• Alternatives to fault simulation
• Issues of fault simulation
• Concluding remarks

* Based on textbook
“VLSI Test Principles and Architectures” 3
by Wang, Wu, and Wen
CONCURRENT FAULT SIMULATION [ULRICH 74]
• Observation
 Fault activity is often sparse both in time and space
 Example: g sa0 fault only affects lower part of circuit
• Idea: can we just simulate parts of faulty circuit that differs from good circuit?

a 1
0 0
d 1 1
c 0 1 0/1 f
1 0/1
1 g 1/0
b
g sa0 1/0

Concurrent fault sim. Is


4
event-driven sim. with good/bad events together
VLSI Test 5.4 © National Taiwan University
BAD GATE
• Every good gate has a list of bad gates
• Bad-gate
 Represents fault effect of a fault
 At least one gate input or output differs from its corresponding
good-gate if the fault is present
 A bad gate is denoted by
 Fault: a stuck-at 0 , b stuck-at 0
 Faulty input value, faulty output value

VLSI Test 5.4 © National Taiwan University


EXAMPLE (P1)
• Fault-free simulation, Pattern P1 = 010
• Event-driven simulation
• Good events are events occur in a good circuit

VLSI Test 5.4 © National Taiwan University


EXAMPLE (P1)
• Consider only three faults: A/1, J/0, C/0 (WWW Fig 3.30)
 Good gates in white: G1 ~ G4
 Bad gates in gray: A/1, J/0, C/0
• A bad gate is invisible if its faulty output same as good values
 C/0 J/0 are invisible
• A bad gate is visible if its faulty output different from good values
 A/1 is visible

VLSI Test 5.4 © National Taiwan University


BAD EVENTS
• Bad events: Events in faulty circuit, and different from good events
• Good events activate both good-gates and bad-gates for evaluation
• Bad events only activate bad-gates of same fault for evaluation
• Only events of visible bad gates will be propagated
 Invisible bad gates will not trigger any bad event
• Example:
 Good events in white: A u→0, H u→0 , …
 Bad events in gray
 G2 A/1: u→1

8
EXAMPLE (P1)
• Bad gate diverges from its good gate if its faulty I/O values are
different from good values
• Example:
 Bad gate (G4 A/1) diverges from its good gate
 A/1 is detected by P1

A/1: u→0

VLSI Test 5.4 © National Taiwan University


EXAMPLE (P2)
• P1 → P2 010 → 001; Note: no other good event inside circuit
• C/0 becomes newly visible
• A/1, C/0 detected by P2 Although A/1 has been detected,
it is not dropped for demo purpose
0

C/0: 1→0

10

VLSI Test 5.4 © National Taiwan University


EXAMPLE (P3)
• P2→ P3 001→100
• Bad gate converges (disappear) to its good gate if its faulty I/O
values become same as good values (and they are not local
faults)
• Example : Bad gates A/1 C/0 converged
 Bad gate J/0 diverged
 J/0 detected by P3

J/0: 0→1

11

VLSI Test 5.4 © National Taiwan University


CONCURRENT FAULT SIM. FLOW
• WWW Fig 3.33

12

VLSI Test 5.4 © National Taiwan University


CONCURRENT FAULT SIMULATION SUMMARY
• Advantages
 Even faster than deductive fault simulation
 Delay fault can be supported
 Sequential fault simulation can be supported
• Disadvantage
 Difficulty in memory management
 Memory requirement not predictable

13

VLSI Test 5.4 © National Taiwan University


FFT
• Q1: In P2, why no bad events there?
• Q2: Why delay fault is supported?
• Q3: Why sequential circuit ok?
Q: why no bad events here?

C/0: 1→0 14

VLSI Test 5.4 © National Taiwan University


COMPARISON OF TECHNIQUES

Items Serial PPSFP Deductive Concurrent

unknown logic ☺ ☺  ☺
value
Delay model ☺   ☺

Run time  ☺ ☺ ☺

Sequential ☺  ☺ ☺
circuits
Memory ☺ ☺  

15

VLSI Test 5.7 © National Taiwan University


MOTIVATING PROBLEM
• Boss: Why can’t we speed up design sign-off?
• You: But the fault simulation is slow…
• Boss: We do not need exact fault coverage. Just give me an
estimation and DO IT FAST!

What Should You Do? 16

VLSI Test 5.6 © National Taiwan University


ALTERNATIVES TO FAULT SIMULATION
• Q: Is exact fault simulation necessary?
 Exact fault simulation is too expensive
 Sometimes, we just want to know approximate fault coverage
 with reasonable error

• Approximation is good for


 DFT check in early design phase
 Functional test pattern evaluation
• Approximation is NOT good for
 ATPG
 Diagnosis

17

VLSI Test 5.6 © National Taiwan University


TOGGLE COVERAGE (DEF-1)
 # of different values in node i
toggle coverage = all nodes i
2  total # of nodes
# = numbers
0 0 1 0 0 0

1 1 0
1 1 0
1 0 0

0 1 0 1 1 0 1 1 0 0 0 1

Toggle Coverage = 17/18 =94%


18

VLSI Test 5.6 © National Taiwan University


TOGGLE COVERAGE
☺ Advantage: Toggle coverage is easy to obtain
 Logic simulation only, NO fault simulation
 Disadvantage: Toggle coverage is very optimistic
 Fault activation only, NO fault propagation

0 0 1 0 0 0

1 1 0
1 1 0
1 0 0

0 1 0 1 1 0 1 1 0 0 0 1

TC is Upper Bound of FC
Fault Coverage = 11/18 = 61% see 5.3 P.10 19

5 Toggle Coverage = 17/18 =94%


VLSI Test 5.6 © Nation al Taiwan University
QUIZ
Q: Apply 3 patterns to this circuit of 7 nodes. Toggle coverage =?
A:

101
a

100
b

20

VLSI Test 5.6 © National Taiwan University


TOGGLE COVERAGE (DEF-2)
 # of different transitions in node i
toggle coverage = all nodes i
2  total # of nodes

0 0 1 0 0 0

1 1 0
1 1 0
1 0 0

0 1 0 1 1 0 1 1 0 0 0 1

Toggle Coverage = 9/18 =50%


DEF-2 more stringent 21

VLSI Test 5.6 © National Taiwan University


FAULT SIMULATION
• Introduction
• Fault simulation techniques
• Comparison of fault simulation
• Alternatives to fault simulation
 Toggle coverage
 Fault sampling (1974)
 Critical path tracing (1979)
• Issues of fault simulation
• Concluding remarks

22

VLSI Test 5.6 © National Taiwan University


FAULT SAMPLING [BUTLER 74]
• Idea: Actual fault simulation of whole circuit is too slow
Can we just sample a small portion of faults?
 Like Polling before election
• Notation
 M: number of total faults
m: number of sampled faults
K: number of total faults detected (unknown)
k: number of sampled faults detected
 Actual fault coverage F = K/M (unknown)
sampled
 Sampled fault coverage f = k/m

f=k/m

F=K/M
23
total population
9 VLSI Test 5.6 © National Taiwan University
FAULT SIMULATION
• Introduction
• Fault simulation techniques
• Comparison of fault simulation
• Alternatives to fault simulation
 Toggle coverage
 Fault Sampling (1974)
 Critical path tracing (1979)
• Issues of fault simulation
• Concluding remarks

24

VLSI Test 5.6 © National Taiwan University


CRITICAL PATH TRACING (CPT) [ROTH 79]
• x is Critical Signal
x’s value change causes some primary output values to change
• Critical path
 All signals on this path that are critical signals
• Example: critical signals are circled

1 0 0
1 0 0
1 1 0

Note: In timing analysis, critical path has different definition


Critical path = Path with the longest path delay

25

VLSI Test 5.6 © National Taiwan University


CPT ALGORITHM [ABRAMOVICI 84]
• Critical Path Tracing: Start from primary outputs to primary inputs
If gate output is critical, backtrace its critical gate input(s)
• Example: fanout-free cone (FFC)
 Critical signals: a, b, f, g. Critical paths: afg and bfg

1 a 1
f
1 b
g 1
1 c
0 d 0

CPT (O) /*O is a node*/


1. foreach gate input g of O
2. if (g is critical signal) then
3. CPT (g) ;
4. else return; 26

VLSI Test 5.6 © National Taiwan University


CPT THEOREM
THEOREM:
If critical signal g has good value v, then g stuck-at v’ fault is detected

• Example: Detected faults: a SA0, b SA0, f SA0, g SA0

1 a 1
f
1 b
g 1
1 c
0 d 0

• CPT Advantages:
 CPT can be done in linear time
 Only logic simulation needed for FFC
 Used in first commercial ATPG tool, LASER

CPT Is Very Fast … but 27

VLSI Test 5.6 © National Taiwan University


HOW ABOUT FANOUT STEM?
• L is critical; F is non-critical
• E is non-critical

1 1
0
1
1

0 0
1 1
?

Is This Always The Case? 28


Fanout stems are non-critical?
19 VLSI Test 5.6 © National Taiwan University
QUIZ
Q: Determine if fanout stem E is critical or not

A:

CPT Does NOT Work Well


29
when Fanout Reconverges
20 VLSI Test 5.6 © National Taiwan University
SO… WHAT SHOULD WE DO?
• 1. Count fanout stems as non-critical
Fast but fault coverage pessimistic

• 2. Only fault simulate fanout stems, CPT in fanout-free cones
 Slow but fault coverage accurate

fanout-free cone 30
fanout stem
21 VLSI Test 5.6 © National Taiwan University
SUMMARY
• Alternatives to fault simulation, fast but inaccurate

 Toggle coverage
Only logic simulation needed
 Fault Sampling
 Only fault simulate a small portion of faults
 Critical path tracing
 Linear time for fanout-free cones
 Still need fault simulation when fanouts reconverge

31

VLSI Test 5.6 © National Taiwan University


FAULT SIMULATION
• Introduction
• Fault simulation techniques
• Alternatives to fault simulation
• Issues of fault simulation
• Conclusion

32

VLSI Test 5.7 © National Taiwan University


ISSUES OF FAULT SIMULATIONS
• Long CPU time
 Distributed computing, or Fault sampling
• Large memory requirement
 Partition faults into multiple simulation passes
• Potentially detected faults
• Compatibility with logic simulation

33

VLSI Test 5.7 © National Taiwan University


SPEED AND MEMORY SOLUTIONS
• 1. Multiple-pass fault simulation
 Run only small portion of faults per pass
• 2. Distributed fault simulation
 Distribute faults to more than one computers
• 3. Emulation
 Use hardware emulator, like FPGA

Fault List #1

• *A simulation pass is a single simulation run


 from beginning to end of test patterns

34

VLSI Test 5.7 © National Taiwan University


POTENTIALLY DETECTED FAULTS
• DEF: faults that may or may not be detected in practice
 Detection cannot be determined by fault simulation
• Possible reasons for potentially detected faults
 Bus contention, Oscillation, High impedance, Unknown
• Examples:
1

1 c=0

1
b X
1 X SA 1

SA 0 Fault detected?
• Different tools have different ways to calculate FC
35
 Please see tool manual for details
VLSI Test 5.7 © National Taiwan University
COMPATIBILITY WITH LOGIC SIMULATION
• To speed up fault simulation, many tools requires circuits to be
represented in a library models pre-defined by tools
• Functional verification logic simulations often involve mixed-level
codes, which make such modeling very difficult
 Circuit delay
 RTL behavior description
 User Defined Primitives (UDP)
 DFF, MUX

36

VLSI Test 5.7 © National Taiwan University


FAULT SIMULATION
• Introduction
• Fault simulation techniques
• Comparison of fault simulation
• Alternatives to fault simulation
• Issues of fault simulation
• Conclusion

37

VLSI Test 5.7 © National Taiwan University


COMMERCIAL TOOLS
• Cadance
 Verifault
• Mentor Graphic:
 Fastscan, flextest
• Synoopsys
 Tetramax
• Syntest
 Turboscan
 TurboFault

38

VLSI Test 5.7 © National Taiwan University


REFERENCES
• [Abramovici 1984] M. Abramovici, P. R. Menon, and D. T. Miller, “Critical Path Tracing:
An Alternative to Fault Simulation,” IEEE Design and Test of Computers, 1984.
• [Armstrong 1972] D. B. Armstrong, A deductive method for simulating faults in logic
circuits, IEEE Trans. Comput., C-21(5), 464–471, 1972.
• [Butler 1974] T. T. Butler, T. G. Hallin, J. J. Kulzer, and K. W. Johnson, LAMP:
Application to switching system development, Bell System Tech. J., 53, 1535–1555,
1974.
• [Cheng 1989] W. T. Cheng and M. L. Yu, Differential fault simulation: A fast method
using minimal memory, in Proc. Des. Automat. Conf., June 1989, pp. 424–428.
• [Jain 1985] S. K. Jain and V. D. Agrawal, Statistical fault analysis, IEEE Des. Test
Comput., 2(1), 38–44, 1985.
• [Seshu 1965] S. Sesuh and D. N. Freeman, On improved diagnosis program, IEEE
Trans. Electron. Comput., EC-14(1), 76–79, 1965.
• [Ulrich 1974] E. G. Ulrich and T. Baker, Concurrent simulation of nearly identical
digital networks, IEEE Trans. Comput., 7(4), 39–44, 1974.
• [Waicukauski 1985] J. A. Waicukauski, E. B. Eichelberger, D. O. Forlenza, E.
Lindbloom, and T. McCarthy, Fault simulation for structured VLSI, Proc. VLSI Syst.
Des., 6(12), 20–32, 1985.

39

VLSI Test 5.7 © National Taiwan University


COMPARISON OF TECHNIQUES

Items Serial PPSFP Deductive Concurrent

unknown logic ☺ ☺  ☺
value
Delay model ☺   ☺

Run time  ☺ ☺ ☺

Sequential ☺  ☺ ☺
circuits
Memory ☺ ☺  

40

VLSI Test 5.7 © National Taiwan University


CONCLUSION
• Usage of fault simulation
 ATPG, fault grading, diagnosis
• Techniques
 Serial, parallel, PPSFP, deductive, concurrent
• Most popular technique in industry now
 PPSFP is simple for comb. ckt (or seq. ckt with full scan)
 Concurrent is good for both comb./seq. ckt

41

VLSI Test 5.7 © National Taiwan University

You might also like