built in self test - computer systems & reliable soc lab

123
Built In Self Test Sungho Kang Yonsei University

Upload: others

Post on 16-Feb-2022

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Built In Self Test - Computer Systems & Reliable SOC LAB

Built In Self Test

Sungho Kang

Yonsei University

Page 2: Built In Self Test - Computer Systems & Reliable SOC LAB

2Computer Systems Lab. YONSEI UNIVERSITY

Outline

? Introduction? Pattern Generation? Response Analysis? BIST Architectures? Conclusion

Page 3: Built In Self Test - Computer Systems & Reliable SOC LAB

3Computer Systems Lab. YONSEI UNIVERSITY

IntroductionBuilt In Self Test

? Capability of a product to carry out an explicit test of itself? Test patterns are generated on-chip?Responses to the test patterns

are also evaluated on chip? External operations are required

only to initialized the built-in tests and to check the test results(go/no-go)

Input

Pattern Generation(random pattern)

CircuitunderTest

MUX

OutputResponse

Monitor

Output

Test/Normal

Page 4: Built In Self Test - Computer Systems & Reliable SOC LAB

4Computer Systems Lab. YONSEI UNIVERSITY

IntroductionBuilt In Self Test

? Advantage?No need for expensive tester?At-speed testing? Thorough test

? Disadvantages? Initial Design Investment?Area overhead? Pin overhead?Not effective for random testing resistive circuits?Aliasing problem

Page 5: Built In Self Test - Computer Systems & Reliable SOC LAB

5Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationTest Pattern Generation

? Stored Pattern? Exhaustive Pattern? Pseudo Exhaustive Pattern? Pseudo Random Pattern? Weighted Random Pattern

Page 6: Built In Self Test - Computer Systems & Reliable SOC LAB

6Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationStored Pattern

? Store deterministic test patterns in a ROM? Can achieve high fault coverage? Requires large memory space? Requires external ATPG and fault simulation? Not practical or cost effective for large circuits

Page 7: Built In Self Test - Computer Systems & Reliable SOC LAB

7Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationExhaustive Pattern

? For n input combinational circuit, 2n exhaustive patterns are required

? For large n, it is not practical? Detects all irredundant, combinational faults? Uses binary counters or LFSRs

Page 8: Built In Self Test - Computer Systems & Reliable SOC LAB

8Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationExhaustive and Pseudo Exhaustive

? Possible required ? Fault free simulation?Way to make segmentation

? Not required ? Fault simulation?Circuit modification

? Very high fault coverage? Pattern generation?Use counters or LFSRs

Page 9: Built In Self Test - Computer Systems & Reliable SOC LAB

9Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationPseudo Exhaustive Pattern

? Used when exhaustive test is too long? Divide circuits into subcircuits? Individual output verification (Cone verification)? Exhaustive test of each output?No output depends on all inputs

? Segment verification?Network partitioned? Exhaustive test of each segment

Page 10: Built In Self Test - Computer Systems & Reliable SOC LAB

10Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationCombinational Circuit Classification

? Partial Dependence Circuit (PDC)?No output depends on all inputs? Exhaustive test if possible? Else output verification test? Else segment verification

? Full Dependence Circuit (FDC)? Some output depends on all inputs? Exhaustive test if possible? Else segment verification

Page 11: Built In Self Test - Computer Systems & Reliable SOC LAB

11Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationCone Verification

? The p output circuit is logically divided into p cones? Each cone is tested exhaustively? All cones are tested concurrently? (n,w) CUT? n inputs and output Yi = fi(Xi), w = maxi { |Xi| }

? Example : (4,2) CUT? If w=n, pseudo exhaustive testing is exhaustive testing

y1 y4y3y2

x4x3x2x1

Page 12: Built In Self Test - Computer Systems & Reliable SOC LAB

12Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationCone Verification

? LS630 (16bit error detection and correction)? 24 inputs, 6 outputs? Each output depends on 10 inputs? 210 patterns for each output? 6 X 210 patterns for all

Page 13: Built In Self Test - Computer Systems & Reliable SOC LAB

13Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationPDC Classification

? MTC ?Maximal Test Concurrency Circuit ? The number of test signals required?The maximum number of inputs connected to any output

?MTC Example ?4 test vectors required ?A = C?Minimal number of required test signals is equal to the

maximum number of inputs upon which any output depends

Page 14: Built In Self Test - Computer Systems & Reliable SOC LAB

14Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationPDC Classification

? NMTC ?Non-Maximal Test Concurrency Circuit ? The number of test signals required?More than the maximum number of inputs connected to any

output?NMTC Example?Every output is a function of only 2 inputs?Each output can still be

tested exhaustively by4 patterns

Page 15: Built In Self Test - Computer Systems & Reliable SOC LAB

15Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationPDC Classification

? NMTC Example? Every output is a function of only 2 inputs? Each output can be tested exhaustively by 5 patterns

Page 16: Built In Self Test - Computer Systems & Reliable SOC LAB

16Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationNMTC? Identification of minimal set of test signals? Partition the circuit into disjoint subcircuits? For each disjoint subcircuit?Generate a dependency matrix?Partition the matrix into groups of inputs so that 2 or more

inputs in a group do not affect the same output?Collapse each group to form an equivalent input, called a test

signal input?Characterize the collapsed matrix in terms of p and w where p is

the number of partitions (width) and w is the maximum number of 1s in any row (weight)

?Construct the test pattern for the circuit ?p=w : MTC and test set consists of all 2p patterns?p=w+1 : test set consists of all possible patterns of p with

either odd or even parity?p>w+1 : test set consists of 2 or more pattern subsets, each of

which contains all possible patterns of p bits having a specificconstant weight

Page 17: Built In Self Test - Computer Systems & Reliable SOC LAB

17Computer Systems Lab. YONSEI UNIVERSITY

NMTC Example

? Example circuit

? Dependency matrix?Dij = 1 if output I depends on input j ; otherwise Dij=0

a

gfedcb

f1(a,b,e)

C*

f2(b,c,g)f3(a,d,e)

f4(c,d,e)

f5(e,f)

c ga b fed

D =

00

01

1

01

01

0

01

10

0

11

01

1

10

00

