Boundary Scan Implementation

Similar documents
SECTION 11 JTAG PORT

Boundary Scan. Sungho Kang. Yonsei University

IEEE JTAG Boundary Scan Standard

Aeroflex Colorado Springs Application Note

Chapter 7 Debugging Support

Boundary-scan test for structural fault detection

A Research Paper on Designing a TAP(Test Access Port)

9. IEEE (JTAG) Boundary-Scan Testing for Stratix II and Stratix II GX Devices

8. JTAG Boundary-Scan Testing in MAX V Devices

SCANSTA111 Enhanced SCAN bridge Multidrop Addressable IEEE (JTAG) Port

SCANSTA111. SCANSTA111 Enhanced SCAN Bridge Multidrop Addressable IEEE (JTAG) Port. Literature Number: SNLS060J

ORCA Series Boundary Scan

Section 33. Programming and Diagnostics

SCANSTA112 Designers Reference

JTAG TAP CONTROLLER PROGRAMMING USING FPGA BOARD

Board-level testing and IEEE1149.x Boundary Scan standard. Artur Jutman

microsparc-iiep TM Introduction to JTAG Boundary Scan

BOUNDARY-SCAN DFT & LAYOUT PRINCIPLES at BOARD LEVEL

SISTEMI EMBEDDED AA 2012/2013 JTAG CIRCUITRY JTAG DEBUG MODULE JTAG-UART PERIPHERAL

BOUNDARY-SCAN: AN INTRODUCTION. by James Stanbridge, Sales Manager of JTAG Technologies

DESIGN OF IEEE TAP CONTROLLER IP CORE

Boundary Scan. Sungho Kang. Yonsei University

Harry Bleeker Peter van den Eijnden Frans de Jong

Mixed Signal IC Testing. Mixed Signal DFT. IEEE Std 蘇朝琴國立交通大學電機工程學系. Mixed Signal IC Testing. IEEE Std. 1149

P1149.1A Extensions to IEEE-STD

72-Mbit QDR -IV HP SRAM

System Testability Using Standard Logic

Boundary-Scan Tutorial

Using Boundary Scan on the TMS320VC5420

72-Mbit QDR -IV XP SRAM

Boundary Scan Tutorial. A tutorial prepared by Dr R G Ben Bennetts, DFT Consultant. Tel: Welcome!!

Chapter 8 Test Standards. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan

AN4353 Application note

Using Proprietary Lattice ISP Devices

A PRACTICAL GUIDE TO COMBINING ICT & BOUNDARY SCAN TESTING

WEB-BASED APPLET FOR TEACHING BOUNDARY SCAN STANDARD IEEE

Development of a Boundary Scan Test controller creation tool

SN54LVTH18514, SN54LVTH182514, SN74LVTH18514, SN74LVTH V ABT SCAN TEST DEVICES WITH 20-BIT UNIVERSAL BUS TRANSCEIVERS

description STRB A0 A1 A2 R/W D1 D2 D3 GND D4 D5 RDY TDO TCK TMS TRST TDI RST TOE D7 CLKIN STRB R/W D0 D1 D2 D3 NC GND D4 D5

BSCAN2 Multiple Scan Port Linker

The Boundary - Scan Handbook

Keysight Technologies Understanding x1149 Integrity Test. Application Note

description STRB A0 A1 A2 R/W RDY TDO D1 D2 D3 GND D4 D5 TCK TMS TRST TDI D7 CLKIN RST TOE STRB R/W D0 D1 D2 D3 NC GND D4 D5

New and Emerging JTAG Standards: Changing the Paradigm of Board Test (A tutorial)

1.8V MULTI-QUEUE FLOW-CONTROL DEVICES (128 QUEUES) 36 BIT WIDE CONFIGURATION 1,179,648 bits 2,359,296 bits 4,718,592 bits Q127 Q126 Q125

18-Mbit (512K 36/1M 18) Pipelined SRAM

Lecture 28 IEEE JTAG Boundary Scan Standard

Web-Based Training System for Teaching Principles of Boundary Scan Technique

Programming the isppac-powr1220at8 in a JTAG Chain Using the ATDI Pin

Chip & Board Testability Assessment Checklist

Is Now Part of To learn more about ON Semiconductor, please visit our website at

Actel BSDL Files Format Description

1687 Proposed Hardware Architecture Summary Update v7.0 June 25, 2007 IEEE 1687 IJTAG HW Proposal

JTAG and I 2 C on ELMB

Configuring Cyclone FPGAs

