ieee 1149.1 jtag boundary scan standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... ·...

37
IEEE 1149.1 JTAG Boundary Scan Standard Shaahin Hessabi Department of Computer Engineering Department of Computer Engineering Sharif University of Technology Adapted with modifications from lecture notes Adapted, with modifications, from lecture notes prepared by the book authors Slide 1 of 37

Upload: others

Post on 21-Jan-2021

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

IEEE 1149.1 JTAGBoundary Scan Standard

Shaahin HessabiDepartment of Computer EngineeringDepartment of Computer Engineering

Sharif University of TechnologyAdapted with modifications from lecture notesAdapted, with modifications, from lecture notes

prepared by the book authors

Slide 1 of 37

Page 2: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Outline

Bed-of-nails testerd Motivation for boundary scan standard System view of boundary scan hardwareSystem view of boundary scan hardware Elementary scan cell Test Access Port (TAP) controller Test Access Port (TAP) controller Boundary scan instructions Summary Summary

Slide 2 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 3: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Bed-of-Nails Tester Concept

Slide 3 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 4: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Bed-of-Nails Tester

Slide 4 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 5: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Motivation for Standard Bed-of-nails printed circuit board tester gone

W t t b th id f PCB & We put components on both sides of PCB & replaced DIPs with flat packs to reduce inductance

Nails would hit components Nails would hit components

Reduced spacing between PCB wires

Nails would short the wires Nails would short the wires

PCB Tester must be replaced with built-in test delivery system -- JTAG does that

Need standard System Test Port and Bus

Integrate components from different vendors

One chip has test hardware for other chips

Test bus identical for various components

Slide 5 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 6: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Purpose of Standard Lets test instructions and test data be serially fed

into CUTinto CUT

Allows reading out test results

Allows RUNBIST command as an instructionAllows RUNBIST command as an instruction

Too many shifts to shift in external tests

JTAG can operate at chip PCB & system levels JTAG can operate at chip, PCB, & system levels

Allows control of tri-state signals during testing

Lets other chips collect responses from CUT Lets other chips collect responses from CUT

Lets system interconnect be tested separately from componentscomponents

Lets components be tested separately from wires

Slide 6 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 7: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

System Test Logic

Slide 7 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 8: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

I t ti R i t L di ith JTAGInstruction Register Loading with JTAG

Slide 8 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 9: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

System View of Interconnect

Slide 9 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 10: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Boundary Scan Chain ViewBoundary Scan Chain View

Slide 10 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 11: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Elementary Boundary Scan Celly y

11 Normal mode:Normal mode:1.1. Normal mode: Normal mode: ModeMode--control = control = 00

2. Scan mode: Shift DR = 1First scan FF is driven by TDI, Last scan FF drives TDOFirst scan FF is driven by TDI, Last scan FF drives TDO

3. Capture mode: Shift DR = 04. Update mode: Mode-control = 1

Slide 11 of 37

4. Update mode: Mode control 1

Sharif University of Technology Lecture 28: Boundary Scan

Page 12: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Serial Board / MCM Scan

Slide 12 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 13: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Parallel Board / MCM ScanParallel Board / MCM Scan

Slide 13 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 14: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Independent Path Board / MCM ScanIndependent Path Board / MCM Scan

Slide 14 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 15: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Tap Controller Signals Test Access Port (TAP) includes these signals:

Test Clock Input (TCK) -- Clock for test logic Test Clock Input (TCK) Clock for test logic

Can run at different rate from system clock

Test Mode Select (TMS) -- Switches system from Test Mode Select (TMS) Switches system from functional to test mode

Test Data Input (TDI) -- Accepts serial test data Test Data Input (TDI) Accepts serial test data and instructions -- used to shift in vectors or one of many test instructions

Test Data Output (TDO) -- Serially shifts out test results captured in boundary scan chain (or device

h i l i )ID or other internal registers)

Test Reset (TRST) -- Optional asynchronous TAP t ll t

Slide 15 of 37Sharif University of Technology Lecture 28: Boundary Scan

controller reset

Page 16: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Tap Controller State Diagram

Slide 16 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 17: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

States of TAP Controller Test-Logic-Reset: normal mode

T / dl i f i l h ST Run-Test/Idle: wait for internal test such as BIST Select-DR-Scan: initiate a data-scan sequence Capture-DR: load test data in parallel Shift-DR: load test data in series Exit1-DR: finish phase-1 shifting of data Pause-DR: temporarily hold the scan operation (e.g., allow the

b l d d )bus master to reload data) Exit2-DR: finish phase-2 shifting of data Update-DR: parallel load from associated shift registersNote: Controls for IR are similar to those for DR.

Slide 17 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 18: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Tap Controller TimingTap Controller Timing

Slide 18 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 19: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

TAP Controller Power Up Reset LogicTAP Controller Power-Up Reset Logic

Slide 19 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 20: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

B d S I t tiBoundary Scan Instructions

Slide 20 of 37

Page 21: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Basic Operationsp1. Instruction sent (serially) through TDI into instruction register.

S l d i i fi d d h i i2. Selected test circuitry configured to respond to the instruction.3. Test pattern shifted into selected data register and applied to

l i t b t t dlogic to be tested4. Test response captured into some data register5 C d hif d hif d i5. Captured response shifted out; new test pattern shifted in

simultaneously6 Steps 3 5 repeated until all test patterns are applied6. Steps 3-5 repeated until all test patterns are applied.

Slide 21 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 22: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Major Modes of Operationj p Non-invasive mode: standard provides resources guaranteed to

