21. design for testability...example, microprocessor has nanoamps of current with no faults; many...

50
21. Design for Testability J. A. Abraham Department of Electrical and Computer Engineering The University of Texas at Austin VLSI Design Fall 2015 November 11, 2015 ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 1 / 51

Upload: others

Post on 06-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

21. Design for Testability

J. A. Abraham

Department of Electrical and Computer EngineeringThe University of Texas at Austin

VLSI DesignFall 2015

November 11, 2015

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 1 / 51

Page 2: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Design for Testability (DFT)

Reduce costs associated with testing complex circuit

Design circuit so that it will be easier to test

Increase accessibility of internal nodes

Controllability: ability to establish specific signal value ateach internal node by setting inputsObservability: ability to determine internal values bycontrolling inputs and observing outputs

Ensure predictable circuit responses

Tradeoffs

Technical: area, I/O pins, performanceEconomic: design time, yield, time to revenue

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 1 / 51

Page 3: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Testable Sequential Circuits

Sequential circuits are very difficult to test

Design the internal memoryelements to be part of ashifter register chain toprovide controllability,observability through serialshifts

With scan chain, problem of testing any circuit reduces to testingthe combinational logic

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 2 / 51

Page 4: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Level-Sensitive Scan Design (LSSD)

Structured DFT developed at IBM

All internal storage implemented in hazard-free polarity-holdlatches (SRLs), part of a scan chain

Latches controlled by two or more non-overlapping clocks,with rules for clocking

All clock inputs to SRLs must be in their off states whenprimary inputs (PIs) are “off”Clock signal at any clock input to an SRL must be controlledfrom one or more clock PIsNo clock can be ANDed with another clockClock PIs cannot feed data inputs to latches, either directly orthrough combinational logic

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 3 / 51

Page 5: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Scan Chains

Convert each flip-flop to a scan registerOnly costs one extra multiplexer

Normal mode: flip-flops behave as usual

Scan mode: flip-flops behave as shift register

Contents of flops can be scanned out and new values scannedin

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 4 / 51

Page 6: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Scannable Flip-Flops

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 5 / 51

Page 7: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Boundary Scan

Testing boards is also difficult

Need to verify solder joints are goodDrive a pin to 0, then to 1Check that all connected pins get the values

Single-sided PC boards with “through-hole” construction used“bed of nails” to contact pins of chip on the back side of theboard

SMT and BGA boards cannot easily contact pins

Build capability of observing and controlling pins into eachchip to make board test easier

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 6 / 51

Page 8: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Boundary Scan (IEEE 1149.1)

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 7 / 51

Page 9: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Boundary Scan Example

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 8 / 51

Page 10: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Boundary Scan Interface

Boundary scan is accessed through five pins

TCK: test clockTMS: test mode selectTDI: test data inTDO: test data outTRST*: test reset (optional)

Chips with internal scan chains can access the chains throughboundary scan for unified test strategy

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 9 / 51

Page 11: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

IDDQ Testing

Measure quiescent power supply current of CMOS circuitsfor selected test vectors

Example, microprocessor has nanoamps of current with nofaults; many defects (shorts, for example) cause much highercurrents

Direct relationship found (Sandia Labs., HP, Phillips) betweenIDDQ test acceptance rates and quality, reliability of ICs

Only need to activate site of potential defect (no need topropagate errors)

Leakage current in very large chips may overwhelm the abnormalcurrent due to a fault in one gate

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 10 / 51

Page 12: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

IDDQ Testing, Cont’d

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 11 / 51

Page 13: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Built-In Self Test (BIST)

Increasing circuit complexity, tester cost

Interest in techniques which integrate some tester capabilitieson the chip

Reduce tester costsTest circuits at speed (more thoroughly)

Approach:

Compress test responses into “signature”Pseudo-random (or pseudo-exhaustive) pattern generator(PRG) on the chip

Integrating pattern generation and response evaluationon chip – BIST

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 12 / 51

Page 14: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Pseudo-Random Sequence Generator (PRSG)

Linear Feedback Shift Register

Shift register with input taken from XOR of statePseudo-Random Sequence Generator (or Pseudo-RandomPattern Generator (PRPG), or Linear Feedback Shift Register(LFSR))

Step Q0 1111 1102 1013 0104 1005 0016 0117 111 (repeats)

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 13 / 51

Page 15: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Example of BIST

Technique calledSTUMPS (from IBM)

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 14 / 51

Page 16: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Testability Issues – Custom Microprocessors

Chip complexity, large volumes, costs

Area/performance penalties

Fault (defect) coverage goals

Test generation (fault simulation) costs

Development time

Tester time (manufacturing costs)

ASICs generally use a “full scan” methodology for testability

Some of the ad-hoc techniques used in custom microprocessors willbe described in the following slides

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 15 / 51

