+ All Categories
Home > Documents > Requirements for BIST-able designs Scanability connectivity and tracing connectivity and tracing...

Requirements for BIST-able designs Scanability connectivity and tracing connectivity and tracing...

Date post: 02-Jan-2016
Category:
Upload: valerie-alicia-matthews
View: 215 times
Download: 0 times
Share this document with a friend
Popular Tags:
34
Transcript
Page 1: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.
Page 2: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Requirements for BIST-able designsRequirements for BIST-able designs

ScanabilityScanability• connectivity and tracingconnectivity and tracing• data propagationdata propagation• clockingclocking

No bus conflicts No bus conflicts No X state propagation to observable outputsNo X state propagation to observable outputs Random pattern testabilityRandom pattern testability

Page 3: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Sources of X statesSources of X states

Violation on a TIE-X gateViolation on a TIE-X gate Violation on a transparent latchViolation on a transparent latch ROMs or RAMsROMs or RAMs Violation on a busViolation on a bus Non-scan cellNon-scan cell

11

00 11

11

conflictconflict

00

ZZ

00

floatingfloating

Page 4: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Effect of X propagation to MISREffect of X propagation to MISR

Every unknown value can double the number of “correct” signaturesEvery unknown value can double the number of “correct” signatures

00110100101111001010011010010111100101

00110100101110011010010111XX0010100101

Test responseTest response SignatureSignature

For 32 unknown values there are no signatures For 32 unknown values there are no signatures left for fault detection if 32-bit MISR is usedleft for fault detection if 32-bit MISR is used!

00110011XX1001011110010111XX0010100101

Page 5: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Control of three-state driversControl of three-state drivers Avoid using three state drivers Exactly one driver should be active at any time

in normal and test mode

Avoid using three state drivers Exactly one driver should be active at any time

in normal and test mode

decoderdecoder

TT

TT

T

No test pointsNo test points!

Page 6: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Preferred mux-based implementationPreferred mux-based implementation

Page 7: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Feedback loopsFeedback loops

00

00

11

00 00

00

00

Unknown oscillatory state X bounding by blocking the output of the loop Loop cutting by control points

Unknown oscillatory state X bounding by blocking the output of the loop Loop cutting by control points

00

11

11

11

11

Page 8: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Memory test schemesMemory test schemes

BypassBypass

Test modeTest mode

Black boxingBlack boxing• space compactors can be used on inputsspace compactors can be used on inputs• multiplexing or gating on the outputmultiplexing or gating on the output• driven by flip-flops and MTPIdriven by flip-flops and MTPI

TransparTransparency

MemoryMemoryblockblock

Page 9: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Uncontrollable clocksUncontrollable clocks

ClockClock

Test modeTest mode

Make them controllable in test mode!Make them controllable in test mode!

DD QQ DD QQ

Page 10: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Pseudo-random testingPseudo-random testing

Though generated deterministically, test vectors Though generated deterministically, test vectors have the characteristics of random patternshave the characteristics of random patterns

Applicable to both combinational and sequential Applicable to both combinational and sequential circuitscircuits

Fault simulation is requiredFault simulation is required No test data to storeNo test data to store Tests generated by very simple hardwareTests generated by very simple hardware Applicable to BISTApplicable to BIST Must be supplemented by other techniques if Must be supplemented by other techniques if

random-pattern-resistant faults occurrandom-pattern-resistant faults occur

Page 11: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Random pattern resistanceRandom pattern resistance

20% - 40% of faults are typically random 20% - 40% of faults are typically random pattern resistantpattern resistant

Fault coverage

0

20

40

60

80

100

0 20 40 60 80 100

The number of test patterns

%

?

Page 12: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Example of RPRExample of RPR

Only one out of 2Only one out of 23232 (4 billion) patterns detects the fault (4 billion) patterns detects the fault

s-a-0s-a-0

Page 13: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Test points - control pointsTest points - control points

Types of control pointsTypes of control points• AND - enhance controllability of “0”AND - enhance controllability of “0”• OR - enhance controllability of “1”OR - enhance controllability of “1”• XOR - balance control of “0” and “1” without XOR - balance control of “0” and “1” without

reducing observabilityreducing observability Source of stimuliSource of stimuli

• generator of test patterns - pseudorandom and generator of test patterns - pseudorandom and switching independentlyswitching independently

• additional scan cells - pseudorandom and switching additional scan cells - pseudorandom and switching independentlyindependently

• phase decoder - quasistatic and strongly correlatedphase decoder - quasistatic and strongly correlated

Page 14: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

AND and OR control pointsAND and OR control points

Test modeTest mode

Test modeTest mode

Page 15: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Control points driven by scanControl points driven by scan

PPRRPPGG

MMIISSRR

