JTAG Defined | An Introduction to JTAG

What is JTAG

JTAG is an acronym that stands for “Joint Test Action Group”.

The group was a consortium of vendors focused on problems found when testing electronic circuit boards. Key members included: TI, Intel and others. JTAG is the informal name often used to describe the standard that resulted from the work of this group. Specifically, the standard is known as IEEE1149.1 Boundary-Scan.

JTAG Terminology

People use the term JTAG loosely to describe test and debug interfaces based on the specifications brought about by this group. You may hear the term JTAG Boundary-Scan (used for board test and IEEE1149.1) and JTAG ICE or emulator.

JTAG emulators leverage extended registers and boundary-scan instructions, put on-chip by the processor manufacturer. These extra features, allow the JTAG connector to be used to control a microprocessor (Run, stop, step and read/write memory and registers). This type of tool is used for hardware bring up and embedded firmware debug.

JTAG Boundary-Scan Test tools allow the hardware level debugging, programming and testing of circuit boards.

For additional sections from this series, please visit the JTAG section of this Blog.

Problems Caused By Surface Mount Devices

The main problem that the JTAG group set out to solve was that traditional In-Circuit Test or ICT, was no longer as effective as it once was for board test. This change was due to the rise in use of surface mount devices such as Ball Grid Array (BGA) devices. (The ever decreasing size of modern electronic circuits and the rise of multi-layer printed circuit boards were also key drivers for JTAG.)

These new devices had their pins (called balls) on the bottom of the chip. When soldered down to a circuit board the pins could not be accessed as they were covered by the chip itself. As many of these modern ICs had many hundreds of pins it quickly became impractical to add test points for all the new pins.

As you can see from the diagram to the left, BGA devices–once soldered in place–made it impossible to get at the pins of the device.

How JTAG/Boundary-Scan Solves the Pin Access Issue

The pins that comprise the TAP interface are used to control the access to a long chain of I/O cells at each pin of a device. By clocking data patterns in and reading values out, it is possible to set and determine the state of a pin. By extension, since other non-JTAG devices may be connected to these pins, those devices can often be tested as well.

Standard JTAG Connector Signal Names

JTAG utilizes a standard set of signals to communicate with the IC or ICs under test. These signals taken together are know as the TAP or Test Access Port. The signals are:

  • TDI Test Data In (This is the data from the JTAG tool into the device under test or (DUT)
  • TDO Test Data Out (This is the data out of the last IC in the chain on the DUT back to the test tool)
  • TCLK Test Clock (This is the JTAG System CLOCK from the tool into the device)
  • TMS Test Mode Select (This signal from the tool to the device is used to minipulate the internal state machine that controls Boundary-Scan operation)
  • TRST Test Reset ( This is an optional signal, often used with JTAG emulation or when multiple chains must be tied together)

Boundary Scan Test

What is Boundary Scan Test? Boundary Scan Testing  was created to test printed circuit boards for interconnect errors such as: shorts, opens and stuck-at faults that are typically caused by problems in the manufacturing process. Boundary Scan can also be used to test devices such as: RAM, FLASH and Logic  functionally. How Does  Boundary Scan… Continue Reading

ARM JTAG Pinout

This page contains information on the commonly used connectors and pin outs for JTAG Boundary Scan testing and debug of hardware employing the ARM family of processors. If you do not see the pin out you are looking for, please request it in the comments section. ARM 20 Pin Connector Pin Out This is a header commonly… Continue Reading

JTAG Tools Video

This video is an introduction to the 3 tools that comprise the XJTAG product line. The first tool is called XJAnalyser – XJAnalyser helps you to bring up prototype hardware and to trouble shoot bad boards in a manufacturing environment. The tool provides a graphical view of of any JTAG enabled device on you board… Continue Reading

JTAG Test Video

This video is an introduction to the JTAG test development environment called XJDeveloper. XJDeveloper is where you can create tests for all the ICs on your board and produce a file that you can run on the production floor. XJDeveloper is streamlined to help you configure your board by answering a few simple questions about… Continue Reading

Board Debug Video

This video is an introduction to our board debug and bring up tool called XJAnalyser. XJAnalyser helps you to bring up prototype hardware and to trouble shoot bad boards in a manufacturing environment. The tool provides a graphical view of of any JTAG enabled device on you board and allows you to interact with it…. Continue Reading

Boundary Scan Basics

This article reflects the questions that I hear most often from people who are new to Boundary Scan. It should give you a good practical overview of the technology. WIN A FREE BOUNDARY SCAN BOOK (over $100.00 value!) – I plan to keep adding to this post over time so please submit any questions that… Continue Reading

JTAG IEEE Standards: IEEE 1149.1, IEEE 1149.6, IEEE 1149.7

  JTAG Standards Welcome to this introduction to three key JTAG Standards. These standards are the most active and commonly used and of most practical value for anyone who wants to employ JTAG Boundary SCAN tools today. At the end of this post we will provide links to additional detail on each of these specifications…. Continue Reading

What is Boundary Scan JTAG

  What do the terms: JTAG, Boundary Scan and IEEE 1149.1 mean? You have probably heard the terms: Boundary Scan JTAG IEEE 1149.1 But what do they mean and how did they come about? This post and video answers that question. Some History JTAG is an acronym for Joint Test Action Group. This group was… Continue Reading

JTAG Test

What is JTAG Testing Testing with JTAG allows you to test printed circuit boards for manufacturing defects, functional failures and even program and configure devices like FPGAs, CPLDs and FLASH. So Why Use Boundary Scan Testing? The key advantage of JTAG test over other test methods is that it requires a minimum number of test… Continue Reading

Prototype Circuit Board

Prototype Printed Circuit Boards are early versions of electronic circuits. The first revisions of these boards usually have errors and require debug and test. Electronic product manufactures (OEMs) typically send the files produced by their schematic capture package to a circuit board FAB or Prototype house for to be built. Often so-called quick turn PCB… Continue Reading