Page 17: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Testability Features of the Motorola 68020

Chip Statistics:

Process: 2µ HCMOSDie Size: 375 × 347 milsTransistor count: 200K

Test Overhead

Test Logic Area: < 3%Test Microcode: < 2%Test routing shared with functional routing to keep chip areadownBus structure helped create test partitioning for embeddedstructuresTradeoff of extra time to produce ad-hoc test logic withexpected higher yield

Test techniques for ROMs, PLAs, Cache

Test mode not available to customers (Why??)

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 16 / 51

Page 18: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Testing Scheme for ROMs in the 68000 Family

Initial schemes for testing 68000 family control structuresinvolved bussing nanoROM outputs off-chip via the addressbus in test mode

Could not test at speed since nanoROM output buffers werenot sized to drive a bus

Only nanobits were observable, and the PLAs, microROM andnanoROM had to be tested as one large sequential machine

Test sequences were lengthy and difficult to write

Tests were also microcode dependent

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 17 / 51

Page 19: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Testability Techniques for 68020 ROMs

Used test mode to force next microcode address (NMA) fromdata pins

Data pins also control a MUX for both micro and nano ROMoutputs, which are moved to the BC bus, into the datasection of the execution unit, and to the address bus whichcan be observed

Exhaustive testing of the2K ROM entries

32 bits of ROM visibleevery 2 clocks

Four passes of testsneeded to read the 110outputs of the two ROMs

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 18 / 51

Page 20: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Microrom Test in MC68881 Floating Point Co-processorROM physically split into two sectionsIn test mode, ROM is addressed directly through thecommand registerExhaustive addresses fed to ROM in a “ping-pong” fashion(address/address complement)Outputs of ROM go to two 16-bit signature registers (usingCCITT-16 polynomial x15 + x12 + x5 + 1)Monitor both the quotient and final signature serially on atest pin (Probability of aliasing 2−(n+m−1))

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 19 / 51

Page 21: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

MC68881 NanoROM Test

NanoROM physically located between the microROM and theexecution unit (ECU), and outputs fed to ECU

No functional path for nanoROM to access signature registers

In test mode, nanoROM columns coupled with the microROMcolumns (with additional columns of nanoROM multiplexed tosignature register)

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 20 / 51

Page 22: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

MC68881 Entry PLA Test

Four entry PLAs, A0, A1, A2 and A3

A0 PLA contains the entry point reset vectors and iscompletely tested functionallyA1–A3 tested like the ROMs

Command register generatespatterns and outputs are routedthrough a bus to the signatureregister

Test patterns generated using PLAtest generator

PLA Inputs Outputs Products

A1 6 10 23A2 13 10 133A3 5 10 28Response 25 25 56

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 21 / 51

Page 23: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Built-in Self Test in the Intel 80386

Normal PLA inputs disabled during test and output ofpseudorandom generator provides exhaustive set of tests toAND-plane input

CROM tested with binary counter (exhaustive test)

Responses compressed using multiple-input signature registers

Test transistors: 2.7%

Area overhead for BIST:1.8%

Transistor sites testedwith BIST: 52.5%

Area tested: 18.6%

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 22 / 51

Page 24: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Testing Cache Memory Arrays in MC68030

Cache cell layout design is resistant to both bridging defectsand capacitive coupling

Most likely bridging defect is between adjacent metal bit linesMemory fault model:

One or more cells stuck at 0 or 1Coupling between cells

11n March Test (Marinescu, 1982)

Refresh and data retention tests for the dynamic memory cellsECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 23 / 51

Page 25: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Test Architecture of MC68040

Utilizes three different DFT methods

Functional tests for data paths with normal mode instructionsAd-hoc test modes constructed for testing on-chip memoryarrays and on-chip phase-locked loopExtension of existing functional snoop logic to allow arrays tobe accessed from the bus similar to a static RAM arrayStructured custom scan approach for ROM, PLA and controlareas

Global test bus driven from two 5-bit registers coordinates testlogic

IEEE 1149.1 boundary scan test interface

Boundary scan data register shared with scan logic

Test overhead:

18,560 devices, 1.55% of total number of devices3.15% of total die area, including global test signal routing

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 24 / 51

Page 26: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

MC68040 DFT Method Coverage

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 25 / 51

Page 27: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

MC68040 Scan Chain and Timing

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 26 / 51

Page 28: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

BIST in IBM Risc System/6000

LSSD with pseudo-random BIST

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 27 / 51

CommonEngineeringProcessor (COP),bus, on-cardsequencer (OCS),engineeringsupport processor(ESP)

Page 29: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Common on-chip Processor (COP) in IBM RS/6000

Hardware for pseudo-random vector generation and resultcompression (31-bit LFSR)

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 28 / 51

