Delay Testing - Computer Systems & Reliable SoC...

Preview:

Citation preview

Delay Testing

Sungho Kang

Yonsei University

2CS&RSOC YONSEI UNIVERSITY

Outline

IntroductionDelay Fault ModelsTest Strategy Test Pattern GenerationFault SimulationConclusion

3CS&RSOC YONSEI UNIVERSITY

IntroductionDelay Testing

Delay FaultsFailures that cause circuits to malfunction at desired clock rates or not meet timing specificationsModeled defects that cause signal propagation delays in a circuit to increase above the modeled delays

Delay TestingChecks if a circuit has delay faults or notDetermines input patterns to be applied to detect and locate delay defectsRequires at least two clock cyclesVarious types according to hardware models

4CS&RSOC YONSEI UNIVERSITY

Delay Fault ModelsGate Delay Fault Model

Localized defects onlyThe number of faults is proportional to the number of inputs and outputs of gatesCannot test distributed delay defectsEasy to testAll possible single GDF can be considered

x1

x2

x3

x4

x5

x6

x7

1100

XX

XX

XX

11

11

00G1

G2

G3

G5

G6

11

XXG4

5CS&RSOC YONSEI UNIVERSITY

Delay Fault ModelsPath Delay Fault Model

Can test both lumped & distributed defectsEffective in statistical design philosophyLarge number of paths

x1

x2

x3

x4

x5

x6

x7

1100

XX

XX

XX

11

11

11G1

G2

G3

G5

G6

G4

11

6CS&RSOC YONSEI UNIVERSITY

Delay Fault ModelsSegment Delay Fault ModelHybrid type of gate and path delay models

Slow-to-rise and slow-to-fall defects on segment, whose length L can be chosen from statistics about the manufacturing defectsFault list will comprise of all segments of length L and all paths whose entire length is less than LPrevent an explosion of the number of faults being consideredA defect over a segment is large enough to affect any path passing through it

x1

x2

x3

x4

x5

x6

x7

11

00

XX

11

G1

G2

G3

G5

G6

G4XX

XXXX

00 11

7CS&RSOC YONSEI UNIVERSITY

Test Strategy

InputsInput

LatchesCombinational

CircuitsOutputLatches Outputs

Input Clock Output Clock

t0V1

applied

t1V2

applied

t2outputssampled

Tc

Input Clock

SamplingClock

Hardware Model for Delay Testing

Failures that cause logic circuits to malfunction at desired clock rates or not meet timing specification

8CS&RSOC YONSEI UNIVERSITY

Test Strategy

G1

G2

G3

G4

11

11A

B

C

D

E

F

G5

00

11

11

00

XX

Test Strategy of Static Gates

Two pattern test

9CS&RSOC YONSEI UNIVERSITY

Test StrategyCombinational Circuits

Application of two patternsTests <V1, V2>, <V2, V3>, ....Apply V1 and let the signal settleApply V2 and sample outputs after desired timeLet the circuit settle under V2Apply V3 and sample outputs after desired time

10CS&RSOC YONSEI UNIVERSITY

Test StrategySequential Circuits

Pure sequential circuitsUse fast and slow clocksToo difficult

Enhanced scan designsRequire additional chip areaUse the same strategy as for combinational circuitsLonger test time

Standard scan designsDifficult to handle sequential part of the circuitScan shifting Functional Justification

11CS&RSOC YONSEI UNIVERSITY

Test StrategyStandard Scan Designs

Same test application strategy except that the states are now shifted in, which implies that the state variable portion of V(i+1) be a (single) shift of V(i)

Scan shifting

0

1

0

A

B0 1

1 0

0

1

0

0

1 0

0 0

1

12CS&RSOC YONSEI UNIVERSITY

Test Strategy

FF

FF

01

S0

X1

S11X

1X

A

B

C

D

Standard Scan Designs

Functional JustificationThe first vector can be scanned into flip-flopsThe second vector is determined by function of circuits

13CS&RSOC YONSEI UNIVERSITY

Test StrategyNon-standard Scan Designs

Tests <V1, V2>, <V2, V3>, ...Use a third latch to hold V(I) while V(I+1) is being shifted inThis makes the test application time identical to that of combinational logic circuit with exception of shifting in the state variables for V(I+1)

Initializing faulty circuit may require slowing down the clockFault effect propagation may require slowing down the clockAt speed testing may be feasible in initializable circuitsIn the case of non-initializable circuits, single gate fault assumption may be necessary

14CS&RSOC YONSEI UNIVERSITY

Test Strategy

clock

input

T T Ts s f T Ts s

4 51 2 3

Test Strategy for Path Delay Faults

Test Application