Test modeTest mode

Test modeTest mode

Page 16: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

11

11

11

11

11

11

11

00

11

11

11

11

11

11

11

00

Multiphase test point insertion (MTPI)Multiphase test point insertion (MTPI)

C4C4

C3C3

C2C2

C1C1

PatternPatterncountercounter

AA

CC

BB

DD00

00

00

00

11

11

11

11

11

11

11

00

11

11

00

11

11

11

11

11 Phase Phase C1C1 C2C2 C3C3 C4C4 TestTest00 00 00 00 00 --11 00 11 11 11 AA22 11 00 11 11 BB33 11 11 00 11 CC44 11 11 11 00 DD

00 44

Page 17: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

MTPI architectureMTPI architecture

00 11 22 33

100%100%

FaultFaultcoveragecoverage

Phase decoderPhase decoder

Page 18: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Logic off-limits to control pointsLogic off-limits to control points

Critical paths Bus “one-hot” encoding logic for buses Outputs of large drivers Bounding logic

Page 19: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

STUMPS architectureSTUMPS architecture

scan chainsscan chains

TTEESSTT

GGEENNEERRAATTOORR

CCOOMMPPAACCTTOORR

ControlControl

Page 20: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Logic BIST architecture - MTPILogic BIST architecture - MTPI

MTPIMTPIMTPIMTPI

PPRRPPGG

PPHHAASSEE

SSHHIIFFTTEERR

PPHHAASSEE

SSHHIIFFTTEERR

RunRunResetReset

DoneDoneHold /ResetHold /Reset

Hold /ResetHold /Reset

SenSen

......

BIST controllerBIST controllerBIST controllerBIST controller

ScanScanScanScan

......

ScanScanScanScan

ScanScanScanScan++

++

......

MMIISSRR

ClockClock

Page 21: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Logic BIST architecture - TPILogic BIST architecture - TPI

PPRRPPGG

PPHHAASSEE

SSHHIIFFTTEERR

PPHHAASSEE

SSHHIIFFTTEERR

RunRunResetReset

DoneDoneHold /ResetHold /Reset

Hold /ResetHold /Reset

SenSen

......

BIST controllerBIST controllerBIST controllerBIST controller

ScanScanScanScan

......

ScanScanScanScan++

++

......

MMIISSRR

ClockClock

ScanScanScanScan

Page 22: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

BIST sessionBIST session

ResetReset

SenSen

PPRRPPGG

ClockClock

......

MMIISSRR

ScanScanScanScan

ScanScanScanScan

HoldHoldResetResetHoldHold

ClockClock

SenSen

SCSC

PCPC

128128

00

00128128

11

CC

loadingloading unloadingunloading

Page 23: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Simple BIST controllerSimple BIST controller

BIST ResetBIST Reset

holdhold

SenSen

BISTBISTDoneDone

BIST RunBIST Run.....

.

ClockClock

......

Shift counterShift counterShift counterShift counter

Pattern counterPattern counterPattern counterPattern counter

SenSen

ScanScanScanScan

ScanScanScanScan

SinSin SoutSout

MMIISSRR

PPRRPPGG

Page 24: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

BIST controller and TAPBIST controller and TAPSenSen

holdhold.....

. ......

Shift counterShift counterShift counterShift counter

Pattern counterPattern counterPattern counterPattern counter

SenSen

ScanScanScanScan

ScanScanScanScan

SinSin SoutSout

MMIISSRR

PPRRPPGG

1148.1 TAP1148.1 TAPClk Reset RunClk Reset Run

Page 25: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Boundary scan and BISTBoundary scan and BIST

Load BIST registers

RUNBISTUnload MISR

Application logicApplication logicApplication logicApplication logic

Boundary scanBoundary scanBoundary scanBoundary scan

Instruction registerInstruction registerInstruction registerInstruction register

Instruction decoderInstruction decoder

TAPTAP

OutputOutputbufferbuffer

OutputOutputbufferbuffer

TDITDI

TRST*TRST*TCKTCKTMSTMS

TDOTDO

BRBRBRBR

Device ID registerDevice ID registerDevice ID registerDevice ID register

Pattern counterPattern counterPattern counterPattern counter

PRPG / M ISRPRPG / M ISRPRPG / M ISRPRPG / M ISR

Shift counterShift counterShift counterShift counter

Page 26: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Signature comparisonSignature comparison

MMIISSRR

00

11

00

11

00

11

hardwired comparatorhardwired comparator

Page 27: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Handling of primary inputsHandling of primary inputs

Page 28: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Handling of primary outputsHandling of primary outputs

BISTBIST

Page 29: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Logic BIST flowLogic BIST flow