0

00

10

0

00

10

1 f1

f5

f4

f3

f2

Page 18: Built In Self Test - Computer Systems & Reliable SOC LAB

18Computer Systems Lab. YONSEI UNIVERSITY

NMTC Example

? Reordering and grouping the inputs produce the following modified matrix

c ga b fed

Dg =

00

01

1

01

01

0

0

11

0

011

01

1

10

00

0

00

10

0

0

010

1

f1

f5

f4

f3

f2

Group

Page 19: Built In Self Test - Computer Systems & Reliable SOC LAB

19Computer Systems Lab. YONSEI UNIVERSITY

NMTC Example

? In each group there must be less than two 1s in each row and the number of groups should be minimal

? This insures that no output is driven by more than one input from each group? Finding such a partition is NP-complete

? ORing each row within a group to form a single column

Dc =

01

11

1

10

10

0

11

01

1

01

11

1 f1

f5

f4

f3

f2

Page 20: Built In Self Test - Computer Systems & Reliable SOC LAB

20Computer Systems Lab. YONSEI UNIVERSITY

NMTC Example

? p=4 and w=3 ? odd parity

?A B C D? 0 0 0 1? 0 0 1 0? 0 1 0 0? 1 0 0 0? 0 1 1 1? 1 0 1 1? 1 1 0 1? 1 1 1 0

? Pseudo exhaustive test set consists of 8 patterns instead of 128?Among 4 groups, 8 patterns using any 3 inputs are necessary

Page 21: Built In Self Test - Computer Systems & Reliable SOC LAB

21Computer Systems Lab. YONSEI UNIVERSITY

NMTC

? Total number of test patterns is a function of p and w? Constant weights do not exist for all pairs of p and w? For such cases, w can be increased so as to achieve a constant-

weight pseudo exhaustive test, but it may not be minimal in length? It is always easy to construct a circuit to generate a

pseudo exhaustive test set for p>w+1 and hardware overhead of some of these circuits is quite high

Page 22: Built In Self Test - Computer Systems & Reliable SOC LAB

22Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationSegment Verification

? Segmentation testing via path sensitization

? Sensitized path is established from C to F?Use 2n1+2n2 patterns instead of 2n1+n2 patterns

A

B

C1

C2

C

D

F

n2

n1

Page 23: Built In Self Test - Computer Systems & Reliable SOC LAB

23Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationFDC

? LS181 (ALU)? 14 inputs, 8 outputs? Some outputs depends on all inputs? 214 patterns

? Use segmentation?Only 356 patterns are required

Page 24: Built In Self Test - Computer Systems & Reliable SOC LAB

24Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationSegment

? Example? Exhaustive test vectors : 64?Output cone test vectors : 32

Page 25: Built In Self Test - Computer Systems & Reliable SOC LAB

25Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationSegment Example

? Example

Page 26: Built In Self Test - Computer Systems & Reliable SOC LAB

26Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationSegment Example

? Exhaustive test of G sensitized to F2 by Z = 1?U V W X Y Z G H F1 F2 ? 0 0 0 1 1 1? 0 0 1 1 1 1? 0 1 0 1 1 1? 0 1 1 1 0 0? 1 0 0 1 1 1 ? 1 0 1 1 1 1? 1 1 0 1 1 1? 1 1 1 1 1 1

Page 27: Built In Self Test - Computer Systems & Reliable SOC LAB

27Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationSegment Example

? Added to exhaustive test of G ?U V W X Y Z G H F1 F2 ? 0 0 0 1 1 1? 0 0 1 1 1 1? 0 1 0 1 1 1? 0 1 1 1 0 0? 1 0 0 1 1 1 ? 1 0 1 1 1 1? 1 1 0 1 1 1? 1 1 1 1 1 1? 1 1 1 0 1 0? 0 0 1 0 1 0

Page 28: Built In Self Test - Computer Systems & Reliable SOC LAB

28Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationSegment Example

? Added to exhaustive test of H ?U V W X Y Z G H F1 F2 ? 0 0 0 1 1 1? 0 0 1 1 1 1? 0 1 0 1 1 1? 0 1 1 1 0 0? 0 0 1 0 0 1 1 0 0 1 ? 0 1 1 0 1 1 1 1 1 1? 1 0 1 1 0 1 1 1 1 1? 1 1 1 1 1 1 1 1 1 1? 1 1 1 0 1 0? 0 0 1 0 1 0

Page 29: Built In Self Test - Computer Systems & Reliable SOC LAB

29Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationSegment Example

? Added to exhaustive test of F1 ?U V W X Y Z G H F1 F2 ? 0 0 0 1 1 1? 0 0 1 1 1 1? 0 1 0 1 1 1? 0 0 0 1 1 1 0 0 0 0? 0 0 1 0 0 1 1 0 0 1 ? 0 1 1 0 1 1 1 1 1 1? 1 0 1 1 0 1 1 1 1 1? 1 1 1 1 1 1 1 1 1 1? 1 1 1 0 1 0? 1 1 0 0 1 0 1 1 0 0

Page 30: Built In Self Test - Computer Systems & Reliable SOC LAB

30Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationSegment Example

? Segmentation by multiplexors? Path sensitization : 10? Multiplexors : 13

Page 31: Built In Self Test - Computer Systems & Reliable SOC LAB

31Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationSegment

? 74181 ALU? 214 exhaustive patterns ?Output cone test : 214 patterns

Page 32: Built In Self Test - Computer Systems & Reliable SOC LAB

32Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationSegment

? 74181 ALU? Li function : 16 patterns

Page 33: Built In Self Test - Computer Systems & Reliable SOC LAB

33Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationSegment

? 74181 ALU?Hi function : 16 patterns

Page 34: Built In Self Test - Computer Systems & Reliable SOC LAB

34Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationSegment

? 74181 ALU? 74181 ALU : N2 ?Hi = (Ai X Bi)’? Li = Ai’?Design constraints : HiLi = 01 is impossible? 34 AB tests X 22 M Cn tests : 324? Segment Test : 324 + 16 + 16 = 356

Page 35: Built In Self Test - Computer Systems & Reliable SOC LAB

35Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationPseudo Exhaustive Pattern