be independent of s stem logicbe independent of system logic These resources enable asynchronous communication with the outside

world (serially read in test data and instructions or serially read out test ( y yresults)

Activities are invisible to the normal IC behavior

Pin-permission modes: takes control of the IC I/O pins, thus disconnecting the system logic from the outside world. All t ti f th t i t t t l f t Allow testing of the system interconnect separately from component

testing, and vice-versa. The testing activities totally disrupt the normal IC behavior.g y p

Slide 22 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 23: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

SAMPLE / PRELOAD Instruction-- SAMPLEPurpose:1 Get snapshot of normal chip input/output signals1. Get snapshot of normal chip input/output signals2. Put data on boundary scan chain before next instruction

Slide 23 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 24: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

SAMPLE / PRELOAD Instruction PRELOADSAMPLE / PRELOAD Instruction -- PRELOAD

Slide 24 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 25: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

EXTEST Instruction Purpose: Test offPurpose: Test off--chip circuits and boardchip circuits and board--level interconnectionslevel interconnections

Slide 25 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 26: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Execution of EXTEST Instruction

Phase 1:Shift-DR (Chip1)

Phase Phase 22::UpdateUpdate--DR DR (Chip(Chip11))CaptureCapture--DR (ChipDR (Chip22))

Phase Phase 33::ShiftShift--DR (ChipDR (Chip22))

Slide 26 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 27: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Execution of INTEST InstructionPurpose:

1. Shifts external test patterns onto component2. External tester shifts component responses out

Phase 1: Shift-DRPhase 1: Shift DR

Phase Phase 22: Update: Update--DRDRpp

Slide 27 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 28: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Execution of INTEST Instruction (cont’d)( )

Phase 3: Capture-DR

Phase Phase 44: Shift: Shift--DRDR

Slide 28 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 29: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

RUNBIST Instruction Purpose: Allows you to issue BIST command to

component through JTAG hardwarecomponent through JTAG hardware Optional instruction Lets test logic control state of output pins Lets test logic control state of output pins

1. Can be determined by pin boundary scan cell2 Can be forced into high impedance state2. Can be forced into high impedance state

BIST result (success or failure) can be left in boundary scan cell or internal cellscan cell or internal cell Shift out through boundary scan chain

May leave chip pins in an indeterminate state (reset May leave chip pins in an indeterminate state (reset required before normal operation resumes)

Slide 29 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 30: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

CLAMP Instruction

Purpose: Forces component output signals to be driven by p p p g yboundary-scan register

Bypasses the boundary scan chain by using the one-bit Bypass Register

Optional instruction May have to add RESET hardware to control on-chip logic

so that it does not get damaged (by shorting 0’s and 1’s onto i l b )an internal bus, etc.)

Slide 30 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 31: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

IDCODE Instruction Purpose: Connects the component device identification

register serially between TDI and TDOregister serially between TDI and TDO In the Shift-DR TAP controller state

Allows board level test controller or external tester to read out Allows board-level test controller or external tester to read out component ID

Required whenever a JEDEC identification register is Required whenever a JEDEC identification register is included in the design JEDEC: Joint Electron Device Engineering Councilg g

Slide 31 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 32: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Device ID Register --JEDEC Code

MSB LSB27 12

Part11 1Manufacturer

0‘1’

31 28 31 28 V iV i

MSB LSB

PartNumber(16 bits)

ManufacturerIdentity(11 bits)

1

(1 bit)

VersionVersion((4 4 bits)bits)

Slide 32 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 33: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

USERCODE Instruction

Purpose: Intended for user-programmable components (FPGA’s, EEPROMs, etc.) Allows external tester to determine user programming of component

S l t th d i id tifi ti i t i ll t d b t Selects the device identification register as serially connected between TDI and TDO

User-programmable ID code loaded into device identification register User programmable ID code loaded into device identification register On rising TCK edge

Required when Device ID register included on user-programmable q g p gcomponent

Slide 33 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 34: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

HIGHZ Instruction Purpose: Puts all component output pin signals into high-

impedance stateimpedance state Control chip logic to avoid damage in this mode May have to reset component after HIGHZ runs May have to reset component after HIGHZ runs Optional instruction

Slide 34 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 35: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

BYPASS Instruction Purpose: Bypasses scan chain with 1-bit register

Slide 35 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 36: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Optional / Required Instructionsp q

InstructionBYPASS

StatusM dBYPASS

CLAMPEXTEST

MandatoryOptional

MandatoryEXTESTHIGHZ

IDCODE

MandatoryOptionalOptional

INTESTRUNBIST

SAMPLE / PRELOAD

pOptionalOptional

M dSAMPLE / PRELOADUSERCODE

MandatoryOptional

Slide 36 of 37Sharif University of Technology Lecture 28: Boundary Scan

Page 37: IEEE 1149.1 JTAG Boundary Scan Standardce.sharif.edu/courses/91-92/1/ce753-1/resources/root/... · 2020. 9. 7. · boundary-scan register Bypasses the boundary scan chain by using

Summaryy Boundary Scan Standard has become absolutely

essential;essential; No longer possible to test printed circuit boards with

bed of nails testerbed-of-nails tester Not possible to test multi-chip modules at all without it Supports BIST external testing with ATE and Supports BIST, external testing with ATE, and

boundary scan chain reconfiguration as BIST pattern generator and response compacterg p p

Now getting widespread usage Use scanedu for practicing with JTAG conceptsUse scanedu for practicing with JTAG concepts

Slide 37 of 37Sharif University of Technology Lecture 28: Boundary Scan