0% found this document useful (0 votes)
42 views20 pages

VLSI Design: Testability Techniques

This document summarizes a lecture on design for testability (DFT) techniques. It discusses adding scan chains to circuits to improve controllability and observability for testing. It describes level-sensitive scan design (LSSD) and how to convert flip-flops to scannable flip-flops in a scan chain. It also discusses boundary scan for testing printed circuit boards and IDDQ testing to detect defects that increase quiescent power supply current.

Uploaded by

gangavinodc123
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
42 views20 pages

VLSI Design: Testability Techniques

This document summarizes a lecture on design for testability (DFT) techniques. It discusses adding scan chains to circuits to improve controllability and observability for testing. It describes level-sensitive scan design (LSSD) and how to convert flip-flops to scannable flip-flops in a scan chain. It also discusses boundary scan for testing printed circuit boards and IDDQ testing to detect defects that increase quiescent power supply current.

Uploaded by

gangavinodc123
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

VLSI Design, Fall 2020

20. Design for Testability 1

20. Design for Testability

Jacob Abraham

Department of Electrical and Computer Engineering


The University of Texas at Austin
VLSI Design
Fall 2020

November 5, 2020

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 1 / 38

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 at
each internal node by setting inputs
Observability: ability to determine internal values by
controlling inputs and observing outputs
Ensure predictable circuit responses
Tradeoffs
Technical: area, I/O pins, performance
Economic: design time, yield, time to revenue

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 1 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 2

Testable Sequential Circuits

Sequential circuits are very difficult to test

Design the internal memory


elements to be part of a
shifter register chain to
provide controllability,
observability through serial
shifts

With scan chain, problem of testing any circuit reduces to testing


the combinational logic

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 2 / 38

Level-Sensitive Scan Design (LSSD)

Structured DFT developed at IBM