? 8 input parity tree

? Instead of 256 pattern, only 4 patterns are required?Minimum pseudo exhaustive pattern? a b c d e f g h i j k l m n ? 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ? 0 1 1 1 0 1 1 1 1 0 1 0 1 1 ? 1 0 1 0 1 1 0 1 1 1 0 1 0 1 ? 1 1 0 1 1 0 1 0 0 1 1 1 1 0

Page 36: Built In Self Test - Computer Systems & Reliable SOC LAB

36Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationConstant Weight Pseudo Exhaustive

? Any (n, w) circuit can be tested by a constant weight counter implementing a w-out-of-k code for an appropriate value of k? n : number of inputs?w : weights?maximum of inputs for any cone

? 2-out-of-4 code? 1100? 1010? 1001? 0110? 0101? 0011

Page 37: Built In Self Test - Computer Systems & Reliable SOC LAB

37Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationPseudo Random Pattern

? Test Pattern Source?ALFSR (Autonomous Linear Feedback Shift Register) LFSR?All patterns equally likely? Sometimes misnamed random

Page 38: Built In Self Test - Computer Systems & Reliable SOC LAB

38Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationRandom vs Pseudorandom

? Random? Patterns can occur more than once?Non-reproducible

? Pseudorandom?All (possibly except all-0 pattern) patterns occur before any

pattern repeats?Reproducible

Page 39: Built In Self Test - Computer Systems & Reliable SOC LAB

39Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationLinear Feedback Shift Register

? The state of shift register depends only on the prior state

= 1

D Q D QD QD Q

c2c1c1 cn

cn-1

Q1 Q2 Q3 Qn

a-1 a-2 a-n+1 a-n

amam-1 am-2 am-n+1 am-n

Next State

Current State

= 1

D Q D QD QD Q

c2c1c1

cncn-1

Q1 Q2 Q3 Qn

am-1 am-2 am-nCurrent State

Page 40: Built In Self Test - Computer Systems & Reliable SOC LAB

40Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationLinear Feedback Shift Register

? Polynomial? shorthand notation for a bit stream

? x6+x2+x+1? 1000111? 1X6+0X5+0X4+0X3+1X2+1X+1

? Arithmetic of polynomial is modulo 2?Addition and subtraction is the same? (x-1) is the same as (x+1)

? Degree of a polynomial is the highest power of the non-zero term

Page 41: Built In Self Test - Computer Systems & Reliable SOC LAB

41Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationLinear Feedback Shift Register

? Generating function G(x)?G(x) = a0+a1x+a2x2+… +amxm+... = ? amxm where ai is 0 or 1

? For type 1 LFSR?

??

????

??????

?????

??????

???? ??

??

??

?

??

??

?

??

??

??

??

??

?

?

?

??

??

?

?

?

??

?

?

? ??

?

?

??

n

1i

ii

11

ii

n

1i

ii

11

ii

n

1i

ii

n

1i

ii

11

ii

n

1i

ii

0m

mm

11

ii

n

1i

ii

0m

imim

n

1i

ii

m

0m

n

1iimi

0m

mm

n

1iimim

