Documente Academic
Documente Profesional
Documente Cultură
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-1
Syllabus
Objectives Fault Detection Test vector generation Testable circuit design Boundary-scan standard
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-2
Objectives
After completing this chapter, you will be able to: Describe various fault models Understand the fundamentals of fault detection Understand the difficulties of sequential circuit tests Understand the basic principles of test vector generation Describe the basic principles of testable circuit design Understand the principle of boundary scan standard (IEEE1149.1)
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley 16-3
Syllabus
Objectives Fault Detection
Fault models Fault detection Difficulty of sequential circuit test
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-4
Terminology Definition
What is a defect? What is an error? What is a fault?
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-5
Fault Models
Stuck-at-0 fault Stuck-at-1 fault Bridge fault
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-6
Fault Models
Stuck-open fault Stuck-closed (stuck-on) fault
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-7
Fault Models
Fault equivalence Fault collapse Fault coverage
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-8
Fault Detection
Controllability Observability
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-9
Fault Detection
A testable fault An untestable fault
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-10
Fault Detection
An example of complete test set
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-11
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-12
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-13
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-14
Syllabus
Objectives Fault Detection Test vector generation
Fault tables Fault simulation Boolean differences Path sensitization
Fault Tables
Form a fault table
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-16
Fault Tables
Build a fault detection table
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-17
Fault Tables
Find a reduced fault table
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-18
Syllabus
Objectives Fault Detection Test vector generation
Fault tables Fault simulation Boolean differences Path sensitization
Fault Simulation
The fault simulation process is repeated until:
All faults are covered At least an acceptable number of faults are covered, or Some predefined stopping point is reached
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-20
Fault Simulation
Types of fault simulation
The row method The column method
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-21
Fault Simulation
The row method
Fault Simulation
The column method
Syllabus
Objectives Fault Detection Test vector generation
Fault tables Fault simulation Boolean differences Path sensitization
Boolean Differences
Boolean difference (Boolean partial derivative)
df ( X ) = f ( xn1 ,..., xi +1 ,0, xi 1 ,..., x0 ) f ( xn1 ,..., xi +1 ,1, xi 1 ,..., x0 ) dx = f i (0) f i (1)
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-25
Boolean Differences
Example:
f ( X ) = x1 x 2 + x 3
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
Boolean Differences
f ( X ) = ( x1 + x2 )x'3 + x3 x4
The test vector set is {(0, 0, 1, 1), (1, f, 1, 0), (f, 1, 1, 0)}.
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley 16-27
Boolean Differences
y = x1 + x2
Syllabus
Objectives Fault Detection Test vector generation
Fault tables Fault simulation Boolean differences Path sensitization
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-30
Path Sensitization
Sensitized path
Unsensitized path
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-31
Path Sensitization
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-32
Syllabus
Objectives Fault Detection Test vector generation Testable circuit design
Ad hoc testing Scan-path methods Built-in self test (BIST)
Boundary-scan standard
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-33
Ad hoc Testing
Basic principles are to increase
observability controllability
Methods
Providing more control and test points Using multiplexers to increase the number of internal control and test points Breaking feedback paths Using state registers to reduce the additional of I/O pins required for testing signals
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley 16-34
Ad hoc Testing
An example of exhaustive test
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-35
Syllabus
Objectives Fault Detection Test vector generation Testable circuit design
Ad hoc testing Scan-path methods Built-in self test (BIST)
Boundary-scan standard
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-36
Scan-Path Methods
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-37
Syllabus
Objectives Fault Detection Test vector generation Testable circuit design
Ad hoc testing Scan-path methods Built-in self test (BIST)
Boundary-scan standard
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-38
BIST Principles
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-39
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-40
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-41
Signature Generators
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-42
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-43
A BIBLO Example
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-44
Syllabus
Objectives Fault Detection Test vector generation Testable circuit design Boundary-scan standard
IEEE 1149.1 Standard TAP structure Boundary scan cells
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-45
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-46
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-47
Syllabus
Objectives Fault Detection Test vector generation Testable circuit design Boundary-scan standard
IEEE 1149.1 Standard TAP structure Boundary scan cells
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-48
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-49
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-50
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-51
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-52
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-53
A TDO Driver
TDO Driver
TMS is sampled at the positive edge of TCK TDO is sampled at the negative edge of TCK
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-54
Syllabus
Objectives Fault Detection Test vector generation Testable circuit design Boundary-scan standard
IEEE 1149.1 Standard TAP structure Boundary scan cells
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-55
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-56
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-57
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-58
A Complete Example
Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010, John Wiley
16-59