coen 6521 vlsi testing scan designzzilic/scan05p2.pdf · 2005-03-17 · testing scan registers need...

30
COEN 6521 VLSI Testing Scan Design Zeljko Zilic McGill University 546 McConnell Eng. Building [email protected]

Upload: others

Post on 31-Dec-2019

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

COEN 6521VLSI TestingScan Design

Zeljko ZilicMcGill University

546 McConnell Eng. [email protected]

Page 2: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Remark

Some of the material used in these slides based on slides by V. [email protected]

Page 3: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

OverviewDefinitionAd-hoc methodsScan design

Design rulesScan registerScan flip-flopsScan test sequencesOverheadsScan design system

Partial Scan

Page 4: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Definitions

Design for testability (DFT) refers to those design techniques that make test generation and test application cost-effective.DFT methods for digital circuits:

Ad-hoc methodsStructured methods:

ScanPartial ScanBuilt-in self-test (BIST)Boundary scan

Page 5: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Ad-Hoc DFT Methods

Good design practices learnt through experience:Avoid asynchronous (unclocked) feedback.Make flip-flops initializable.Avoid redundant gates. Avoid large fanin gates.Provide test control for difficult-to-control signals.Avoid gated clocks.Consider ATE requirements (tristates, etc.)

Design reviews conducted by experts or design auditing toolsDisadvantages of ad-hoc DFT methods:

Experts and tools not always availableTest generation often manual with no guarantee of high fault coverageDesign iterations may be necessary

Page 6: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Scan DesignCircuit designed using pre-specified design rulesTest structure (hardware) added to the verified design:

Adding test control (TC) primary inputReplacing flip-flops by scan flip-flops (SFF) and connecting to form one or more shift registers in test modeMaking input/output of each scan shift register controllable/observable from PI/PO

Use of combinational ATPG to obtain tests for all testable faults in combinational logicAdding shift register tests and converting ATPG tests into scan sequences for use in manufacturing test

Page 7: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Scan Design Rules

Use only clocked D-type of flip-flops for all state variablesAt least one PI pin available for test; more pins, if available, can be usedAll clocks controlled from PIsClocks must not feed data inputs of flip-flops

Page 8: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Correcting Desing Rule Violation

All clocks controlled from PIComb.logic

Comb.logic

D1

D2CK

Q

FF

Comb.logic

D1D2

CK

Q

FF

Comb.logic

Page 9: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Scan Flip-FlopsD

TC

SD

CK

Q

QMUX

D flip-flop

Master latch Slave latch

CK

TC Normal mode, D selected Scan mode, SD selected

Master open Slave opent

t

Logicoverhead

Page 10: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Scan Design

SFF

SFF

SFF

Combinational

logic

PI PO

SCANOUT

SCANINNot shown: CK orMCK/SCK feed allSFFs.

Page 11: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Testing Using Scan

I2I1 O1 O2

S2S1 N2N1

Combinational

logic

PI

Presentstate

PO

Nextstate

SCANINTC SCANOUT

Page 12: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Combinational Test Vectors

I2I1

O1 O2

PI

PO

SCANIN

SCANOUT

S1 S2

N1 N2

0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0TC

Don’t careor random

bits

Sequence length = (ncomb + 1) nsff + ncomb clock periods

ncomb = number of combinational vectorsnsff = number of scan flip-flops

Page 13: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Testing Scan Registers

Need to test scan register prior to application of scan test sequencesShift sequence 00110011 . . . of length nsff+4 in scan mode (TC=0) produces 00, 01, 11 and 10 transitions in all flip-flops and observes the result at SCANOUT outputTotal scan test length: (ncomb + 2) nsff * ncomb + 4 clock periods

Example: 2,000 scan flip-flops, 500 comb. vectors, total scan test length ~ 106 clocks

Multiple scan registers reduce test length

Page 14: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Multiple Scan Registers

Possibility of distributing scan flip-flops among any number of shift registers, each having a separate scanin and scanout pinTest sequence length determined by the longest scan shift registerJust one test control (TC) pin essential

SFFSFF

SFF

Combinationallogic

PI/SCANIN PO/SCANOUTM

UX

CK

TC

Page 15: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Partial Scan

Subset of flip-flops is scanned.Objectives:

Minimizing area overhead and scan sequence length, while achieving required fault coverageExcluding selected flip-flops from scan:

Improvement of performanceAllowing on limited scan design rule violations

Allow automation:In scan flip-flop selectionIn test generation

Shorter scan sequences

Page 16: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Partial Scan Architecture

FF

FF

SFF

SFF

Combinationalcircuit

PI PO

CK1

CK2 SCANOUT

SCANIN

TC

Page 17: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Test Generation

Scan and non-scan flip-flops controlled from separate clock PIs:

Normal mode – Both clocks activeScan mode – Only scan clock active

Seq. ATPG model:Scan flip-flops replaced by PI and POSeq. ATPG program used for test generationScan register test sequence, 001100…, of length nsff + 4 applied in scan modeEach ATPG vector preceded by scan-in sequence to set scan flip-flop statesScan-out sequence added at the end of each vector sequence

Test length = (nATPG + 2) nsff + nATPG + 4 clocks

Page 18: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Flip-Flop for Partial ScanNormal scan flip-flop (SFF) with multiplexer of the LSSD flip-flop usedScan flip-flops required separate clock control:

Either separate clock pinOr alternative design for a single clock pin

Masterlatch

Slavelatch

D

SD

TCCK

MUX

SFF(Scan flip-flop)

Q

TC

CK

Normal mode Scan mode

Page 19: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Why Partial Scan

Generalized scan method; scan varying from 0 to 100%Partial-scan has lower overheads (area and delay) and reduced test lengthPartial-scan allows limited violations of scan design rules, e.g., a flip-flop on a critical path may not be scanned

Page 20: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Motivation for Boundary Scan Standard

Components put on both sides of PCBReduced spacing between PCB wiresPCB tester replaced with build-in test delivery system - JTAG

Need to add standard System Test Port and Bus to provide I/O communication

Components on PCB from different vendorsTest bus identical for various componentsOne chip providing test hardware for other chips

Page 21: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Purpose of Standard

Test instructions and data serially fed into CUTPossibility to read out test resultsToo many shifts to shift in external tests

JTAG controlling scan operation on chip, PCB and system levelCharacteristics

Control of tri-state signals during testingOther chips used to collect test responses from CUTSystem interconnects to be tested separately from componentsComponents tested separately from wires

Page 22: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

System Test Logic

Page 23: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Interconnects at System Level

Page 24: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Boundary Scan Chain

Page 25: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Boundary Scan Cell

Page 26: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Serial Board Scan

Page 27: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Parallel Board Scan

Page 28: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Independent Path Board Scan

Page 29: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

Signals at Test Access Port (TAP)

Test Clock Input (TCK) - Clock for test logicPossibly running at different rate than system clock

Test Mode Select (TMS) - Switching system from functional to test modeTest Data Input (TDI) - Accepting serial test data and instructions

Used to shift-in vectors or one of many test instructionsTest Data Output (TDO) - Serially shifting-out test results captured in boundary scan chain (or device ID or other internal register)Test Reset (TRST) - Optional asynchronous TAP controller reset

Page 30: COEN 6521 VLSI Testing Scan Designzzilic/scan05p2.pdf · 2005-03-17 · Testing Scan Registers Need to test scan register prior to application of scan test sequences Shift sequence

State Diagram of TAP Controller