Small processor controlsoperation

Page 30: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

BIST in IBM/Motorola Power-PC

Variety of test techniques applied to the Power-PC 603

Full LSSD test of logicBIST of “large” embedded RAMSFunctional test of small RAMSIDDQ tests

BIST for cache and tag RAMs

Functional vectors (good for data cache, not instruction cache)and random BIST (size, complexity, test coverage) notapplicable

Use modified march test of Dekker (1988)

log2 n pattern for data

Overhead: BIST is 2.9% of RAM array, 0.58% of total chip

Performance impact: less than 100 pS due to extra MUXinput leg

All four RAMs tested in parallel, 2.5 mS at 80 MHz

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 29 / 51

Page 31: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Testing Embedded Cores in a System on Chip

Source/Sink for test: Embedded processorTest access mechanisms: BussesCore test “wrapper” for Test AccessInterface (TAI)

Lagged Fibonnaci Sequencerandom pattern generatorXn = (Xn24 +Xn55) mod m,n ≥ 55Primitive polynomial:X55 +X24 + 1Period: 2321 × (255 − 1)No multiplication necessary

x86 code for generator:

LDR R5,[R0],#4

LDR R6,[R1],#4

ADD R5,R5,R6

STR R5,[R2],#4

AND R0,R0,R3

AND R1,R1,R3

AND R2,R2,R3ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 30 / 51

Page 32: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Issues with Built-In Self Test

Technique can run test sequences at operating frequencies andcapture results within the chip

Pseudorandom pattern generators, signature analyzers

Can also use weighted randompatterns or deterministic patterns

