+ All Categories
Home > Documents > Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the...

Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the...

Date post: 26-Mar-2018
Category:
Upload: vankhanh
View: 216 times
Download: 3 times
Share this document with a friend
34
Automatic Test Pattern Generation Testing of VLSI Design Usha Mehta
Transcript
Page 1: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Automatic Test

Pattern Generation

Testing of VLSI Design

Usha Mehta

Page 2: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Acknowledge

• This presentation has been summarized from

various books, papers, websites and presentations

on VLSI Design and its various topics all over the

world. I couldn’t itemwise mention from where

these large pull of hints and work come. However,

I’d like to thank all professors and scientists who

created such a good work on this emerging field.

Without those efforts in this very emerging

technology, these notes and slides can’t be

finished.

01-04-2015 Dr Usha Mehta 2

Page 3: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Simple Illustration of ATPG

• Consider the fault d/1 in the defective circuit

• Need to distinguish the output of the defective

circuit from the defect-free circuit

• Need: set d=0 in the defect-free circuit

• Need: propagate effect of fault to output

• Vector: abc=001 (output = 0/1)

01-04-2015 Dr Usha Mehta 3

Page 4: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

01-04-2015 Dr Usha Mehta 4

Page 5: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

• Instead of using two circuits (fault-free and

the faulty)

• We will solve the ATPG problem on one

single circuit

• To do so, every signal value must be able to

capture fault-free and faulty values

simultaneously

• 5-Value Algebra: 0, 1, X, D, D-bar

– D: 1/0 fault free/faulty

– D-bar: 0/1

01-04-2015 Dr Usha Mehta 5

Page 6: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Notations….

• For fault to be detected, the corresponding output of the circuit

should be different in case of circuit is faulty and faultfree.

01-04-2015 Dr Usha Mehta 6

Page 7: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Boolean Algebra on 5-Valued Logic

01-04-2015 Dr Usha Mehta 7

Page 8: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Basic ATPG Algorithm

Path Sensitization Method

• Initialize all inputs with X

• Activate the fault s-a-v by justifying

the line to value v’

• Propagate the fault effect ot PO

01-04-2015 Dr Usha Mehta 8

Page 9: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Fault Excitation

• Fault excitation – the signal value at the fault site

must be different from the value of the stuck-at

fault (thus fault site must contain a D or a D’)

• Propagation: The fault effect must be propagated to

a primary output (a D or a D’ must appear at the

output)

• Some simple observations

– There must be at least a D or a D on some

circuit nets)

– Ds must form a chain to some output

01-04-2015 Dr Usha Mehta 9

Page 10: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Justify

01-04-2015 Dr Usha Mehta 10

Page 11: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Propagate

01-04-2015 Dr Usha Mehta 11

Page 12: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Controlling and Inversion Value

• Controlling value for AND and NAND

is 0 while for OR and NOR, it is 1

• Inversion value for NOT, NOR and

NAND is 1 while for ND and OR, it is 0

01-04-2015 Dr Usha Mehta 12

Page 13: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

One example…..

01-04-2015 Dr Usha Mehta 13

Page 14: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Contd.

01-04-2015 Dr Usha Mehta 14

Page 15: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Contd.

01-04-2015 Dr Usha Mehta 15

Page 16: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Contd.

01-04-2015 Dr Usha Mehta 16

Page 17: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Algorithm for Combinational ATPG

01-04-2015 Dr Usha Mehta 17

Page 18: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Algorithm for Combinational ATPG

contd.

01-04-2015 Dr Usha Mehta 18

Page 19: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Algorithm for Combinational ATPG

contd.

01-04-2015 Dr Usha Mehta 19

Page 20: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Algorithm for Combinational ATPG

contd.

01-04-2015 Dr Usha Mehta 20

Page 21: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Decision Procedure

• For ATPG Algorithm, the decisions are

to be taken for

– To select the fault for consideration from

the given list of faults

– For the fault under consideration, to

