Built-in Self-test November 2, 2012 1 Introduction Test - - PowerPoint PPT Presentation

built in self test
SMART_READER_LITE
LIVE PREVIEW

Built-in Self-test November 2, 2012 1 Introduction Test - - PowerPoint PPT Presentation

Built-in Self-test November 2, 2012 1 Introduction Test generation and response evaluation done on-chip. Only a few external pins to control BIST operation. Additional hardware overhead. Additional hardware overhead. Offers


slide-1
SLIDE 1

Built-in Self-test

November 2, 2012 1

slide-2
SLIDE 2

Introduction

  • Test generation and response evaluation

done on-chip.

  • Only a few external pins to control BIST
  • peration.
  • Additional hardware overhead.

November 2, 2012 2

  • Additional hardware overhead.
  • Offers a number of benefits.
slide-3
SLIDE 3

BIST Motivation

  • Useful for field test and diagnosis:

– Less expensive than a local automatic test equipment

  • Software tests for field test and diagnosis:

– Low hardware fault coverage – Low diagnostic resolution

November 2, 2012 3

– Slow to operate

  • Hardware BIST benefits:

– Lower system test effort – Improved system maintenance and repair – Improved component repair – Better diagnosis

slide-4
SLIDE 4

Test Generator

BIST – Basic Idea

CHIP

Circuit Under Test (CUT) Response Compressor

BIST Basics

slide-5
SLIDE 5

BIST Architecture

Circuit M

Pattern Generator Response ROM

TEST CONTROLLER TEST

November 2, 2012 5

Circuit under test U X

Generator

PI

Response Compactor

= Good / Bad PO Note: BIST cannot test wires and transistors: From PI pins to input MUX From POs to output pins

slide-6
SLIDE 6

BIST Costs

– Chip area overhead for:

  • Test controller
  • Hardware pattern generator / response compactor
  • Testing of BIST hardware

– Pin overhead

  • At least 1 pin needed to activate BIST operation

– Performance overhead

November 2, 2012 6

– Performance overhead

  • Extra path delays due to BIST

– Yield loss

  • Due to increased chip area

– Reliability reduction

  • Due to increased area

– Increased BIST hardware complexity

  • Happens when BIST hardware is made testable
slide-7
SLIDE 7

BIST Benefits

  • Faults tested:

– Single combinational / sequential stuck-at faults – Delay faults – Single stuck-at faults in BIST hardware

  • BIST benefits

November 2, 2012 7

– Reduced testing and maintenance cost – Lower test generation cost – Reduced storage / maintenance of test patterns – Simpler and less expensive ATE – Can test many units in parallel – Shorter test application times – Can test at functional system speed

slide-8
SLIDE 8

BIST Techniques

  • Stored Vector Based

– Microinstruction support – Stored in ROM

  • Algorithmic Hardware Test Pattern

Generators Generators

– Counter :: exhaustive, pseudo-exhaustive – Linear Feedback Shift Register – Cellular Automata

BIST Basics - LFSR

slide-9
SLIDE 9

Exhaustive Pattern Generation

  • Shows that every state and transition works
  • For n-input circuits, requires all 2n vectors
  • Impractical for n > 20

November 2, 2012 9

slide-10
SLIDE 10

Pseudo-Exhaustive Method

  • Partition large circuit into fanin cones

– Backtrace from each PO to PIs influencing it – Test fanin cones in parallel

  • An illustrative example (next slide):

– No. of tests reduced from 28 = 256 to 25 x 2 = 64

November 2, 2012 10

– No. of tests reduced from 28 = 256 to 25 x 2 = 64

slide-11
SLIDE 11

Pseudo-Exhaustive Pattern Generation

November 2, 2012 11

slide-12
SLIDE 12

Random Pattern Testing

  • Generate pseudo-random patterns as test

input vectors.

  • Evaluate fault coverage through fault

simulation.

  • Motivation:

November 2, 2012 12

  • Motivation:

– Test length may be larger. – Faster test generation.

  • Used to get tests for 60-80% of faults, then

switch to ATPG for rest.

  • Some circuits may be random pattern

resistant.

slide-13
SLIDE 13

% 100%

November 2, 2012 13

Number of test vectors Fault Coverage