Platform Flash In-System Programmable Configuration PROMs

Digital Integrated Circuits

3.3 VOLT TIME SLOT INTERCHANGE DIGITAL SWITCH 2,048 x 2,048

FEATURES: DESCRIPTION: FUNCTIONAL BLOCK DIAGRAM 3.3 VOLT TIME SLOT INTERCHANGE DIGITAL SWITCH WITH RATE MATCHING 16,384 X 16,384 CHANNELS IDT72V73263

Connecting Spansion SPI Serial Flash to Configure Altera FPGAs

Keysight Technologies ABCs of Writing a Custom Boundary Scan Test

Wednesday 3/12/14 10:30am

Chapter 13 Programmable Logic Device Architectures

13. Configuring Stratix & Stratix GX Devices

...We are boundary-scan.

V SS (GND) RESET. Backplane Data Memories (8,192 channels) Local Connection Memory (4,096 locations) Backplane Connection Memory (8,192 locations)

Platform Flash In-System Programmable Configuration PROMs

V SS (GND) Backplane Data Memories (8,192 channels) Backplane Connection Memory (8,192 locations) Local Connection Memory (8,192 locations)

J Drive: In-System Programming of IEEE Standard 1532 Devices Author: Arthur Khu

Platform Flash In-System Programmable Configuration PROMs

Boundary-Scan in the ATCA standard. David Bäckström

MT V Rate Conversion Digital Switch

SN54ABT8646, SN74ABT8646 SCAN TEST DEVICES WITH OCTAL BUS TRANSCEIVERS AND REGISTERS

CSCI 4974 / 6974 Hardware Reverse Engineering. Lecture 12: Non-invasive attacks

SCANSTA101 STA Master Design Guide

MT90869 Flexible 16 K Digital Switch (F16kDX)

PROGRAMMABLE CLOCK APPLICATION NOTE

Micron MT54V512H18EF-10 9Mb QDR SRAM Circuit Analysis

Using an AT91EB40A Evaluation Board to Control an AT91 ARM7TDMI Processor Via the JTAG-ICE Interface Introduction AT91 ARM Thumb Microcontrollers

APPROVED FOR PUBLIC RELEASE; DISTRIBUTION UNLIMITED.

Application Note # Design For Boundary-Scan Testing and In-System Programming Guidelines. September 18, 2003

Implementing JTAG Testing with MPEG2Lynx

144Mb Pipelined and Flow Through Synchronous NBT SRAM

DESCRIPTION: FUNCTIONAL BLOCK DIAGRAM. 3.3 VOLT TIME SLOT INTERCHANGE DIGITAL SWITCH 8,192 x 8,192 JUNE Internal Registers

MT90870 Flexible 12 k Digital Switch (F12kDX)

ispvm System Software ISP TM Programming Software

SECTION 8 SCAN CHAIN TEST ACCESS PORT

EMBEDDED Intel486 SX PROCESSOR

Keysight Technologies Expanding IEEE Std Boundary-Scan Architecture Beyond Manufacturing Test of PCBA

SN54ABT18245A, SN74ABT18245A SCAN TEST DEVICES WITH 18-BIT BUS TRANSCEIVERS

AGM CPLD AGM CPLD DATASHEET

SRAM-based FPGA designed for Space use

SECTION 2 SIGNAL DESCRIPTION

Basics of board-level testing and IEEE1149.x Boundary Scan standard

Architecting DFT into Board Design to Leverage Board-level Boundary Scan

MT90826 Quad Digital Switch

Testing TAPed Cores and Wrapped Cores With The Same Test Access Mechanism Λ

CMOS ST-BUS TM Family MT90820 Large Digital Switch

Data Memory. Connection Memory. Output Timing. Microprocessor Interface and Control Registers D31-0 BERR R/W DTA D16B A18-0 SIZ1-0 WAIT

Y. Tsiatouhas. VLSI Systems and Computer Architecture Lab. Embedded Core Testing (ΙΕΕΕ SECT std) 2

Transcription:

