atpg and faultsimulationvirazel/cours/mea4 - test/ch3 atpg... · 3 what is a test? x 1 0 0 1 0 1 x...
TRANSCRIPT
![Page 2: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/2.jpg)
2
What is a test?
X100101X
Stuck-at-0 fault
1/0
Fault activation
Path sensitization
Primary inputs(PI)
Primary outputs(PO)
Combinational circuit
1/0
Fault effect
![Page 3: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/3.jpg)
3
What is a test?
X100101X
Stuck-at-0 fault
1/0
Fault activation
Path sensitization
Primary inputs(PI)
Primary outputs(PO)
Combinational circuit
1/0
Fault effect
Test VectorTest Response
![Page 4: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/4.jpg)
Examplen Generate a test for e stuck-at-1
a
b c
d
e
f
g
Sa1
4
![Page 5: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/5.jpg)
Examplen 1) Activate the fault
a
b c
d
e
f
g
0
5
![Page 6: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/6.jpg)
Examplen 1) Activate the fault
a
b c
d
e
f
g
0/1
6
![Page 7: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/7.jpg)
Examplen 1) Activate the fault
a
b c
d
e
f
g
0/1
Fault Effect
7
![Page 8: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/8.jpg)
Examplen 1) Propagate the fault effect
a
b c
d
e
f
g
0/10/1
8
![Page 9: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/9.jpg)
Examplen 1) Propagate the fault effect
a
b c
d
e
f
g
0/10/1
9
![Page 10: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/10.jpg)
Examplen 1) Propagate the fault effect
a
b c
d
e
f
g
0/10/1
0
0/1
10
![Page 11: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/11.jpg)
Examplen 1) Propagate the fault effect
a
b c
d
e
f
g
0/10/1
0
0/1
11
![Page 12: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/12.jpg)
Examplen Justification
a
b c
d
e
f
g
0/10/1
0
0/1
0
12
![Page 13: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/13.jpg)
Examplen Justification
a
b c
d
e
f
g
0/10/1
0
0/1
01
1
13
![Page 14: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/14.jpg)
Examplen Justification
a
b c
d
e
f
g
0/10/1
0
0/1
01
1
0
14
![Page 15: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/15.jpg)
Some Considerationsn Test is easyn But….
15
![Page 16: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/16.jpg)
Some problems (the complexity)
2.2 Billion Transistors16
![Page 17: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/17.jpg)
Some problems (the circuit)n Generate a test for c stuck-at-1
a
b c
d
e
f
g
Sa1
17
![Page 18: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/18.jpg)
Some problems (the circuit)n c stuck-at-1 is an untestable fault
a
b c
d
e
f
g
0/1
11
10/1 0/10
0
1
18
![Page 19: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/19.jpg)
Goalsn You must use the appropriate tool
n Automatic Test Pattern Generator (ATPG)
19
![Page 20: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/20.jpg)
ATPG Architecture
20
Circuit description
Reduced Fault List
Test Pattern
Fault Simulator
Fault Coverage
TPGAlgorithm
Fault Manager
![Page 21: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/21.jpg)
ATPG Architecture
21
Circuit description
Reduced Fault List
Test Pattern
Fault Simulator
Fault Coverage
TPGAlgorithm
Fault ManagerFault Coverage (FC) = # Detected Faults/#Total Faults
![Page 22: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/22.jpg)
The test plann Step 1:
n Identify the set of target faults (complete fault list).
22
![Page 23: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/23.jpg)
The test plann Step 1:
n Tools – Fault list generatorn (One of the components of the Fault Manager).
23
Circuit description
Fault List Generator
Complete Fault List
![Page 24: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/24.jpg)
The test plan (cont’d)n Step 1:
n Identify the set of target faults (complete fault list).
n Step 2:n Identify the minimum set of distinct target
faults (fault collapsing)
24
![Page 25: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/25.jpg)
The test plann Step 2:
n Tools – Fault collapser (One of the components of the Fault Manager).
25
![Page 26: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/26.jpg)
Fault Manager
26
Circuit description
Fault List Generator
Complete Fault List
Fault CollapserReduced Fault List
![Page 27: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/27.jpg)
Fault Manager
27
Circuit description
Reduced Fault ListFault Manager
Test Pattern
Test Pattern Generator
Fault Coverage
![Page 28: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/28.jpg)
The test plan (cont’d)n Step 2:
n Identify the minimum set of distinct target faults (fault collapsing)
n Step 3:n Generate, at no charge, an initial set of
patterns (manually, from design validation, randomly, ...)
28
![Page 29: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/29.jpg)
The test plan (cont’d)n Step 3:
n Generate, at no charge, an initial set of patterns (manually, from design validation, randomly, ...)
n Step 4:n Update the list of detected faults (fault
simulation)
29
![Page 30: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/30.jpg)
Step 4n Tools
n Fault Simulators: identify the set of faults covered by each test pattern.
30
![Page 31: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/31.jpg)
Fault Simulator
31
Circuit description
Reduced Fault List
Test Pattern
Fault Simulator
Fault Coverage
Detected Faults
Update
![Page 32: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/32.jpg)
The test plan (cont’d)n Step 4:
n Update the list of detected faults (fault simulation)
n Step 5:n Generate a set of patterns to cover the
uncovered faults (TPG)
32
![Page 33: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/33.jpg)
Step 5n Tools
n ATPG: Automatic Test Pattern Generator
33
![Page 34: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/34.jpg)
TPG
34
Circuit description
Reduced Fault List
Test Pattern
Fault Simulator
Fault Coverage
Detected Faults
TPGAlgorithm Fault Selector
Target Fault
![Page 35: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/35.jpg)
n They cycle through three sub-phases:n target fault selectionn Pattern generation n Covered fault list updating.
35
![Page 36: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/36.jpg)
The test plan (cont’d)n Step 5:
n Generate a set of patterns to cover the uncovered faults (TPG)
n Step 6 (optional):n Testability analysis
n Step 7 (optional):n Compact test pattern set.
36
![Page 37: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/37.jpg)
Step 6n Goal
n Estimate the effort needed to test the UUT:n Pattern length n Fault coverage n CPU time n ...n Identify hard-to-test areas
n Tools n Testability Analyzer n Experience.
37
![Page 38: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/38.jpg)
The test plan (cont’d)n Step 5:
n Generate a set of patterns to cover the uncovered faults (TPG)
n Step 6 (optional):n Testability analysis
n Step 7 (optional):n Compact test pattern set.
38
![Page 39: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/39.jpg)
Testability Analyzern High trade-off between result accuracy
and CPU time.
n A Circuit is testable when you ATPG can manage it!!!!!
39
![Page 40: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/40.jpg)
Fault Simulation*n Problem and motivationn Fault simulation algorithms
n Serialn Paralleln Deductive
40
*The lecture has been taken from Prof. Agrawal VLSI test course (http://www.eng.auburn.edu/~agrawvd/COURSE/E7250_06/course.html)
![Page 41: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/41.jpg)
Problem and Motivationn Given
n A circuitn A sequence of test vectorsn A fault model
n Determinen Fault coverage - fraction (or percentage) of
modeled faults detected by test vectorsn Set of undetected faults
41
![Page 42: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/42.jpg)
Problem and Motivationn Motivation
n Determine test quality and in turn product quality
n Find undetected fault targets to improve tests
42
![Page 43: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/43.jpg)
Fault Simulation Scenarion Circuit model: mixed-level
n Mostly logic with some switch-level for high-impedance (Z) and bidirectional signals
n High-level models (memory, etc.) with pin faultsn Signal states: logic
n Two (0, 1) or three (0, 1, X) states for purely Boolean logic circuits
n Four states (0, 1, X, Z) for sequential MOS circuitsn Timing:
n Zero-delay for combinational and synchronous circuitsn Mostly unit-delay for circuits with feedback
43
![Page 44: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/44.jpg)
Fault Simulation Scenario (Continued)n Faults:
n Mostly single stuck-at faultsn Sometimes stuck-open, transition, and path-delay
faults; analog circuit fault simulators are not yet in common use
n Equivalence fault collapsing of single stuck-at faultsn Fault-dropping -- a fault once detected is dropped
from consideration as more vectors are simulated; fault-dropping may be suppressed for diagnosis
n Fault sampling -- a random sample of faults is simulated when the circuit is large
44
![Page 45: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/45.jpg)
Fault Simulation Algorithmsn Serialn Paralleln Deductiven ....
45
![Page 46: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/46.jpg)
Serial Algorithmn Algorithm: Simulate fault-free circuit and save responses.
Repeat following steps for each fault in the fault list:n Modify netlist by injecting one faultn Simulate modified netlist, vector by vector, comparing
responses with saved responsesn If response differs, report fault detection and suspend
simulation of remaining vectorsn Advantages:
n Easy to implement; needs only a true-value simulator, less memory
n Most faults, including analog faults, can be simulated
46
![Page 47: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/47.jpg)
Serial Algorithmn Disadvantage: Much repeated computation;
CPU time prohibitive for VLSI circuitsn Alternative: Simulate many faults together
47
![Page 48: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/48.jpg)
Serial Algorithm
48
![Page 49: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/49.jpg)
Serial algorithmn + very simplen - not efficient
n Intel I7 is about ~10M gatesn 20M faults, 1 simulation = 1sn 20Ms ~= 231 days
49
![Page 50: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/50.jpg)
Parallel Fault Simulationn Compiled-code method; best with two-states (0,1)n Exploits inherent bit-parallelism of logic operations on
computer wordsn Storage: one word per line for two-state simulationn Multi-pass simulation: Each pass simulates w-1 new
faults, where w is the machine word lengthn Speed up over serial method ~ w-1n Not suitable for circuits with timing-critical and non-
Boolean logic
50
![Page 51: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/51.jpg)
Parallel Fault Simulation
51
![Page 52: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/52.jpg)
Parallel algorithmn + still very simplen + more efficient than serial
n Intel I7 is about ~10M gatesn 20M faults, 1 simulation = 1sn 20Ms ~= 231 daysn Using a 64bits machinen 231/63 ~= 4 days
52
![Page 53: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/53.jpg)
Deductive Fault Simulationn One-pass simulationn Each line k contains a list Lk of faults detectable on it n Following true-value simulation of each vector, fault lists
of all gate output lines are updated using set-theoretic rules, signal values, and gate input fault lists
n PO fault lists provide detection datan Limitations:
n Set-theoretic rules difficult to derive for non-Boolean gates
n Gate delays are difficult to use
53
![Page 54: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/54.jpg)
Deductive Fault Simulation
54
![Page 55: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/55.jpg)
Deductive algorithmn - complexn ++ more efficient than parallel
n Intel I7 is about ~10M gatesn 20M faults, 1 simulation = 1sn 20Ms ~= 1s
n - it requires a lot of memory
55
![Page 56: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/56.jpg)
Exercice
56
which faults are detected by the input “01110”?
![Page 57: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/57.jpg)
In practicen Use of Synopsys© Tetramax
TMAXCircuit.v
Technology_library.v Test_vectors.stil
FaultCoverage
Fault List
57
![Page 58: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/58.jpg)
Invoking TetraMaxn source /soft/Synopsys/source_config/.config_tetramax_standalone_vI-2013.12n tmax
You can enter commands
58
![Page 59: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/59.jpg)
Step1n Read and Compile the circuit description
read_verilog C35.v –library
read_verilog exo1.v
run_build_model
Run_drc
59
![Page 60: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/60.jpg)
Step 2n Generate the fault list
set_faults -model stuck
add_faults -all
60
![Page 61: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/61.jpg)
Step 3n Specify the test vectors to be simulated
n We have to use the stil syntaxn Look in the example
Pattern "_pattern_" {W "_default_WFT_";"precondition all Signals": C {
"_pi"=0000; "_po"=XX; }
"pattern 0": Call "capture" { "_pi"=1010; "_po”=LL; }
} 61
![Page 62: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/62.jpg)
Step 3n Import the test vector fileset_patterns -external example_exo1.stiln Now we can run a simulationrun_simulationn You will got errors:TEST-T> run_simulationBegin good simulation of 1 external patterns.
0 S2 (exp=0, got=1)Simulation completed: #patterns=1, #fail_pats=1(0), #failing_meas=1(0), CPU time=0.00
62
![Page 63: ATPG and FaultSimulationvirazel/COURS/MEA4 - Test/CH3 ATPG... · 3 What is a test? X 1 0 0 1 0 1 X Stuck-at-0 fault 1/0 Fault activation Path sensitization Primary inputs (PI) Primary](https://reader035.vdocuments.us/reader035/viewer/2022081613/5fb7a78834128c4bdc670dd8/html5/thumbnails/63.jpg)
Step 3n Tmax has to calculate the gold outputs
before running the fault simulationrun_simulation -override_differences
n Now you can run the fault simulationrun_fault_sim
63