slide-14
SLIDE 14

P R P G

November 2, 2012 14

C U T

Response Evaluation

slide-15
SLIDE 15

Linear Feedback Shift Register (LFSR)

November 2, 2012 15

slide-16
SLIDE 16

What is LFSR?

  • A simple hardware structure based on

shift register.

– Linear feedback circuit.

  • Has a number of useful applications:

– Pseudo-random number generation

November 2, 2012 16

– Pseudo-random number generation – Response compression – Error checking (Cyclic Redundancy Code) – Data compression

slide-17
SLIDE 17

Two types of LFSR

D1 D2 D3 D4 + Type 1 D1 D2 D4 + Type 2 D3

  • Unit delay

– D Flip flop

  • Modulo 2 adder

– XOR gate

  • Modulo 2 multiplier

– Connection

slide-18
SLIDE 18

General Type-1 LFSR

November 2, 2012 18

slide-19
SLIDE 19

LFSR Example

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

4

D

D2

D

1

D

3

+ D4 D3 D2 D1

1 ) (

1 4

+ + = x x x f

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

slide-20
SLIDE 20

LFSR - Recurrence Relation

... Dn Dn-1 D2 D3 D1

gn-1 + g2 + g1 +

...

Is a-1 a-2 a-3 ... a-n+1 a-n

  • Generating Function
  • Characteristic polynomial

G x a x

m

m m

( ) =

= ∞

  • f x

c x

i i i n

( ) =

=

  • 1

Is a-1 a-2 a-3 ... a-n+1 a-n Cs am-1 am-2 am-3 ... am-n+1 am-n

+ 1

slide-21
SLIDE 21

LFSR - Recurrence Relation (continue)

G(x)

m=0

= am xm = ci am-i xm = ci xi am-i xm-i

n

n

am = ci am-i

i =1 n

= ci am-i x = ci x am-i x = ci xi [a-i x -i +...+ a-1 x -1 + am xm] = ci xi [a-i x -i +...+ a-1 x -1 + G(x)]

m=0 i =1 i =1 n m=0 i =1 m=0

i =1 n

slide-22
SLIDE 22

LFSR - Recurrence Relation (continue)

( ) ( )

1 ) ( ) ( ) (

1 1 1 1 1 1 1

x c x a x a x c x G x a x a x c x G x c x G

n i i n i i i i i n i i i i i n i i i

+ + + =

  • +

+ + =

  • =

− − − − = − − − − =

  • (

)

) ( 1 ) ( 1 and if ) ( ) (

1 2 1 1 1 1 1

x f x G a a a a x f x a x a x c x G

n n n i i i i i i

=

  • =

= = = = + + =

− + − − − = − − − − =

  • G(x) is function of initial state and g(x)
slide-23
SLIDE 23

LFSR - Definitions

  • If the sequence generated by an n-stage

LFSR has period 2n-1, then it is called a maximum-length sequence or m-sequence.

  • The characteristic polynomial associated

with maximum-length sequence is called a with maximum-length sequence is called a primitive polynomial.

  • An irreducible polynomial is one that cannot

be factored; i.e., it is not divisible by any

  • ther polynomial other than 1 and itself.
slide-24
SLIDE 24

Example Primitive Polynomials

3: 1 0

  • x3 + x + 1

4: 1 0 5: 2 0 6: 1 0

November 2, 2012 24

7: 1 0 8: 6 5 1 0 16: 5 3 2 0 32: 28 27 1 0 64: 4 3 1 0

slide-25
SLIDE 25

LFSR - Theories

  • If the initial state of an LFSR is

a-1 = a-2 = ... = a1-n = 0, a-n = 1 then the LFSR sequence {am} is periodic with a period that is the smallest integer k for which f(x) divides (1+xk).

  • An irreducible polynomial f(x) satisfying the following

two conditions is a primitive polynomial: – It has an odd number of terms including the 1 term. – If its degree n is greater than 3, then f(x) must divide (1 + xk), where k = 2n–1

BIST Basics - LFSR

slide-26
SLIDE 26

Properties of m-sequences

1. The period of {an} is p=2n-1, that is, ap+I = ai, for all i ≥ ≥ ≥ ≥ 0. 2. Starting from any nonzero state, the LFSR that generates {an} goes through all 2n-1 states before repeating. 3. The number of 1’s differs from the number of 0’s by

November 2, 2012 26

3. The number of 1’s differs from the number of 0’s by

  • ne.

4. If a window of width n is slid along an m-sequence, then each of the 2n-1 nonzero binary n-tuples is seen exactly once in a period. 5. In every period of an m-sequence, one-half the runs have length 1, one-fourth have length 2, one-eighth have length 3, and so on.

slide-27
SLIDE 27

Randomness Properties of m-sequence

  • m-sequences generated by LFSRs are

called pseudo random sequence.

– The autocorrelation of any output bit is very close to zero. – The correlation of any two output bits is very – The correlation of any two output bits is very close to zero.

BIST Basics - LFSR

slide-28
SLIDE 28

LFSR as Pseudo-Random Pattern Generator

  • Standard LFSR

– Produces patterns algorithmically – repeatable. – Has most of desirable randomness properties.

  • Need not cover all 2n input combinations.
  • Long sequences needed for good fault

November 2, 2012 28

  • Long sequences needed for good fault

coverage.

slide-29
SLIDE 29

Weighted Pseudo-Random Pattern Generation

  • If p (1) at all PIs is 0.5, pF (1) = 0.58 =

1 256

  • November 2, 2012

29

  • If p (1) at all PIs is 0.5, pF (1) = 0.5

=

  • Will need enormous # of random patterns to test

a stuck-at 0 fault on F.

  • We must not use an ordinary LFSR to test this.
  • IBM holds patents on weighted pseudo-random

pattern generator in ATE.

256 255 256 1 256

pF (0) = 1 – =

slide-30
SLIDE 30
  • LFSR p (1) = 0.5
  • Solution:

– Add programmable weight selection and complement LFSR bits to get p (1)’s other than 0.5.

November 2, 2012 30

0.5.

  • Need 2-3 weight sets for a typical circuit.
  • Weighted pattern generator drastically

shortens pattern length for pseudo- random patterns.

slide-31
SLIDE 31

Weighted Pattern Generator

November 2, 2012 31

w1 w2 1 1 Inv. 1 1 p (output) ½ ½ ¼ 3/4 w1 1 1 1 1 w2 1 1 p (output) 1/8 7/8 1/16 15/16 Inv. 1 1

slide-32
SLIDE 32

How to compute weights?

  • Assume p(1) of primary output(s) to be

0.5.

  • Systematically backtrace and compute the

p(1) values of all other lines.

  • Finally obtain the p(1) values of the

November 2, 2012 32

  • Finally obtain the p(1) values of the

primary input lines.

slide-33
SLIDE 33

Cellular Automata (CA)

  • Superior to LFSR – even “more” random

No shift-induced bit value correlation Can make LFSR more random with linear phase shifter

  • Regular connections – each cell only connects to local

neighbors x (t) x (t) x (t)

November 2, 2012 33

xc-1 (t) xc (t) xc+1 (t) Gives CA cell connections 111 110 101 100 011 010 001 000

xc (t + 1)

0 1 0 1 1 0 1 0

26 + 24 + 23 + 21 = 90 Called Rule 90 xc (t + 1) = xc-1 (t) ⊕ ⊕ ⊕ ⊕ xc+1 (t)

slide-34
SLIDE 34

Cellular Automata Example

November 2, 2012 34

  • Five-stage hybrid cellular automaton
  • Rule 150: xc (t + 1) = xc-1 (t) ⊕

⊕ ⊕ ⊕ xc (t) ⊕ ⊕ ⊕ ⊕ xc+1 (t)

  • Alternate Rule 90 and Rule 150 CA
slide-35
SLIDE 35

Test Pattern Augmentation

  • Secondary ROM – to get LFSR to 100% stuck-at

fault coverage.

– Add a small ROM with missing test patterns. – Add extra circuit mode to input MUX – shift to ROM patterns after LFSR done. – LFSR reseeding is another alternative.

November 2, 2012 35

– LFSR reseeding is another alternative.

  • Use diffracter:

– Generates cluster of patterns in neighborhood of stored ROM pattern.

  • Transform LFSR patterns into new vector set.
  • Put LFSR and transformation hardware in full-

scan chain.

slide-36
SLIDE 36

Test Response Compaction

November 2, 2012 36

slide-37
SLIDE 37

Response Compaction

  • Huge volume of data in CUT response:

– An example:

  • Generate 5 million random patterns
  • CUT has 200 outputs
  • Leads to: 5 million x 200 = 1 billion bits response

November 2, 2012 37

  • Uneconomical to store and check all of

these responses on chip.

  • Responses must be compacted.
slide-38
SLIDE 38

Definitions

  • Aliasing

– Due to information loss, signatures of good and some bad circuits match.

  • Compaction

– Drastically reduce # bits in original circuit

November 2, 2012 38

– Drastically reduce # bits in original circuit response. – Loss of information.

  • Compression

– Reduce # bits in original circuit response . – No information loss – fully invertible (can get back original response).

slide-39
SLIDE 39
  • Signature analysis

– Compact good machine response into good machine signature. – Actual signature generated during testing, and compared with good machine signature

November 2, 2012 39

compared with good machine signature

  • Ones Count (Syndrome) Compaction.

– Count # of 1’s

  • Transition Count Response Compaction

– Count # of transitions from 0

  • 1 and 1
  • as a signature.
slide-40
SLIDE 40

BIST - Response Compression

  • Introduction
  • Ones-Count Compression
  • Transition-Count Compression
  • Syndrome-Count Compression
  • Signature Analysis
  • Space Compression
slide-41
SLIDE 41

Some Points

  • Bit-to-bit comparison is infeasible for BIST.
  • General principle:

– Compress a very long output sequence into a single signature. – Compare the compressed word with the prestored golden signature to determine the correctness of the

November 2, 2012 41

golden signature to determine the correctness of the circuit.

  • Problem of aliasing:

– Many output sequences may have the same signature after the compression.

  • Poor diagnosis resolution after compression.
slide-42
SLIDE 42

Ones-Count - Hardware

  • Apply predetermined patterns.
  • Count the number of ones in the output

sequence.

Test Pattern CUT Counter Clock

slide-43
SLIDE 43

Ones Counter - Aliasing

  • Aliasing Probability

m : the test length

[ ]

( ) 2

1

1 2 1 m P

m m r OC

π ≅ − − =

m : the test length r : the number of ones

  • r=m/2 :: the case with the highest aliasing prob.
  • r=m and r=0 :: no aliasing probability
  • For combinational circuits, the input sequence can

be permuted without changing the count.

slide-44
SLIDE 44

Transition Count - Hardware

  • Apply predetermined patterns
  • Count the number of the transitions

(0

  • 1 and 1
  • 0).

DFF Test Pattern CUT Counter Clock DFF

slide-45
SLIDE 45

Transition Count

  • Aliasing Probability

m : the test length

[ ]

( )

P m

TC r m m

= − − ≅

2 1 2 1

1 12

π

m : the test length r : the number of transitions

  • r=m/2 :: highest aliasing probability
  • r=0 and r=m :: no aliasing probability
slide-46
SLIDE 46

Transition count:

C (R) = Σ Σ Σ Σ (ri ⊕ ⊕ ⊕ ⊕ ri-1) for all m primary outputs

i = 1 m

November 2, 2012 46

To maximize fault coverage:

Make C (R0) – good machine transition count – as large or as small as possible

slide-47
SLIDE 47

Syndrome Testing

  • Apply exhaustive test patterns.
  • Count the number of 1’s in the output.
  • Normalize by dividing with number of

minterms.

counter CUT Syndrome counter Clock

slide-48
SLIDE 48

Analysis of Syndrome Testing

November 2, 2012 48

slide-49
SLIDE 49

Signature Analysis

  • Apply predetermined test patterns.
  • Compress the output sequence by LFSR.

– Compressed value is called signature. Test Pattern CUT LFSR

slide-50
SLIDE 50

Signature Analysis

  • Aliasing Probability

m: test length, n: length of LFSR

  • Aliasing probability is output independent.

P

SA m n m n

= − − ≅

− −

2 1 2 1 2

  • Aliasing probability is output independent.
  • An LFSR with two or more nonzero coefficients detect

any single faults.

  • An LFSR with primitive polynomial detect any double

faults separated less than 2n-1.

slide-51
SLIDE 51

LFSR Based Response Compaction

November 2, 2012 51

slide-52
SLIDE 52

LFSR for Response Compaction

  • Use LFSR based CRC generator as response

compacter.

  • Treat data bits from circuit POs to be compacted as

a decreasing order coefficient polynomial.

  • CRC divides the PO polynomial by its characteristic

November 2, 2012 52

polynomial.

– Leaves remainder of division in LFSR. – Must initialize LFSR to seed value (usually 0) before testing.

  • After testing – compare signature in LFSR to known

good machine signature.

  • Critical: Must compute good machine signature.
slide-53
SLIDE 53

Example Modular LFSR Response Compacter

November 2, 2012 53

  • LFSR seed value is “00000”
slide-54
SLIDE 54

Polynomial Division

Inputs Initial State 1 X0 1 X1 1 X2 1 X3 1 X4 Logic Simulation:

November 2, 2012 54

Logic simulation: Remainder = 1 + x2 + x3 0 1 0 1 0 0 0 1 Input polynomial: x1 + x3 + x7 1 1 1 1 1 1 1 1 1 1 1 1 1 Simulation:

slide-55
SLIDE 55

Symbolic Polynomial Division

x2 x7 x7 + 1 + x5 x5 + x3 + x3 + x2 + x2 + x + x

x5 + x3 + x + 1

November 2, 2012 55

x x5 + x3 x3 + x + x2 + x + x + 1 + 1 remainder Remainder matches that from logic simulation

  • f the response compacter!
slide-56
SLIDE 56

Multiple-Input Signature Register (MISR)

  • Problem with ordinary LFSR response

compacter:

– Too much hardware if one of these is put on each primary output (PO)

  • Solution: MISR – compacts all outputs into
  • ne LFSR

November 2, 2012 56

  • ne LFSR

– Works because LFSR is linear – obeys superposition principle – Superimpose all responses in one LFSR – Final remainder is XOR sum of remainders of polynomial divisions of each PO by the characteristic polynomial

slide-57
SLIDE 57

Multiple Input Signature Register (MISR)

type 1 D4 + D3 + D2 + D1 + + D4 + D3 + D2 + D1 + type 2 type 1

slide-58
SLIDE 58

MISR Matrix Equation

  • di (t) – output response on POi at time t

X0 (t + 1) 1

  • X0 (t)

d0 (t)

November 2, 2012 58

X0 (t + 1) X1 (t + 1) . . . Xn-3 (t + 1) Xn-2 (t + 1) Xn-1 (t + 1) 1 . . . h1 . . . 1

  • .

. . 1 hn-2 . . . 1 hn-1 X0 (t) X1 (t) . . . Xn-3 (t) Xn-2 (t) Xn-1 (t)

  • d0 (t)

d1 (t) . . . dn-3 (t) dn-2 (t) dn-1 (t)

slide-59
SLIDE 59

Modular MISR Example

November 2, 2012 59

X0 (t + 1) X1 (t + 1) X2 (t + 1) 1 1 1 1

  • X0 (t)

X1 (t) X2 (t) d0 (t) d1 (t) d2 (t) +

slide-60
SLIDE 60

Multiple Signature Checking

  • Use 2 different testing epochs:

1st with MISR with 1 polynomial 2nd with MISR with different polynomial

  • Reduces probability of aliasing –

Very unlikely that both polynomials will alias for the same

November 2, 2012 60

Very unlikely that both polynomials will alias for the same fault

  • Low hardware cost:

A few XOR gates for the 2nd MISR polynomial A 2-1 MUX to select between two feedback polynomials

slide-61
SLIDE 61

Summary

  • LFSR pattern generator and MISR response

compacter – preferred BIST methods

  • BIST has overheads: test controller, extra circuit

delay, Input MUX, pattern generator, response compacter, DFT to initialize circuit & test the test hardware

November 2, 2012 61

hardware

  • BIST benefits:

– At-speed testing for delay & stuck-at faults – Drastic ATE cost reduction – Field test capability – Faster diagnosis during system test – Less effort to design testing process – Shorter test application times