OpenCORES s Boundary Scan Implementation Abstract This document describes Boundary Scan Implementation (software and hardware solution. It is fully IEEE 1149.1 compliant. Date : August 6, 2000 Version: 1.0 Author: Igor Mohor (igorm@opencores.org) 1

Boundary-Scan Architecture and compliance to the IEEE Std 1149.1 The dedicated test access port (TAP) is fully compliant to the IEEE Std. 1149.1. It consists of 5 dedicated signal pins, a 16-state TAP Controller and three test data registers: idcode register, bypass register and boundary scan register. The implementation provides the capability to: Read the ID code of the IC (version, part number, manufacturer's id) Perform boundary scan operations to check circuit board electrical continuity Bypass the IC for a given circuit board test by reducing the boundary scan register to a single cell Sample the IC system pins during operation and transparently shift out the result in the boundary scan register Disable the output drive to pins during circuit board testing The implementation consists of 16-state TAP controller, 4-bit instruction register, 3 test registers (a 1-bit bypass, a 32-bit idcode register and a 14-bit boundary scan register) and 5 dedicated signal pins (signals). Many additional test registers are to be added in the future. The five signals connected to the TAP are: TCK - a Test Clock input that synchronizes the test logic. TMS - a pulled-up input Test Mode Select that is sampled on the rising edge of TCK to sequence the TAP controller's state machine TDI - a pulled-up Test Data Input that is sampled on the rising edge of TCK TDO - a three-stateable Test Data Output that changes on the falling edge of TCK during the ShiftIR and ShiftDR TAP controller states. TRST - a pulled-up, active low, asynchronous reset that provides the TAP initialization Pull-up and pull-down resistors are to be added by the user (not implemented). TDO OR1k Debug Registers Test Data Registers TDI Boundary Scan Register MUX MUX OE Bypass Register Test Access Port IDCode Instruction Register Instruction Decode, TCK TMS TRST TAP Controller Figure 1: Test Logic Block Diagram 2

The TAP Controller and Operation The TAP is controlled by the test clock (TCK) and test mode select (TMS) inputs. These two inputs determine whether an instruction register scan or data register scan is performed. The TAP consists of a small controller design, driven by the TCK input, which responds to the TMS input as shown in the state diagram in Figure 2. The IEEE Std 1149.1 test bus uses both clock edges of TCK. TMS and TDI are sampled on the rising edge of TCK, while TDO changes on the falling edge of TCK. Figure 2: TAP Controller State Diagram The main state diagram consists of six steady states: Test-Logic-Reset, Run-Test/Idle, Shift-DR, Pause-DR, Shift-IR, and Pause-IR. A unique feature of this protocol is that only one steady state exists for the condition when TMS is set high: the Test-Logic-Reset state. This means that a reset of the test logic can be achieved within five TCKs or less by setting the TMS input high. At power up, or during normal operation of the host IC, the TAP is forced into the Test-Logic-Reset state by driving TMS high and applying five or more TCKs. In this state, the TAP issues a reset signal that places all test logic in a condition that does not impede normal operation of the host IC. When test access is required, a protocol is applied v ia the TMS and TCK inputs, causing the TAP to exit the Test-Logic-Reset state and move through the appropriate states. From the Run-Test/Idle state, an instruction register scan or a data register scan can be issued to transition the TAP 3

through the appropriate states shown in Figure 2. The states of the data register scan and instruction register scan blocks are mirror images of each other, adding symmetry to the protocol sequences. The first action that occurs when either block is entered is a capture operation. For the data registers, the Capture-DR state is used to capture (or parallel load) the data into the selected serial data path. If the boundary scan register is the selected data register, the normal data inputs are captured during this state. In the instruction register, the Capture-IR state is used to capture status information into the instruction register. From the Capture state, the TAP transitions to either the Shift or Exit1 state. Normally, the Shift state follows the Capture state so that test data or status information can be shifted out for inspection and new data shifted in. Following the Shift state, the TAP either returns to the Run-Test/Idle state via the Exit1 and Update states or enters the Pause state via Exit1. The reason for entering the Pause state is to temporarily suspend the shifting of data through either the selected data register or instruction register while a required operation, such as refilling a tester memory buffer, is performed. From the Pause state, shifting can resume by re-entering the Shift state via the Exit2 state or be terminated by entering the Run-Test/Idle state via the Exit2 and Update states. Upon entering the data register scan or instruction register scan blocks, shadow latches in the selected scan path are forced to hold their present state during the capture and shift operations. The data being shifted into the selected scan path is not output through the shadow latch until the TAP enters the Update-DR or Update-IR state. The Update state causes the shadow latches to update (or parallel load) with the new data that has been shifted into the selected scan path. The Boundary Scan Register To get an idea how to implement a boundary scan register, eight pins are connected to the IC (two input pins, two bidirectional pins and four output pins (two can be tristated)). The scan chain implementation consists of 14 boundary scan cells (bits). It is fully IEEE 1491.1 compliant. This 14-bit register is connected between TDI and TDO when extest or sample/preload instructions are selected. It is used for capturing signal pin data on the input pins, forcing fix values on the output signal pins and selecting the direction and drive characteristics (a logic value or high impedance) of the bidirectional and three-state signal pins. Figures 3, 4 and 5 depict various types of cells (input call, output cell and control cell). Figure 3: Input Cell 4

Figure 4: Output Cell Figure 5: Control Cell Control Cell controls the Output Cell's drive characteristics (a logic value or high impedance). Control Cells can control one or more Output Cells. Bi-directional Cells are built from an Input Cell, Output Cell and a Control Cell. It is very important to know the boundary scan bit order and the pins that are associated with them. Next table shows the Boundary Scan Bit Definition. There are 6 columns in the table: bit (cell) position within the boundary scan register, cell name, pin name, cell type (input, output or control), pin type (input, output, tristated output, bi-directional) and control cell that controls the associated output or bi-directional pin. The bit closest to the TDO is marked with number 0. The last bit in the table is the one closest to the TDI. Bit Cell Name Pin Name Cell Type Pin Type Output Control Cell 0 BS0 InputPin[0] I I - 1 BS1 InputPin[1] I I - 2 BS2 Output3Pin[0] O O BS3 3 BS3 - CTRL - - 4 BS4 Output3Pin[1] O O BS5 5 BS5 - CTRL - - 6 BS6 BidirectionalPin[0] I I/O - 7 BS7 BidirectionalPin[0] O I/O BS8 8 BS8 - CTRL - - 9 BS9 BidirectionalPin[1] I I/O - 10 BS10 BidirectionalPin[1] O I/O BS11 11 BS11 - CTRL - - 12 BS12 Output2Pin[0] O O - 13 BS13 Output2Pin[1] O O - Table 1: Boundary Scan Bit Definition 5

The Instruction Register IC's implementation includes all IEEE 1149.1 required instruction (bypass, extest, sample/preload) and optional instructions (idcode). More instructions are to be included in the next release of Boundary-Scan Architecture. Instruction Code IR[3:0] EXTEST 0000 SAMPLE/PRELOAD 0001 IDCODE 0010 BYPASS 1111 Table 2: Instruction Decoding EXTEST Instruction The required EXTEST instruction places the IC into an external boundary-test mode and selects the boundary-scan register to be connected between TDI and TDO. During this instruction, the boundary-scan register is accessed to drive test data off-chip via the boundary outputs and receive test data off-chip via the boundary inputs. The bit code of this instruction is defined as all zeroes by IEEE Std 1149.1. SAMPLE/PRELOAD Instruction The required SAMPLE/PRELOAD instruction allows the IC to remain in its functional mode and selects the boundary-scan register to be connected between TDI and TDO. During this instruction, the boundary-scan register can be accessed via a data scan operation, to take a sample of the functional data entering and leaving the IC. This instruction is also used to preload test data into the boundary-scan register before loading an EXTEST instruction. The bit code for this instruction is defined by the vendor. IDCODE Instruction The optional IDCODE instruction allows the IC to remain in its functional mode and selects the optional device identification register to be connected between TDI and TDO. The device identification register (see Figure 3-8) is a 32-bit shift register containing information regarding the IC manufacturer, device type, and version code. Accessing the device identification register does not interfere with the operation of the IC. Also, access to the device identification register should be immediately available, via a TAP data-scan operation, after power-up of the IC or after the TAP has been reset using the optional TRST* pin or by otherwise moving to the Test-Logic-Reset state. The bit code of this instruction is defined by the vendor. HIGHZ Instruction (not implemented) The optional HIGHZ instruction sets all outputs (including two-state as well as three-state types) of an IC to a disabled (high-impedance) state and selects the bypass register to be connected between TDI and TDO. During this instruction, data can be shifted through the bypass register from TDI to TDO without affecting the condition of the IC outputs. The bit code of this instruction is defined by the vendor. BYPASS Instruction The required BYPASS instruction allows the IC to remain in a functional mode and selects the bypass register to be connected between TDI and TDO. The BYPASS instruction allows serial data to be transferred through the IC from TDI to TDO without affecting the operation of the IC. The bit code of this instruction is defined as all ones by IEEE Std 1149.1. BSDL file (Boundary-Scan Description Language) BSDL file can be obtained from the OpenCores homepage (www.opencores.org). The BSDL file and the Boundary Scan Architecture were tested with the JTAG Technologies testing equipment and are fully operational. Detailed description of the bsdl file is within the file itself. 6