xc1

)xa...xa(xc)x(G

)xa...xa(xc)x(Gxc

)]x(Gxa...xa[xc

]xaxa...xa[xc

xaxcxac)x(G

xa)x(G

aca

Page 42: Built In Self Test - Computer Systems & Reliable SOC LAB

42Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationLinear Feedback Shift Register

? Characteristic polynomial P(x)? P(x) = 1+c1x+c2x2+… +cnxn

? If a-1=a-2=… =a1-n=0 and a-n=1 then

p

p

1p1p10

p2p1p1p10

1p1p10

p2

1p1p10

p

1p1p10

m

0m

mm

x1ntoidividesevenly)x(PthatseenisitThusx1

xa...xaa

)...xx1)(xa...xaa(

...)xa...xaa(x

)xa...xaa(x

)xa...xaa()x(P/1

pperiodwithcyclicis}a{sequencetheSince

xa)x(P

1)x(G

??

????

???????

?????

????

????

???

??

??

??

??

??

?

?

Page 43: Built In Self Test - Computer Systems & Reliable SOC LAB

43Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationLinear Feedback Shift Register

? Maximum length sequence? Period of 2n-1 for n stage LFSR?Disregard all 0's

? Primitive polynomial?Characteristic polynomial with a maximum length sequence

? Non Primitive Polynomial? Less than maximal length

? Irreducible polynomial?Not divisible by any other polynomial other than 1 and itself?Has an odd number of terms including the 1 term? If its degree n is greater than 3, the P(x) must divide into 1+xk

where k = 2n-1? Example?x4+x3+1 divides evenly into X15+1

Page 44: Built In Self Test - Computer Systems & Reliable SOC LAB

44Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationLinear Feedback Shift Register

? Number of Primitive Polynomials? n PPs n PPs? 1 1 17 7710 ? 2 1 18 7776 ? 3 1 19 27594 ? 4 2 20 24000 ? 5 6 21 84672 ? 6 6 22 120032 ? 7 18 23 356960 ? 8 16 24 276480 ? 9 48 25 1296000 ? 10 60 26 1719900 ? 11 176 27 4202496 ? 12 144 28 4741632 ? 13 630 29 18407808 ? 14 756 30 17820000 ? 15 1800 31 69273666 ? 16 2048 32 67108864

Page 45: Built In Self Test - Computer Systems & Reliable SOC LAB

45Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationLinear Feedback Shift Register

? Primitive Polynomial ? n Primitive Polynomial ? 1, 2, 3, 4, 6, 7, 15, 22 1+x+xn

? 5, 11, 21, 29 1+x2+xn

? 10, 17, 20, 25, 28, 31 1+x3+xn

? 9 1+x4+xn

? 23 1+x5+xn

? 18 1+x7+xn

? 8 1+x2+x3+x4+xn

? 12 1+x+x4+x6+xn

? 13 1+x+x3+x4+xn

? 14, 16 1+x3+ x4+x5+xn

? 19, 27 1+x+x2+x5+xn

? 24 1+x+x2+x7+xn

? 26 1+x+x2+x6+xn

? 30 1+x+x2+x23+xn

? 32 1+x+x2+x22+xn

Page 46: Built In Self Test - Computer Systems & Reliable SOC LAB

46Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationLinear Feedback Shift Register

? Pseudo Random Pattern Generation?Characteristic Polynomial : 1+x2+x3

? Initial condition (1,0,0) : x?Q1 : x / (1+x2+x3)?Q2 : x2 / (1+x2+x3)?Q3 : x3 / (1+x2+x3)

Page 47: Built In Self Test - Computer Systems & Reliable SOC LAB

47Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationLinear Feedback Shift Register

? When initial state is 100?Q1 Q2 Q3? 1 0 0? 0 1 0? 1 0 1? 1 1 0? 1 1 1? 0 1 1? 0 0 1? 1 0 0? 0 1 0? 1 0 1

Page 48: Built In Self Test - Computer Systems & Reliable SOC LAB

48Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationLinear Feedback Shift Register

? When initial state is 000?Q1 Q2 Q3? 0 0 0? 0 0 0

Page 49: Built In Self Test - Computer Systems & Reliable SOC LAB

49Computer Systems Lab. YONSEI UNIVERSITY

Pattern Generation

LFSR SR

x1 xi xi+1 xn

Combined LFSR and SR

? Less cost than constant weight counter

D Qx1 x2 x3 x4

1 1 1 0

0 1 1 1

0 1 0 1

1 0 1 1

1 1 0 0

1 0 0 1

0 0 1 0

1 1 1 0

D D DQ Q Q

Page 50: Built In Self Test - Computer Systems & Reliable SOC LAB

50Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationCombined LFSR and XOR

? Close to LFSR/SR ?Q1 Q2 Q3 Q4 ? 1 0 0 1 ? 0 1 0 0 ? 1 1 1 1 ? 0 1 1 0 ? 1 0 1 0 ? 0 1 0 1 ? 0 0 1 1 ? 1 0 0 1

D Q 1 0 0

x1 x2 x3 x4

1 0 0 1

1 1 0 0

0 1 1 0

1 1 1 1

0 0 1 10 1 0 11 0 1 1

1 0 0 1

D Q D Q

Page 51: Built In Self Test - Computer Systems & Reliable SOC LAB

51Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationCondensed LFSR

? Efficient when w >= n/2 ? When w < n/2, use combined LFSR and SR

Page 52: Built In Self Test - Computer Systems & Reliable SOC LAB

52Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationCyclic LFSR

? When w < n/2? Condensed LFSR ? Produce long test length for (n,w) circuits

? Combined LFSR and XOR ?Have a high hardware overhead

? Use cyclic code? Low hardware overhead and reduce test length

Page 53: Built In Self Test - Computer Systems & Reliable SOC LAB

53Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationLFSR for Exhaustive Test

? Include NORs

Page 54: Built In Self Test - Computer Systems & Reliable SOC LAB

54Computer Systems Lab. YONSEI UNIVERSITY

Pattern GenerationWeighed Random Patterns

? All patterns not equally likely? Pseudo random test patterns are inefficient when random-

pattern-resistant faults exist.? Make Prob[1] ? Prob[0] at pattern sources? Random resistant faults?Consider a 32 input AND and output s-a-1 fault? The output s-a-1 is detected when all inputs are 1?When pseudo random testing is used, the detection probability is

1/232

L

F

S

R

WeightComputation

Circuit

CircuitunderTest

n m

Page 55: Built In Self Test - Computer Systems & Reliable SOC LAB

55Computer Systems Lab. YONSEI UNIVERSITY

WRPG

? Let pf be the detection probability of fault f ? (1- pf)N : probability that f is not detected by N

independent patterns ? C = 1-(1- pf)N : Confidence of detecting f by a random test

set of N patterns. ? N = ln(1-C)/ln(1- pf) : # of patterns to reach Confidence C. ? The test length required for detecting a set of faults F only

depends on the fault f with the lowest detectability.? Example> 32-input AND gate? Pseudo random testing?4.48 X 1010 patterns required to reach C = 0.999

?WPRG ?When the probability of 0 is 1/232

?pf = 0.5, N=600

Page 56: Built In Self Test - Computer Systems & Reliable SOC LAB

56Computer Systems Lab. YONSEI UNIVERSITY

Multiple Weight Sets

? Consider a circuit with a 32 input AND and a 32 input OR where the same 32 inputs feed them

? Consider AND output s-a-1 and OR output s-a-0

? If the same weights are applied, one of two faults are hard to detect.

? It is necessary to have 2 different weight sets

? (1/232, 1-1/ 232) (1-1/ 232, 1/ 232)

AND

OR

I1

I2

I3

I4

Page 57: Built In Self Test - Computer Systems & Reliable SOC LAB

57Computer Systems Lab. YONSEI UNIVERSITY

Multiple Weight Sets

? The efficiency of multiple weight set is determined by both the number of weight sets (r), and the total number of random test patterns to be applied (N).

? The goal of weight generation is to reduce both r and N

Page 58: Built In Self Test - Computer Systems & Reliable SOC LAB

58Computer Systems Lab. YONSEI UNIVERSITY

Multiple Weight Sets

? Single weight set?Advantage?Small hardware overhead

?Disadvantages?Low fault coverage?Long test pattern length

? Multiple weight sets?Advantages?High fault coverage?Short test pattern length

?Disadvantages?Large hardware overhead

Page 59: Built In Self Test - Computer Systems & Reliable SOC LAB

59Computer Systems Lab. YONSEI UNIVERSITY

Weight Generation Methods

? Structural analysis? Small number of patterns and weight sets? Easy implementation? Poor fault coverage

? Deterministic test sets?All non-redundant faults can be detected?A high number of random patterns and weights? Large hardware overhead

? Combined both methods

Page 60: Built In Self Test - Computer Systems & Reliable SOC LAB

60Computer Systems Lab. YONSEI UNIVERSITY

T1 P1 T2 P2 T3 P3A 1 0 1 0 1/2 1 0 1 1 3/4 1 0 1 X 2/3B 1 1 0 0 1/2 1 1 0 0 1/2 1 1 0 0 1/2C 1 0 0 1 1/2 0 0 0 1 1/4 X 0 0 1 1/3

A s-a-0 A s-a-1 B s-a-0 B s-a-1 C s-a-0 C s-a-0Pf(P1) 1/4 1/4 3/8 3/8 1/4 1/4Pf(P2) 3/8 1/8 1/2 1/2 1/8 3/8Pf(P3) 1/3 1/6 7/18 7/18 1/ 1/3

Maximizing Don’t Cares

? If “Don’t Cares” occur in a test set they must not contribute to the weights

?by maximizing the number of “Don’t Care” bits , ATPG can remove redundancies in the test set

Page 61: Built In Self Test - Computer Systems & Reliable SOC LAB

61Computer Systems Lab. YONSEI UNIVERSITY

Maximizing Don’t Cares

? Decisions are guided by a number of heuristics which particularly aim at generating test patterns with a large number of unspecified bits, and keeping the overall test set small

? For error propagation, a node on the D-frontier is selected which is as close as possible to the POs and is located on a path with a maximum number of undetected faults,

? For line justification, observability are used if there is a choice of a gate input line to be set to a controlling value? if the gate output is observable?a gate input line is selected such that the number of

undetected faults preceding this line is maximum? if not observable?a gate input line is selected such that the number of primary

inputs to be set becomes minimal

Page 62: Built In Self Test - Computer Systems & Reliable SOC LAB

62Computer Systems Lab. YONSEI UNIVERSITY

ATPG and Weight Generation

?? A)A) ATPG is performed for all the undetected faults. ATPG tries to maximize the number of “Don’t Cares”