All internal storage implemented in hazard-free polarity-hold
latches (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 when
primary inputs (PIs) are “off”
Clock signal at any clock input to an SRL must be controlled
from one or more clock PIs
No clock can be ANDed with another clock
Clock PIs cannot feed data inputs to latches, either directly or
through combinational logic

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 3 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 3

Scan Chains
Convert each flip-flop to a scan register
Only 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 scanned
in

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 4 / 38

Scannable Flip-Flops

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 5 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 4

Boundary Scan

Testing boards is also difficult


Need to verify solder joints are good
Drive a pin to 0, then to 1
Check 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 the
board
SMT and BGA boards cannot easily contact pins
Build capability of observing and controlling pins into each
chip to make board test easier

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 6 / 38

Boundary Scan (IEEE 1149.1)

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 7 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 5

Boundary Scan Example

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 8 / 38

Boundary Scan Interface

Boundary scan is accessed through five pins


TCK: test clock
TMS: test mode select
TDI: test data in
TDO: test data out
TRST*: test reset (optional)
Chips with internal scan chains can access the chains through
boundary scan for unified test strategy

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 9 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 6

IDDQ Testing

Measure quiescent power supply current of CMOS circuits


for selected test vectors
Example, microprocessor has nanoamps of current with no
faults; many defects (shorts, for example) cause much higher
currents
Direct relationship found (Sandia Labs., HP, Phillips) between
IDDQ test acceptance rates and quality, reliability of ICs
Only need to activate site of potential defect (no need to
propagate errors)
Leakage current in very large chips may overwhelm the abnormal
current due to a fault in one gate

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 10 / 38

IDDQ Testing, Cont’d

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 11 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 7

Commercial Tool for DfT Insertion

Source: Synopsys, Inc.


ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 12 / 38

Built-In Self Test (BIST)

Increasing circuit complexity, tester cost


Interest in techniques which integrate some tester capabilities
on the chip
Reduce tester costs
Test 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 evaluation
on chip – BIST

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 13 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 8

Pseudo-Random Sequence Generator (PRSG)

Linear Feedback Shift Register


Shift register with input taken from XOR of state
Pseudo-Random Sequence Generator (or Pseudo-Random
Pattern Generator (PRPG), or Linear Feedback Shift Register
(LFSR))
Step Q
0 111
1 110
2 101
3 010
4 100
5 001
6 011
7 111 (repeats)

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 14 / 38

Example of BIST

Technique called
STUMPS (from IBM)

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 15 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 9

Testability Techniques for 68020 ROMs

Used test mode to force next microcode address (NMA) from


data pins
Data pins also control a MUX for both micro and nano ROM
outputs, which are moved to the BC bus, into the data
section of the execution unit, and to the address bus which
can be observed

Exhaustive testing of the


2K ROM entries
32 bits of ROM visible
every 2 clocks
Four passes of tests
needed to read the 110
outputs of the two ROMs

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 16 / 38

Microrom Test in MC68881 Floating Point Co-processor


ROM physically split into two sections
In test mode, ROM is addressed directly through the
command register
Exhaustive addresses fed to ROM in a “ping-pong” fashion
(address/address complement)
Outputs of ROM go to two 16-bit signature registers (using
CCITT-16 polynomial x15 + x12 + x5 + 1)
Monitor both the quotient and final signature serially on a
test pin (Probability of aliasing 2−(n+m−1) )

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 17 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 10

MC68881 NanoROM Test


NanoROM physically located between the microROM and the
execution unit (ECU), and outputs fed to ECU
No functional path for nanoROM to access signature registers
In test mode, nanoROM columns coupled with the microROM
columns (with additional columns of nanoROM multiplexed to
signature register)

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 18 / 38

MC68881 Entry PLA Test

Four entry PLAs, A0, A1, A2 and A3


A0 PLA contains the entry point reset vectors and is
completely tested functionally
A1–A3 tested like the ROMs

Command register generates


patterns and outputs are routed
through a bus to the signature
register
Test patterns generated using PLA
test generator
PLA Inputs Outputs Products
A1 6 10 23
A2 13 10 133
A3 5 10 28
Response 25 25 56

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 19 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 11

Built-in Self Test in the Intel 80386

Normal PLA inputs disabled during test and output of


pseudorandom generator provides exhaustive set of tests to
AND-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 tested
with BIST: 52.5%
Area tested: 18.6%

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 20 / 38

Testing Cache Memory Arrays in MC68030


Cache cell layout design is resistant to both bridging defects
and capacitive coupling
Most likely bridging defect is between adjacent metal bit lines
Memory fault model:
One or more cells stuck at 0 or 1
Coupling between cells
11n March Test (Marinescu, 1982)

Refresh and data retention tests for the dynamic memory cells
ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 21 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 12

MC68040 Scan Chain and Timing

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 22 / 38

BIST in IBM Risc System/6000

LSSD with pseudo-random BIST

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 23 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 13

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

Hardware for pseudo-random vector generation and result


compression (31-bit LFSR)
ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 24 / 38

BIST in IBM/Motorola Power-PC

Variety of test techniques applied to the Power-PC 603


Full LSSD test of logic
BIST of “large” embedded RAMS
Functional test of small RAMS
IDDQ tests
BIST for cache and tag RAMs
Functional vectors (good for data cache, not instruction cache)
and random BIST (size, complexity, test coverage) not
applicable
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 MUX
input leg
All four RAMs tested in parallel, 2.5 mS at 80 MHz

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 25 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 14

Issues with Built-In Self Test

Technique can run test sequences at operating frequencies and


capture results within the chip

Pseudorandom pattern generators, signature analyzers


Can also use weighted random
patterns or deterministic patterns
Example (Synopsys): Deterministic
Logic BIST
Problems:
Hardware overhead
Test power
Non-functional modes during test

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 26 / 38

Industry Issues with Processor Testing

Concern with detecting real defects


Small delay defects due to process variations, power droops
and 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 operating
modes

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 27 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 15

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

Why not use functional capabilities of processors to replace


BIST hardware?
No additional hardware
Reduce test costs by using low-cost testers
Increase coverage of delay defects and increase yield by testing
native
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 20. Design for Testability Jacob Abraham, November 5, 2020 28 / 38

Software Based Self Test

Advantages
X Minimized
DFT
circuitry
X Reduced
external
tester per-
formance
X Excessive
test power
and
over-testing
eliminated

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 29 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 16

Intel Functional BIST


Functional Random Instruction Testing at Speed (FRITS) applied
to Itanium processor family and Pentium 4 line (ITC 2002)
Tests (kernels) are instruction sequences

Kernels loaded into cache and executed in real time during


test application
They generate and execute pseudo-random or directed
sequences of machine code
On Pentium-4, FRITS
added 5% unique coverage to manual tests
screened 10% – 15% of chips which passed wafer
sort/package tests, but failed system tests
enabled low-cost testers: 40% increase in defect screening on
structural tester
Kernels execute 20 loops in ≈ 8 mSecs
ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 30 / 38

Are Random Tests Sufficient?

Intel implementation involved code in the cache which generated


random instruction sequences
Interest in generating instructions targeting faults
Possible to generate instruction sequences which will test for
an internal stuck-at fault in a module
In order to deal with defects in DSM technologies, need to target
small delay defects
Automatically generate instruction sequences which will
target small delay defects in an internal module

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 31 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 17

RT Level Test Generation for Hard-to Detect Faults


Overview
Map gate level stuck-at fault
to RTL
Capture the propagation
constraints as an LTL
property
Generate a witness for the
LTL property using Bounded
Model Checking
All required constraints
available in RTL
Use SMT based Bounded
Model Checking
Scaling with
cone-of-influence reduction

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 32 / 38

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 20. Design for Testability Jacob Abraham, November 5, 2020 33 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 18

RT Level Test Generation for Hard-to Detect Faults


Experimental Results using SMT Solver

SAT based Naive Observability


Module ATPG Flts.
method Method
FC(%)
FC(%) # TO T(sec) FC(%) # TO T(sec)
if 80.35 328 84.11 310 96.18 88.49 161 95.13
ctrl 63.21 832 65.97 817 83.12 97.15 59 69.72
oprmux 73.66 378 76.09 354 95.49 98.26 6 57.46
sprs 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.51
rf 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 seconds
ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 34 / 38

Experimental Results, Structural Observability

Module FC(%) # TO T(sec) FC(%) : Fault


if 98.17 25 23.14 Coverage in %
ctrl 99.21 8 21.16 # Faults : # of
oprmuxes 100 0 19.33 Undetected Collapsed
sprs 97.53 12 18.39 Faults
freeze 100 0 10.48 # TO : # of Timed
rf 98.37 172 22.85 Out faults
except 97.63 69 38.14 T(sec) : Average Time
Overall 98.87 454 24.23 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 20. Design for Testability Jacob Abraham, November 5, 2020 35 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 19

Detecting Delay Defects After Manufacturing

Necessary to detect “small-delay defects”


Delay defects which don’t affect performance soon after
manufacture could be reliability hazards
Need Path Delay Tests to ensure that defective parts are
screened out
Difficult to apply two-pattern tests in scan mode
Requires precise control of clocks for high-speed circuits
If capture clocks are based on the system clock, there is no
information on the slack for the path
Solution: On-chip programmable capture mechanism
Ability to capture faster than at-speed

ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 36 / 38

Delay Lines for On-Chip Programmable Capture

Source: R. Tayade, et al.


ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 37 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020
VLSI Design, Fall 2020
20. Design for Testability 20

System for On-Chip Programmable Capture

Source: R. Tayade, et al.


ECE Department, University of Texas at Austin Lecture 20. Design for Testability Jacob Abraham, November 5, 2020 38 / 38

Department of Electrical and Computer Engineering, The University of Texas at Austin


J. A. Abraham, November 5, 2020

You might also like