At-speed TestingAssumption : All signal-transitions settle within one clock cycle after they were initiated

clock

input

synch 1 2 3T T Tf f f

15CS&RSOC YONSEI UNIVERSITY

Test StrategyTypes of Path Delay Tests

Hazard Free Robust Test [HFR]Guarantees the signals on the path are free from dynamic hazardsGuarantees to detect the delay defects independent of the delaysin other circuits

Robust Test [ROB]Guarantees to detect the delay defects independent of the delaysin other circuits

Weak Non-Robust TestGuarantees to detect the delay defects if all off-path inputs reach their final values prior to the on-path transition

Strong Non-Robust TestBecomes ROB if off-path inputs do not have static hazards, otherwise becomes WNR

16CS&RSOC YONSEI UNIVERSITY

Test StrategyLocal Requirements of Tests

Hazard Free RobustHazard free constant values for all off path inputs

RobustFirst vector : On-path elements must have initial values according to the specified transition typesSecond vector : On-path elements must have final values due to the on-path fanin values

Non RobustFirst vector : The first element on the path must have initial values according to the specified transition typesSecond vector : On-path elements must have final values due to the on-path fanin values

17CS&RSOC YONSEI UNIVERSITY

Test StrategyTest Strategy

Advantages of Robust TestsInaccuracies in circuit delay models toleratedTests valid even if the technology or clock rate or layout changes occur, as long as the logical topology is not changedUsed for binning

Off-path sensitizing inputsLet P be a path in a logic circuit and G be a gate on the pathThe inputs to G that are not on the path P

Delay faults vs stuck-at faultsThe robust and non robust tests defined are such that V2 in a two pattern test set <V1, V2> for slow-to-rise (slow-to-fall) fault, is a test for s-a-0 (s-a-1) fault on root lead of the path being tested of <V1, V2> is a path delay fault test and on the lead tested if <V1, V2> is a gate delay fault test

18CS&RSOC YONSEI UNIVERSITY

ATPGATPG for Path Delay Faults

Reddy, Lin and PatilLine justification objectives are known right at the beginningPath delay faults in combinational circuits only5 value logicS0, S1, U0, U1, XX

19CS&RSOC YONSEI UNIVERSITY

ATPGDSTEED

Cheng, Devadas and KeutzerScan DesignsFunctional JustificationOn-sets and Off-setsVery memory intensive

20CS&RSOC YONSEI UNIVERSITY

ATPGFASTPATH

Scan Based Microprocessor DesignPath Delay ModelsSet of Longest PathsBinningLeast Memory Intensive Approach

Reverse Time ProcessingBegin with last time frame and proceed backward in timestate transition : transfer logic values between outputs and inputs of flip-flops

The most restrictive test is considered first

21CS&RSOC YONSEI UNIVERSITY

ATPGLogic Values

28-Valued LogicAll Combinations of 0,1, X and Z

00 01 0X 0Z 10 11 1X 1Z X0 X1 XX XZ Z0 Z1 ZX ZZLogic Y : Constrained X + ZStable Values

S0 S1 SZStable Impossible Values

00T 0XT X0T XT0 11T 1XT X1T XT1 XTBTypes of 0

Hazard status undetermined (00)Hazard free zero (S0)Possible hazard (00T)

S1

00

00 00T

01 10

S0S0 01

22CS&RSOC YONSEI UNIVERSITY

ATPG

X1T(X1)

1X

10XX

01

0X

XTB(XX)AB

C

D 11

S1

Logic Values

Stable Impossible Values00T, 0XT, X0T, XT0, 11T, 1XT, X1T, XT1 and XTBT Indicates the signal would not be stable through both time framesCan avoid unsuccessful searchesSpecify unjustifiable values

S0

XXS0

X0

0X 00

10

10

01

00T

A

B

C

D

E

23CS&RSOC YONSEI UNIVERSITY

ATPG

O f f -p a th R e q u ir e m e n tsE le m e n ts O n -p a th

T r a n s it io n H F R R O B S N R W N R

R is in g S 1 X 1 X 1 X 1A N DN A N D F a ll in g S 1 S 1 1 1 X 1

R is in g S 0 S 0 0 0 X 0O RN O R F a ll in g S 0 X 0 X 0 X 0

Requirements of Tests

Requirements HierarchyWNR < SNR < ROB < HFR

24CS&RSOC YONSEI UNIVERSITY

ATPG

Generate(){ for(I=0; I<Num_paths; I++){ path = read_path(); flag=find_one_test(path,HFR); if(flag!=TEST_GENERATE){ flag=find_one_test(path,ROB); if(flag!=TEST_GENERATE){ falg=find_one_test(path,SNR); if(flag!=TEST_GENERATE) falg=find_one_test(path, WNR); } } }}