Example (Synopsys): (DeterministicLogic BIST

Problems:Hardware overheadTest powerNon-functional modes during test

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 31 / 51

Page 33: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Industry Issues with Processor Testing

Concern with detecting real defects

Small delay defects due to process variations, power droopsand capacitive coupling

Cause a shift in the speed of the part

Problems with logic BIST (same issues with scan AC tests)

Overheads on chip

False paths tested

Test operating conditions different from normal operatingmodes

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 32 / 51

Page 34: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Software-Based (Native-Mode) Self Test for Processors

Why not use functional capabilities of processors to replaceBIST hardware?

No additional hardware

Reduce test costs by using low-cost testers

Increase coverage of delay defects and increase yield by testingnative

No issues with excessive power consumption during test

Developed at University of Texas (Int’l Test Conference 1998)

Application to processors at Intel (Int’l Test Conference 2002)

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 33 / 51

Page 35: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Software Based Self Test

Advantages

X MinimizedDFTcircuitry

X Reducedexternaltester per-formance

X Excessivetest powerandover-testingeliminated

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 34 / 51

Page 36: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Native-Mode Signature Compression

Pseudo-code for software signature analyzer// S: general register or memory, holds signature

for each register Ri to be compressed

{Shift Right Through Carry(Ri);

if (Carry) {S = XOR(S, feedback polynomial)};S = XOR(S, Ri);

}ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 35 / 51

Page 37: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Intel Functional BIST

Functional Random Instruction Testing at Speed (FRITS) appliedto Itanium processor family and Pentium 4 line (ITC 2002)

Tests (kernels) are instruction sequences

Kernels loaded into cache and executed in real time duringtest application

They generate and execute pseudo-random or directedsequences of machine code

On Pentium-4, FRITS

added 5% unique coverage to manual tests

screened 10% – 15% of chips which passed wafersort/package tests, but failed system tests

enabled low-cost testers: 40% increase in defect screening onstructural tester

Kernels execute 20 loops in ≈ 8 mSecsECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 36 / 51

Page 38: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Are Random Tests Sufficient?

Intel implementation involved code in the cache which generatedrandom instruction sequences

Interest in generating instructions targeting faults

Possible to generate instruction sequences which will test foran internal stuck-at fault in a module

In order to deal with defects in DSM technologies, need to targetsmall delay defects

Automatically generate instruction sequences which willtarget small delay defects in an internal module

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 37 / 51

Page 39: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

RT Level Test Generation for Hard-to Detect Faults

Overview

Map gate level stuck-at faultto RTL

Capture the propagationconstraints as an LTLproperty

Generate a witness for theLTL property using BoundedModel Checking

All required constraintsavailable in RTL

Use SMT based BoundedModel Checking

Scaling with

cone-of-influence reduction

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 38 / 51

Page 40: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Modeling Stuck-at Faults in RTL

Approach

Assume one to one match between flops in RTL and gatenetlist

Identify flops/primary outputs o1, o2, ..., on in output cone ofthe fault

Identify the boolean function for each of the outputflops/primary outputs. Ex ok = fk(i1, i2, ..., im)

Identify the Boolean function for the output flops with thefault inserted. Ex ofk = ffk (i1, i2, ..., im)

Fault condition : faultk = fk(i1, i2, ..., im)⊕ ffk (i1, i2, ..., im)

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 39 / 51

Page 41: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Modeling Stuck-at Faults in RTL

Example

always @(posedge clk)sum <= PI ⊕ sum;

sum = (PI ∧ ¬sum) ∨ (¬PI ∧ sum)

sumf = PI ∧ ¬sumfaultsum = sum⊕ sumf = ¬PI ∧ sum

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 40 / 51

Page 42: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Modeling Stuck-at Faults in RTL

Example

always @(posedge clk)sum′f <= PIf ⊕ sumf ;

assign faultsum = (¬PIf ∧ sumf );

assign sumf = (faultsum?¬sum′f : sum′f );

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 41 / 51

Page 43: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Capturing Fault Observability

Naive Approach

Let M be the DUT and Mf be the faulty machine

SMT good = I ∧M0 ∧ ... ∧Mn−1

SMT faulty = I ∧Mf0 ∧ ... ∧M

fn−1

Product Machine, SMTM×Mf= SMT good ∧ SMT faulty

Observability Condition:

F (∨∀i

(Outputi ⊕Outputfi ))

Issues

Two unrolled copies of the machine

Search space is large

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 42 / 51

Page 44: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Capturing Fault Observability

Approach

Identify error(D/D̄) propagation paths in RTL for givenfault(Dependency Graph)

Capture propagation path conditions as observabilityproperties Oj

p

Property for fault excitation and propagation F (Cp ∧Ojp)

Scalability by constraining the search space

Bounded Cone of Influence Reduction

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 43 / 51

Page 45: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

RTL Test Generation for Hard-to-Detect Faults

Experimental Setup

OR1200 RISC processor was DUT

EBMC Model checker / Boolector SMT solver

Bound of pipleine depth + 1

Focused on hard to detect faults in control logic

Commercial ATPG to seive out easy to detect stuck-at faults

78% Fault coverage by commercial ATPG

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 44 / 51

Page 46: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

RT Level Test Generation for Hard-to Detect Faults

Experimental Results using SMT Solver

Module ATPGFC(%)

Flts.SAT basedmethod

Naive ObservabilityMethod

FC(%) # TO T(sec) FC(%) # TO T(sec)

if 80.35 328 84.11 310 96.18 88.49 161 95.13ctrl 63.21 832 65.97 817 83.12 97.15 59 69.72

oprmuxes 73.66 378 76.09 354 95.49 98.26 6 57.46sprs 89.59 393 90.85 381 93.71 93.78 57 90.27

freeze 82.94 17 99.14 2 64.41 100 0 43.51rf 78.59 7444 80.50 7268 97.57 90.21 463 69.83

except 72.69 1263 73.48 1209 98.63 92.79 128 96.19

Overall 78.05 10655 79.17 10343 96.23 93.86 874 76.11

FC(%) : Fault Coverage in %# TO : # of Timed Out faults

T(sec) : Average Time for generating a test for a fault in secondsECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 45 / 51

Page 47: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Experimental Results, Structural Observability

Module FC(%) # TO T(sec)

if 98.17 25 23.14ctrl 99.21 8 21.16

oprmuxes 100 0 19.33sprs 97.53 12 18.39

freeze 100 0 10.48rf 98.37 172 22.85

except 97.63 69 38.14

Overall 98.87 454 24.23

FC(%) : FaultCoverage in %# Faults : # ofUndetected CollapsedFaults# TO : # of TimedOut faults

T(sec) : Average Time

for generating a test for

a fault in seconds

Summary of Results

Functional fault coverage of ≈99% for OR1200 processor

SMT based approach was 4x faster than SAT

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 46 / 51

Page 48: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Detecting Delay Defects After Manufacturing

Necessary to detect “small-delay defects”

Delay defects which don’t affect performance soon aftermanufacture could be reliability hazards

Need Path Delay Tests to ensure that defective parts arescreened out

Difficult to apply two-pattern tests in scan modeRequires precise control of clocks for high-speed circuitsIf capture clocks are based on the system clock, there is noinformation on the slack for the path

Solution: On-chip programmable capture mechanismAbility to capture faster than at-speed

ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 47 / 51

Page 49: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

Delay Lines for On-Chip Programmable Capture

Source: R. Tayade, et al.ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 48 / 51

Page 50: 21. Design for Testability...Example, microprocessor has nanoamps of current with no faults; many defects (shorts, for example) cause much higher currents Direct relationship found

40 60 80 100 120

40

60

80

mm

System for On-Chip Programmable Capture

Source: R. Tayade, et al.ECE Department, University of Texas at Austin Lecture 21. Design for Testability J. A. Abraham, November 11, 2015 49 / 51