?? B)B) Weight generation?? C)C) WRPG and fault simulation.

Pattern generation is stopped if the last k successive patterns do not detect any new fault. ( k = a user-defined parameter)

?? BB’’)) Weight computation by using Hamming distance? Resolving conflicts?Only the patterns from

D(t,T,m) are used for weight generation

? reversing weight generation

Pseudo-random pattern generation, faultsimulation and redundancy removal

faults left = ?

ATPG forremaining faults

Weight calculation

WRPG and faultsimulation

NoEnd

A)

B)

C)

Page 63: Built In Self Test - Computer Systems & Reliable SOC LAB

63Computer Systems Lab. YONSEI UNIVERSITY

Comments

? Pseudo Random Test Pattern could be proved to be inefficient when Random-pattern-resistant faults exist.

? Weight set generation methods can be based on the structural analysis or deterministic test sets.

? If possible, the small number of weight sets, the small number of total test patterns, and High fault coverage should be achieved at the same time.

? To combine advantages of both methods, Weight generation and ATPG could be integrated.?Maximize the number of “Don’t Cares” in deterministic sets.?Resolving conflict information problem by partitioning

deterministic test patterns? in actually testing ,WRP is generated by circuits

consisting of LFSR and combinational logic.? Rounding of weights

Page 64: Built In Self Test - Computer Systems & Reliable SOC LAB

64Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisResponse Analysis

? Duplication? Ones Count? Transition Count? Parity Check? Syndrome? Signature Analysis

Page 65: Built In Self Test - Computer Systems & Reliable SOC LAB

65Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisDuplication

? Comparison of outputs of 2 implementations? Can avoid alias problem? Can avoid loss of effective fault coverage of a signature

analyzer? Hardware overhead

Page 66: Built In Self Test - Computer Systems & Reliable SOC LAB

66Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisCompression

? Signature : output of the compactor? Decision factors? Extra hardware? Loss of fault coverage?Calculation of good signature?Aliasing?A faulty circuit produces a signature that is identical to the

signature of a fault free circuit

CircuitUnderTest

(CUT)

DataCompression

Unit

ComparatorErrorIndicator

Correct Signature S(R0)

InputTest

Sequence T

OutputResponse

Sequence R'Signature