find_one_test(path, test_type){ flag=set_constraints(path, test_type); if(flag==UNTESTABLE || flag==ABORTED)

return(flag); flag=implication(); if(flag==UNTESTABLE || flag==ABORTED)

return(flag); flag=justification(); if(flag==UNTESTABLE || flag==ABORTED)

return(flag); else

mark_success(path);}

Test Generation Algorithm

25CS&RSOC YONSEI UNIVERSITY

ATPG

FF1

FF2

AB

CD

E

F

G

H

I

J

K

L

M

01

10

01

10

•Path:B-G-J-L•Signal Name

•On-path Transition

FASTPATH Example

26CS&RSOC YONSEI UNIVERSITY

ATPG

FF1

FF2

AB

CD

E

F

G

H

I

J

K

L

M

01

10

01

10S1*

X1*

S0*00T

•Path: B-G-J-L•Signal Name

•On-path Transition

•Off-path Constraints

•Implication

FASTPATH Example

27CS&RSOC YONSEI UNIVERSITY

ATPG

FF1

FF2

AB

CD

E

F

G

H

I

J

K

L

M

01

10

01

10S1*

X1*

S0*

S1

S1

00T

S0S1

S0

•Path:B-G-J-L•Signal Name•On-path

Transition•Off-path

Constraints•Implication•Stable Value•Implication•Justification

FASTPATH Example

28CS&RSOC YONSEI UNIVERSITY

ATPG

FF1

FF2

AB

CD

E

F

G

H

I

J

K

L

M

01

10

01

10S1*

X1*

S0*

S1

S1

1X

00T

01

S0S1

S0

•Path:B-G-J-L•Signal Name•On-path

Transition•Off-path

Constraints•Implication•Stable Value•Implication•Justification•Second TF•Implication•First TF•ImplicationA B C D FF1 FF2

Initial Vector 0 1 1 1 X XSecond Vector 0 0 1 1

FASTPATH Example

29CS&RSOC YONSEI UNIVERSITY

Fault SimulationDelay Fault Simulation

Ensures target faults are tested by the generated vectorsOther sources of vectors

Functional vectorsVectors that designers provide

Useful for large sequential circuits

30CS&RSOC YONSEI UNIVERSITY

Fault SimulationFASTPATH Fault Simulation

Standard scan designs4 logic values : 0 1 X ZSet data structures to hold data for 2 clock cyclesCompute a steady value flag during second clock cycleAdvantages

Each bit in a machine word represents a separate patternEach pattern cycle treated as independent of all othersEvaluating sequential devices is a single word copyCircuit inputs loaded only once for each patternEach pattern is evaluated for the same number of clock cycles which is known in advance

31CS&RSOC YONSEI UNIVERSITY

Fault SimulationFASTPATH Fault Simulation

AlgorithmGood simulationHazard free robust fault detectionRobust fault detectionStrong non robust fault detectionWeak non robust fault detection

Logic Value Encoding ( i:time frame, j:fanin)bvi[j] xvi[j]

0 0 01 1 0X 1 1Z 0 1

Steady Value Mark

32CS&RSOC YONSEI UNIVERSITY

Fault Simulation2 input AND (on path : fanin 0)

Parallel Evaluation RoutineXVout[t]=XV0[t]&BV1[t] | XV1[t]&BV0[t] | XV [t]&XV1[t]BVout[t]=XVout[t] | (BV1[t] & BV0[t] )

Steady Value Mark EvaluationSVout = (~XV0[0] & ~BV0[0] & ~XV0[1] & ~BV0[1] & SV0 ) | (~XV1[0] & ~BV1[0] & ~XV1[1] & ~BV1[1] & SV1 ) | (~XV0[0] & BV0[0] & ~XV0[1] & BV0[1] & SV0 & ~XV1[0] & BV1[0] & ~XV1[1] & ~BV1[1] & SV1 )

Robust TestsRising : BV1[1] & ~XV1[1]Falling : BV1[0] & ~XV1[0] & BV1[1] & ~XV1[1] & SV1

Strong Non Robust TestsRising : BV1[1] & ~XV1[1]Falling : BV1[0] & ~XV1[0] & BV1[1] & ~XV1[1]

Weak Non Robust TestsRising : BV1[1] & ~XV1[1]Falling : BV1[0] & ~XV1[0]

33CS&RSOC YONSEI UNIVERSITY

ConclusionConclusion

Cost effective delay fault testingUse transition fault model to generate testsEvaluate the small delay defect coverage of the tests derived for transition faultsDerive and apply robust tests for as many longest delay paths asone can afford

Recommended