SCANSCAN X-BoundX-Bound Test PointsTest PointsGate level netlistGate level netlistGate level netlistGate level netlist final core netlistfinal core netlistfinal core netlistfinal core netlist

BIST ControllerBIST ControllerSynthesisSynthesis

Parallel PatternParallel PatternSimulatorSimulator

RTL for controllerRTL for controllerRTL for controllerRTL for controller

Fault coverageFault coveragereportsreports

Fault coverageFault coveragereportsreports

PRPG and MISRPRPG and MISRvalues per patternvalues per patternPRPG and MISRPRPG and MISR

values per patternvalues per pattern

Scan chain load/Scan chain load/unload dataunload data

Scan chain load/Scan chain load/unload dataunload data

RTL toRTL toGatesGates

Testbench & TestTestbench & TestVector GenerationVector Generation

Verilog / VHDLVerilog / VHDLtestbenchtestbench

Verilog / VHDLVerilog / VHDLtestbenchtestbench

Time-basedTime-basedSimulationsSimulations

WGL vectorsWGL vectorsWGL vectorsWGL vectors ATEATE resultsresultsresultsresults

Page 30: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Diagnostics - overviewDiagnostics - overview

Use bypass mode and conventional ATPGUse bypass mode and conventional ATPG• Different pattern set for ATPG versus diagnosticsDifferent pattern set for ATPG versus diagnostics

Use only MISR values to diagnose faultUse only MISR values to diagnose fault• Minimal data volumeMinimal data volume• complex algorithms to isolate failing gatescomplex algorithms to isolate failing gates• Must deal with MISR corruptionMust deal with MISR corruption

Hybrid techniquesHybrid techniques• MISR value is used to identify failing pattern MISR value is used to identify failing pattern • BYPASS mode unloads subset of failing patternsBYPASS mode unloads subset of failing patterns

Page 31: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Diagnostics- hybrid approachDiagnostics- hybrid approach

128k patterns128k patterns128k patterns128k patterns

8k patterns8k patterns8k patterns8k patterns

8k patterns with MISR re-load after each pattern8k patterns with MISR re-load after each pattern8k patterns with MISR re-load after each pattern8k patterns with MISR re-load after each pattern

Check

MISR

Check

MISR

Check

MISR 8k patterns8k patterns8k patterns8k patterns Check

MISR

Check

MISR 8k patterns8k patterns8k patterns8k patterns Check

MISR

Check

MISR

Run pass/fail test

Identify failing pattern regions

Identify individual failing patterns

Seed PRPG,Seed PRPG,

apply patternapply pattern

unload scan dataunload scan data

Seed PRPG,Seed PRPG,

apply patternapply pattern

unload scan dataunload scan data

Unload a subset of failing patternsSeed PRPG,Seed PRPG,

apply patternapply pattern

unload scan dataunload scan data

Seed PRPG,Seed PRPG,

apply patternapply pattern

unload scan dataunload scan data

Seed PRPG,Seed PRPG,

apply patternapply pattern

unload scan dataunload scan data

Seed PRPG,Seed PRPG,

apply patternapply pattern

unload scan dataunload scan data............

............

Page 32: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

TI ResultsTI Results

ASIC-1ASIC-1

125MHz

65K

96.0%

3.4%

0.1s

0.6h

0.9h

At-speed test ? At-speed test ?

BIST pattern count BIST pattern count

BIST stuck-at grade BIST stuck-at grade

BIST gate overhead BIST gate overhead

BIST silicon run time BIST silicon run time

Delta RTL to gates Delta RTL to gates

Fault simulation time Fault simulation time

ASIC-1ASIC-1 ASIC-1ASIC-1 ASIC-1ASIC-1

75MHz

262K

95.7%

2.6%

0.6s

3.0h

3.4h

75MHz

262K

95.3%

2.1%

0.9s

6.0h

5.2h

75MHz

262K

95.6%

1.6%

1.2s

13.4h

4.0h

Page 33: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

Other resultsOther results

SizeSize

1250KCisco Telecom

Design

SpeedSpeed CoverageCoverage

62.5MHz 96.15%

# patterns# patterns

16K

SizeSize

~90K ARM Core

SpeedSpeed CoverageCoverage

? Over 95%

# patterns# patterns

32K

967 ctrl points, 1000 observe points

200 ctrl points, 200 observe points

(ITC 2001)(ITC 2001)(ITC 2001)(ITC 2001)

Page 34: Requirements for BIST-able designs  Scanability connectivity and tracing connectivity and tracing data propagation data propagation clocking clocking.

SummarySummary

BIST-able design should have• scan• no internal bus conflicts or floating buses• no X states propagating to observable outputs• be random-pattern testable

X states are bounded by test logic Random pattern testability is improved by control

and observe points ATPG patterns may be used to achieve the

highest possible coverage


Recommended