S(R')

Page 67: Built In Self Test - Computer Systems & Reliable SOC LAB

67Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisOnes Count

? Count the number of ones at the output? After applying n vectors, the signature is between 0 and n? Masking probability? Prob(masking) = ( nCp - 1 ) / (2n - 1)

T N

Clock Counter

Signature(ones count)

R0=10000000

IC(R0) = 1IC(R1) = 2IC(R2) = 0

R2=00000000

R1=11000000

Page 68: Built In Self Test - Computer Systems & Reliable SOC LAB

68Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisTransition Count ? Signature ? The number of 0-to-1 and 1-to-0 transitions at the output

? After applying n vectors, signature is between 0 and n-1? Masking probability? Prob(masking) = 2 X (n-1)Cp / (2n-1) ? p : the number of transitions in a fault free response

T N

Clock Counter

Signature(transistion count)

R0=10000000

IC(R0) = 1IC(R1) = 1(undetectable fault)IC(R2) = 0

R2=00000000R1=11000000

D

Page 69: Built In Self Test - Computer Systems & Reliable SOC LAB

69Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisParity Check

? Signature : parity? Compression circuit consists of a XOR and a D FF? LFSR with G(x) = x + 1

? Masking probability? Prob(masking) = ( 2(n-1) - 1 ) / (2n - 1)

T N

Clock Signature(parity)

R0=10000000

P(R0) = 1

R2=00000000R1=11000000

D

P(R2) = 0P(R1) = 0

Page 70: Built In Self Test - Computer Systems & Reliable SOC LAB

70Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisSyndrome

? All 2n patterns are applied to the input? The number of 1's at an output is counted? Compare the number of 1's for good machine and for

faulty machine? Syndrome S = k/2n

? k : the number of minterms? n : the number of inputs?Normalized number of ones at the output

? Not all Boolean functions are totally Syndrome testable? Used for exhaustive testing

Page 71: Built In Self Test - Computer Systems & Reliable SOC LAB

71Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisSyndrome

? No reconvergent fanout ?C3 Syndrome of S3 ?AND S1S2 ?NAND 1 - S1S2 ?OR S1 + S2 - S1S2 ?NOR 1 - ( S1 + S2 - S1S2) ? XOR S1 + S2 - 2S1S2

? Reconvergent fanout?C3 Syndrome of S3 ?AND S1 + S2 + S((FG)’) - 1 ?OR S1 + S2 - S(FG)? XOR S( F’G) + S(FG’)

C1

C2

C

X

Y

S1

F

GS2

S3

Page 72: Built In Self Test - Computer Systems & Reliable SOC LAB

72Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisSignature Analysis

? Compaction of Test Data in a LFSR? How to compare the results??Applying test sequence and compare signature

? Signature? value left in LFSR

? To obtain signature and initialization pattern, use a golden board

? Aliasing? Fault free signature is the same as fault signature? Probability : 1/2n

Page 73: Built In Self Test - Computer Systems & Reliable SOC LAB

73Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisSignature Analysis

SR Q(x)G(x)

initial State : I(x) = 0 final State : R(x)

= Q(x) +G(x)P(x)

R(x)P(x)

or G(X) = Q(x)P(x) + R(x)

Page 74: Built In Self Test - Computer Systems & Reliable SOC LAB

74Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisSignature Analysis

? Initial Value : 000?Good Good Faulty Faulty ? Patterns Responses Patterns Responses? Z1 Z2 Z3 Q1 Q2 Q3 Z1 Z2 Z3 Q1 Q2 Q3? 1 1 0 1 1 0 1 1 0 1 1 0? 0 1 0 1 0 1 0 1 1 0 1 1

Page 75: Built In Self Test - Computer Systems & Reliable SOC LAB

75Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisAliasing

? Initial Value : 000?Good Good Faulty Faulty ? Patterns Responses Patterns Responses? Z1 Z2 Z3 Q1 Q2 Q3 Z1 Z2 Z3 Q1 Q2 Q3? 1 1 0 1 1 0 1 0 0 0 1 1? 0 1 0 1 0 1 0 1 1 1 0 1

Page 76: Built In Self Test - Computer Systems & Reliable SOC LAB

76Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisAliasing

? For the register length n and the length of test bit stream m, assume that all possible bit streams are evenly distributed over all possible signatures

? The number of bit stream that produce a specific signature is 2m/2n = 2m-n

? For a particular fault-free response, there are 2m-n -1 erroneous bit stream with same signature

? Since there are a total of 2m-1 possible erroneous response streams, the aliasing probability is (2m-n-1)/(2m-1) = 2-n

? Reduce aliasing ? Increase the length of register chain ?Access signature several times

Page 77: Built In Self Test - Computer Systems & Reliable SOC LAB

77Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisSignature Analysis

? Parallel ? Faster

? Serial

Page 78: Built In Self Test - Computer Systems & Reliable SOC LAB

78Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisMISR

? Normally, a single input signature analyzer is not used due to testing overhead

? Aliasing Probability : 1/2n

?All error patterns are equally likely

D Q D QD QD Q

cn-2cn-1cn

D1

D1

DnD3D2

c1

Page 79: Built In Self Test - Computer Systems & Reliable SOC LAB

79Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisUsing ALU

? Low Overhead

+ or -

Register

Co Co

k

k

Page 80: Built In Self Test - Computer Systems & Reliable SOC LAB

80Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisAlias Probability

? P (fault not detected) = P(no output error) + P(output error | correct signature)

? P (fault not detected) = P(no output error) + P(output error) P(correct signature | output error)

? P (no output error)? escape probability

? P (correct signature output error )? alias probability (PAL)

Page 81: Built In Self Test - Computer Systems & Reliable SOC LAB

81Computer Systems Lab. YONSEI UNIVERSITY

Response AnalysisPAL

? Depends on? P : characteristic of fault and circuit? L : test length? f(x) : polynomial describing signature register

? Exact calculation of PAL is NP-complete? Bound for Serial Signature Analysis? PAL <= (1+e)/L if L < Lc? PAL <= 1 if L = h X Lc? PAL <= 2/(L2+1) if L>Lc and L h X Lc? Lc?signature register period?maximum autonomous cycle length

? What we want?Alias probability upper bound, independent of P

? Use signature polynomial with period test length

Page 82: Built In Self Test - Computer Systems & Reliable SOC LAB

82Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesBIST Structures

? On-line BIST?Testing occurs during normal operating conditions?Self checking

? Off-line BIST? Embedded?Use system registers to generate and compact test data

? Separate?Use registers external to the system function to generate and

compact test data?Centralized?Several CUTs share TPG and ORA

?Distributed

Page 83: Built In Self Test - Computer Systems & Reliable SOC LAB

83Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesBIST Structures

? Decision factors?Degree of test parallelism? Fault coverage? Level of packaging? Test time? Physical constraints ?Complexity of replaceable units? Performance degradation

Page 84: Built In Self Test - Computer Systems & Reliable SOC LAB

84Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesSeparate BIST

? Drawbacks? Long test time? Poor delay

? Advantages? Low overhead? Simple control logic

? Danger?Decimation Dependency? Linear Dependency

Page 85: Built In Self Test - Computer Systems & Reliable SOC LAB

85Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesDecimation Dependency

? The number of LFSR patterns, M? 2m or 2m-1

? The number of possible different scan path patterns, P ?Minimum of the followings?M?N=2n

?( LCM of M and n )/n = M / (GCD of M and n) ? Example?m=4, M=15, n=5 : P=3?m=10, M=1023, n=9 : P=341

Page 86: Built In Self Test - Computer Systems & Reliable SOC LAB

86Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesLinear Dependency

? If n < m?No linear dependency

? If n >= m and kj < m ?No linear dependency

? If n >= m and kj >= m ? Possible linear dependency

Page 87: Built In Self Test - Computer Systems & Reliable SOC LAB

87Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesCSBL

? Centralized and separate board level BIST?No boundary scan?Best suited for not many feedbacks? Fault simulation is required to determine the number of test

vectors to achieve an adequate level of fault coverage

CUT(C or S)

MUX

MUXPRPG SISR

k = log2m

POs

PIsn

n

1

n

m

m

k 1

Board

Page 88: Built In Self Test - Computer Systems & Reliable SOC LAB

88Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesLOCST

? LSSD On-Chip Self Test?Centralized and separate BIST? Scan path (LSSD) ?Boundary scan?On-chip test controller

CUT

(S)

ON-chipmonitor(OCM)

Error-detection circuitry

SISRSRSG

PIs POs

SRLSRL

R1 R2

SiSo

SinSout

Error signalControl signal

Page 89: Built In Self Test - Computer Systems & Reliable SOC LAB

89Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesSTUMPS

? Self Testing Using MISR and Parallel SRSG

?Centralized and separate BIST?Multiple scan paths?Reduction in test time

?No boundary scan? Lower overhead than BILBO

but takes longer to apply

Scan path

Scan path

Scan path

PRPG

MISR

POs

PIs

So So'

SiSi'

CUT (S)

External logic

External logic

Page 90: Built In Self Test - Computer Systems & Reliable SOC LAB

90Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesCBIST

? Concurrent BIST?Centralized and separate BIST?No scan or boundary scan?Can be used for sequential logic?On-line testing?PRPG and MISR are initialized

until Enable signal is enabled?Off-line testing?PRPG drives the circuit and

responses are compressedin MISR

Page 91: Built In Self Test - Computer Systems & Reliable SOC LAB

91Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesCEBS

? Centralized and Embedded BIST with Boundary Scan? The first r bits of the input boundary scan registers are used for

PRPG and the last s bits are used for MISR or SISR

Page 92: Built In Self Test - Computer Systems & Reliable SOC LAB

92Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesRandom Test Data

? Distributed and embedded BIST? Boundary scan? Some binary patterns are repeated? Others may not be generated?R1 and R2 : PRPG?R2 and R3 : MISR

Page 93: Built In Self Test - Computer Systems & Reliable SOC LAB

93Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesSimultaneous Self-Test

? Distributed and embedded BIST? Scan path?No LFSR ?No boundary scan

? Problem in testing external logic? Problem in characterizing the quality of test process

Page 94: Built In Self Test - Computer Systems & Reliable SOC LAB

94Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesSimultaneous Self-Test

? Use self-test storage cell for each storage cell?Normal mode : Q = D? Test mode (self test) : Q = D ? Si ?Test Mode=1

? Scan mode?Test Mode=0

Page 95: Built In Self Test - Computer Systems & Reliable SOC LAB

95Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesCyclic BIST

? Use sequential circuits as nonlinear binary sequence generators? If there are more outputs than inputs, extra outputs can be

combined using XOR ? Low area overhead? Effectiveness is circuit dependent?Asynchronous feedbacks are possible?CUT should be clocked a predetermined times (determined by

fault simulation)

Page 96: Built In Self Test - Computer Systems & Reliable SOC LAB

96Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesCircular BIST

? General architecture?Register based? Partial self test?All inputs and outputs must be associated with boundary scan cell?All storage cell must be initializable before testing? LFSR with primitive polynomial 1+xn

Page 97: Built In Self Test - Computer Systems & Reliable SOC LAB

97Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesCircular BIST

? Storage Cell? [A] ?N/T Z Mode ? 0 Dj System ? 1 Dj ? Sj-1 Test

?

? [B] ?B0 B1 Z Mode ? 0 0 0 Reset ? 0 1 Sj Scan ? 1 0 Dj System ? 1 1 Dj ? Sj-1 Test

Page 98: Built In Self Test - Computer Systems & Reliable SOC LAB

98Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesCircular BIST

? Test process? Initialization? Testing of circuit ?Response evaluation

Page 99: Built In Self Test - Computer Systems & Reliable SOC LAB

99Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesCircular BIST

? Advantages?High fault coverage ? Low hardware overhead?One test per clock

? Disadvantages ? Pattern generation is heavily dependent of the circuit function?Certain pattern may be generated?May be used with partial scan path to apply deterministic patterns

Page 100: Built In Self Test - Computer Systems & Reliable SOC LAB

100Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesScan Dependence

? Possible if use output of MISR as test patterns? FF (i+1) is scan dependent iff during normal operation it is

functionally dependent on the previous FF(i) in the scan path

Page 101: Built In Self Test - Computer Systems & Reliable SOC LAB

101Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesScan Dependence

? Example?Normal mode : Zi+1 = Qi + f?MISR mode : Zi+1 = Qi’f : incorrect

? Yi+1 is scan dependent if Yi+1 is a function of Yi

? Eliminate scan dependence by reordering scan path? Use scan dependence to reduce BIST overhead?Redesign scan cell for scan dependence bits

Page 102: Built In Self Test - Computer Systems & Reliable SOC LAB

102Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesBILBO(Built-In Logic Block Observer)

? Take advantage of the register aspects of many design? Program counter, instruction register, accumulator

? Normal registers are replaced by BILBO register? Inputs to a logic C are driven by a BILBO register? Output of C drives another BILBO register

Page 103: Built In Self Test - Computer Systems & Reliable SOC LAB

103Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesBILBO(Built-In Logic Block Observer)?B1 B2 Mode? 1 1 Normal Mode? 0 1 Reset? 0 0 Shift Register? 1 0 Signature Analyzer

B1

B2

Si

S0

QnQn-1Q2Q1

D DD DQQQQ

Q QQQ

0

1

MUX

Z1 Z2 Zn

Page 104: Built In Self Test - Computer Systems & Reliable SOC LAB

104Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesBILBO Operations

? Shift Register Mode : B1=B2=0

Si

S0

Q

D

Q

D

Q

D

Q

D

Page 105: Built In Self Test - Computer Systems & Reliable SOC LAB

105Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesBILBO Operations

? Normal Mode : B1=B2=1

D Q

Q1

Z1

D Q

Q2

Z2

D Q

Q n-1

Z n-1

D Q

Qn

Zn

Page 106: Built In Self Test - Computer Systems & Reliable SOC LAB

106Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesBILBO Operations

? Signature Analysis Mode : B1=1 B2=0? If Z1=Z2= … =Zn=0, PRPG

Z1

Z3

Q

Q

D Q

Q

D

Z2

Q1

Q2

Q

Q

D Q

Q

D

Zn

Qn-1

Qn

Page 107: Built In Self Test - Computer Systems & Reliable SOC LAB

107Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesBILBO

? To test A?R1 : RPG?R2 : Signature Analyzer

? To test B?R2 : RPG?R1 : Signature Analyzer

Register1

Combi-nationalCircuit

A

Register2

Combi-nationalCircuit

B

Page 108: Built In Self Test - Computer Systems & Reliable SOC LAB

108Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesBus Oriented BILBO

? In PRPG mode, BILBO register need to be held at constant value by disabling all bus drivers and using pull-up or pull-down circuitry

Register1A

C1

Register1B

RegisternB

C2

RegisternA

BUS

Page 109: Built In Self Test - Computer Systems & Reliable SOC LAB

109Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesBILBO Pipeline

? Need to deactivate inputs to BILBO registers during PRPG mode C 1

BILBO 1

C 2

BILBO 2

C n

BILBO n

PI

PO

Page 110: Built In Self Test - Computer Systems & Reliable SOC LAB

110Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesBILBO

? Advantages?At-speed test?Reuse system bistables

? Drawbacks?Multiple Test sessions?Complex control

? Danger?Register self-adjacency

Page 111: Built In Self Test - Computer Systems & Reliable SOC LAB

111Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesRegister Self-Adjacency

? A register Ri is said to be a driver of a logic C if some outputs of Ri are inputs to C

? A register Rj is said to be a receiver of C if some outputs if C are inputs to Rj

? Ri is said to be adjacent to Rj if there exists a block of logic C such that Ri is a driver of C and Rj is a receiver of C

? If Ri is both a receiver and a driver of C, it is self-adjacent? Avoid by design or synthesis? Use Concurrent BILBO

Page 112: Built In Self Test - Computer Systems & Reliable SOC LAB

112Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesConcurrent BILBO

? Register can be operated as PRPG and MISR simultaneously?B1 B2 Mode ? - 0 Normal ? 1 1 Scan ? 0 1 PRPG/MISR

Page 113: Built In Self Test - Computer Systems & Reliable SOC LAB

113Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesTest Schedule

? Test session?An assignment of test modes to BILBO registers to test one or

more blocks? Test scheduling problem?Determine the minimal number of test sessions required to test all

blocks of combinational logic?Determine the minimal colors that can be assigned to the nodes of

a graph such that no edge connects two nodes of the same color? More complex when the test time for each block is

considered

Page 114: Built In Self Test - Computer Systems & Reliable SOC LAB

114Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesPartial BILBO Pipeline

? Only a subset of registers are madefor BILBO

? Reduction on hardware complexity

Page 115: Built In Self Test - Computer Systems & Reliable SOC LAB

115Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesControl of BILBO

? When multiple test sessions exist, the efficient control becomes important? The first cell of BILBO register and the control lines to all the cells

are driven by the above logic? S* drives the S0 to the first cell in BILBO register? T0 T1 T2 Mode B0 B1 S* ? 1 0 0 PRPG 0 1 FB ? 1 0 1 MISR 1 1 FB ? 0 0 Q SHIFT 0 1 Q ? 1 1 X LATCH 1 0 X ? 0 1 1 RESET 0 0 X

Page 116: Built In Self Test - Computer Systems & Reliable SOC LAB

116Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesControl of BILBO

? Control Sequence? Inhibit system clocks and enter the test mode? Initialize control registers with data specific to a test session? Send the LFSRs and scan paths? Initiate the test process? Process the final signature to determine if an error has been

detected

Page 117: Built In Self Test - Computer Systems & Reliable SOC LAB

117Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesSTARBIST

? Each cluster contains one parent test vector in the center? A number of children patterns is derived from parent test

vector by complementing certain number of coordinates in pseudo-random pattern

? This method doesn’t use the conventional LFSR directly to generate pseudo-random patterns

? The implementation makes use of scan order and polarity between the neighboring scan cells

WaveformGenerator

Diffractor

scan cells

x1x2

Page 118: Built In Self Test - Computer Systems & Reliable SOC LAB

118Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesPhase Shift BIST

? Partition circuit into NAC and scan chain?NAC(Nearly Acyclic Circuit)?sequential synchronous circuit the period of which is not

larger than 1? Pseudo random patterns by LFSR and PS are applied

through primary inputs and scan chain? PS(Phase Shifter)?required to avoid the structural dependency between outputs

of pattern generator? Compress output values using MISR and SC(Space

Compressor)

Page 119: Built In Self Test - Computer Systems & Reliable SOC LAB

119Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesPhase Shift BIST

LFSR

PS

NearlyAcyclicCircuit

MISR

SCs

TestPattern

GeneratorCircuit Under Test

OutputData

Compactor

fromO.P.'s

PrimaryOutputs

toC.P.'s

PrimaryInputs

C.P.'s : Control PointsO.P.'s : Observation Points

Page 120: Built In Self Test - Computer Systems & Reliable SOC LAB

120Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesMultiple Fixed Biased PR BIST

? Pattern is applied to CUT (Circuit Under Test) through n idler register segment

? Idler register segment is operated by BIST pattern generation and control logic

? Each idler register segmenthas a different biasing valueand some bits are fixed toa specified value

? The output of CUT is passedto MISR and fault identification is performedusing signature that remainsin MISR

BIST PatternGenerationand Control

MISR

CUT

SIn

SI1

Idler Reg. 1 Idler Reg. n

Page 121: Built In Self Test - Computer Systems & Reliable SOC LAB

121Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesMultiple Frequency Scan BIST

? Several scan chains is synchronized in different frequencies

? Each frequency is generated by system clock and primary inputs

? To synchronize different scan chains, clock number required to load scan chain and perform sampling must be divided by the ratio of any frequency pair

? BIST core is composed of random pattern generator, signature analyzer, pattern counter, scan mode signal generator, and clock generator

? Better performance than STUMPS

Page 122: Built In Self Test - Computer Systems & Reliable SOC LAB

122Computer Systems Lab. YONSEI UNIVERSITY

ArchitecturesMultiple Frequency Scan BIST

TAP

BISTCORE

Chain1

Chainn

CombinationalLogic

Sistem Clock

SI1

SIn

SO1

CK1_SM1

SOn

CKn_SMn

Page 123: Built In Self Test - Computer Systems & Reliable SOC LAB

123Computer Systems Lab. YONSEI UNIVERSITY

ConclusionConclusion

? In BIST, the test pattern generation and the output response evaluation are done on chip? The use of expensive ATE machines to test chips can be avoided.

? Requirements of a BIST scheme ? Easy to implement? Small area overhead ?High fault coverage

? Advantage?No need for expensive tester?At-speed testing