select the path during propagation and

justification

01-04-2015 Dr Usha Mehta 21

Page 22: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Selection of fault

Selection of path for Justification and Propagation

• So you have list of faults

– I hope you have generated it by your own

EDA tools for fault list generation and

reduction using fault equivalence….

• Which fault to choose from list?

– Randomly?

– With some selection criteria?

01-04-2015 Dr Usha Mehta 22

Page 23: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Easy/Hard heuristic

• If many choices to meet an objective, and

satisfaction of any one of the choices will

satisfy the objective

• choose the easiest one first

• If all conditions must be satisfied to meet

the desired objective,

• choose the hardest one first

01-04-2015 Dr Usha Mehta 23

Page 24: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Which fault to pick next

• Target to generate tests for easy faults first

– Hard faults may get detected with no extra effort

• Target to generate tests for hard faults first

– Easy faults will be detected any way, why waste time

• Anytime a fault is detected, there is a chance that the test vector detects a lot more faults.

01-04-2015 Dr Usha Mehta 24

Page 25: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Which fault is easy/hard?

• The fault is easy or hard based on • difficulty involved in setting the corresponding

– inputs to specific values (controlling the inputs)

– Checking the outputs for correctness (observing the

output)

Easy/hard can be determined

–Distance from PIs and POs

–Testability measures

01-04-2015 Dr Usha Mehta 25

Page 26: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Testability Measures

• Analysis of difficulty of testing internal

circuit parts –redesign or add special

test hardware

• Guidance for algorithms computing

test patterns – avoid using hard-to-

control lines

• Estimation of fault coverage

• Estimation of test vector length

01-04-2015 Dr Usha Mehta 26

Page 27: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Sandia Controllability and Observability Analysis

Program (SCOAP)

• Involves Circuit Topological analysis,

but no test vectors and no search

algorithm

• Static analysis

• Linear computational complexity

– Otherwise, is pointless – might as well

use automatic test-pattern generation

and calculate: Exact fault coverage and

Exact test vectors

01-04-2015 Dr Usha Mehta 27

Page 28: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

• Combinational measures:

– CC0 – Difficulty of setting circuit line to logic 0

– CC1 – Difficulty of setting circuit line to logic 1

– CO – Difficulty of observing a circuit line

• Sequential measures – analogous:

– SC0

– SC1

– SO

01-04-2015 Dr Usha Mehta 28

Page 29: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

• Controllabilities – 1 (easiest) to infinity (hardest)

• Observabilities – 0 (easiest) to infinity (hardest)

• Combinational measures:

– Roughly proportional to # circuit lines that must

be set to control or observe given line

• Sequential measures:

– Roughly proportional to # times a flip-flop must

be clocked to control or observe given line

01-04-2015 Dr Usha Mehta 29

Page 30: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Controllability

01-04-2015 Dr Usha Mehta 30

Page 31: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Observability

01-04-2015 Dr Usha Mehta 31

Page 32: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Develop your own ATPG

• Algorithms …..

• Run by computing machines….

• What can be inputs to algorithm?……

• And outputs…….

– Netlist

– Fault list

– Test set

01-04-2015 Dr Usha Mehta 32

Page 33: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Future Scope

• This tool can be further developed with higher fanout branches and fan in for gates capabilities.

• It can further accommodate the XOR, XNOR types of gates also.

• When there is a contradiction for reconvergent fan out, it chooses the second option based on nearby controllability value. With this if still the problem is not solved, such faults can be referred to advanced ATPGs.

• For that link to those tools can be applied. Or fault coverage loss because of such case can be calculated. Based on list of test vectors generated, test compaction can be applied.

01-04-2015 Dr Usha Mehta 33

Page 34: Automatic Test Pattern Generation · PDF fileSimple Illustration of ATPG • Consider the fault d/1 in the defective circuit • Need to distinguish the output of the defective circuit

Thanks!

01-04-2015 Dr Usha Mehta 34


Recommended