JTAG Pinout - All JTAG Cable Pinouts
Looking for JTAG Cable? Learn about various JTAG pinouts. Unfortunately there is no standard JTAG pinout. Usually the JTAG connector is a simple two row header on a center-line with 0.1 inches pin-to-pin spacing.
This page lists pinouts for common JTAG connectors. You can use this information to help you create custom JTAG cable or to connect your JTAG hardware to existing JTAG interface.
There are many JTAG header arrangements, from 10-pin to 20-pin headers. If you are designing with ARM or MIPS microprocessor, we recommend using appropriate JTAG connector (EJTAG or ARM JTAG) to maintain compatibility with development tools. In other cases we recommend you using JTAG connector for manufacturer of your part or AVR/Byteblaster JTAG (which is compatible with many other products) or standard 8 pin "PLD" JTAG connector.
Daisy chaining multiple devicesIf your design uses multiple devices with JTAG TAP, you must either use separate connector for each device or chain devices. Generally, JTAG supports many devices in single JTAG chain, but many tools are not compatible with this feature. Check tool's documentation before you put devices into chain.
The JTAG interface, also known as a Test Access Port, or TAP, uses the following five signals to support the operation of the boundary scan:
TCK – the TCK or 'test clock' synchronizes the internal state operations of the machine TMS – the TMS or 'test mode state' determines the next state and is sampled at the rising edge of TCK TDI – the TDI or 'test data in' is sampled at the rising edge of TCK signal when the internal state machine is in the correct state and represents the data shifted into the device's test or programming logic. TDO – the TDO or 'test data out' is valid on the falling edge of TCK when the internal state machine is in the correct state and represents the data shifted out of the device's test or programming logic. TRST – the TRST or 'test reset' is an optional pin which, when available, can reset the TAP controller's state machine.
8 Pin PLD-JTAG JTAG pinout
10 Pin AVR JTAG pinout
10 Pin Actel FlashPro JTAG pinout
10 Pin Cypress Ultra ISR JTAG pinout
10 Pin Lattice JTAG pinout
9 Pin Lattice ispDOWNLOAD USB cable JTAG Header pinout
12 Pin JTAG pinout
Found in Linksys routers such as the WRT54G and WRT54GS, the 12-pin header has the following arrangement of JTAG signals and pins:
Seems, this header is a truncated version of the full EJTAG header.
14 Pin JTAG Header
This header is fully MIPS EJTAG 2.6 compatible and described in the EJTAG 2.6 standard. Found in Edimax routers (and other mostly embedded devices, including on many WiFi devices), the 14-pin header has the following arrangement of JTAG signals and pins:
A buffered JTAG cable such as the Wiggler requires an external Vcc voltage supply. The 14-pin header conveniently supplies this voltage on pin 14. The typical unbuffered JTAG cable, however, does not require an external voltage in order to function. Formally, the pin 14 is called VREF and used to indicate a JTAG signal levels: 5V, 3.3V or 2.5V. On the most devices this pin is tied to the device's Vcc and may be used to power a buffer IC chip (and to generate an appropriate levels as result). Note that the 12-pin JTAG header arrangement does not provide Vcc.
14 Pin ARM JTAG Header
14 Pin Texas Instruments MSP430 JTAG pinout
9 Pin Xilinx Parallel III and IV JTAG pinout
20 Pin Toshiba MIPS JTAG header
20 Pin Philips MIPS JTAG header pinout
20 Pin ARM JTAG Header
Used with almost all ARM-based microcontrollers.
Boundary scan has two types of registers: one instruction register and two or more data registers.Instruction Register – the instruction register holds the current instruction. Its content is used by the test access port (TAP) controller to decide what to do with signals that are received. Most commonly, the content of the instruction register will define to which of the data registers signals should be passed.
Data Registers – there are three primary data registers, the Boundary Scan Register (BSR), the BYPASS register and the IDCODES register. Other data registers may be present, but they are not required as part of the JTAG standard.
This controller is a state machine which is controlled by the TMS signal. TAP controller controls the behavior of the JTAG system.
All states of the TAP controller state machine have two exits, so all transitions can be controlled by the single TMS signal sampled on TCK.
The two main paths allow for setting or retrieving information from either a data register or the instruction register on the device. The data register operated on (e.g. BSR, IDCODES, BYPASS) depends on the value loaded into the instruction register. A more detailed description of the states of the TAP controller state machine is unfortunately beyond the scope of this brief JTAG tutorial - please refer to the IEEE 1149.1 Standard JTAG document.
Boundary Scan Instructions
These instructions, as defined by the IEEE 1149.1 standard, must be available for a device to be considered compliant:
BYPASS – the BYPASS instruction causes the TDI and TDO lines to be connected via a single-bit pass-through register (the BYPASS register). This instruction allows the testing of other devices in the JTAG chain without any unnecessary overhead.
EXTEST – the EXTEST instruction causes the TDI and TDO to be connected to the Boundary Scan Register (BSR). The device's pin states are sampled with the 'capture dr' JTAG state and new values are shifted into the BSR with the 'shift dr' state; these values are then applied to the pins of the device using the 'update dr' state.
SAMPLE/PRELOAD – the SAMPLE/PRELOAD instruction causes the TDI and TDO to be connected to the BSR. However, the device is left in its normal functional mode. During this instruction, the BSR can be accessed by a data scan operation to take a sample of the functional data entering and leaving the device. The instruction is also used to preload test data into the BSR prior to loading an EXTEST instruction.
Other commonly available instructions include:
IDCODE – the IDCODE instruction causes the TDI and TDO to be connected to the IDCODE register.
INTEST – the INTEST instruction causes the TDI and TDO lines to be connected to the Boundary Scan Register (BSR). While the EXTEST instruction allows the user to set and read pin states, the INTEST instruction relates to the core-logic signals of a device.
A more detailed description of the boundary scan instructions is unfortunately beyond the scope of this brief JTAG pinout description - please refer to the IEEE 1149.1 Standard JTAG document.