Example of JTAG chain. Test reset signal is not shown
Example of JTAG with reduced pin count
A Netgear FVS336G firewall with a 14 pin JTAG header at lower left.
A Netgear DG632 ADSL modem with an 8 pin JTAG header at location "5".

Industry standard for verifying designs and testing printed circuit boards after manufacture.


109 related topics


Ball grid array

Type of surface-mount packaging (a chip carrier) used for integrated circuits.

A grid array of solder balls on a printed circuit board after removal of an integrated circuit chip.
BGA ICs assembled on a Memory module
X-ray of BGA
Intel Mobile Celeron in a flip-chip BGA2 package (FCBGA-479); the die appears dark blue. Here the die has been mounted to a printed circuit board substrate below it (dark yellow, also called an interposer) using flip chip and underfill.
Inside a wire bond BGA package; this package has an Nvidia GeForce 256 GPU

Very common is boundary scan testing using an IEEE 1149.1 JTAG port.


Process of finding and resolving bugs within computer programs, software, or systems.

A computer log entry from the Mark II, with a moth taped to the page
Debugging on video game consoles is usually done with special hardware such as this Xbox debug unit intended for developers.

They all leverage a functionality available on low-cost embedded processors, an On-Chip Debug Module (OCDM), whose signals are exposed through a standard JTAG interface.

In-circuit emulation

Use of a hardware device or in-circuit emulator used to debug the software of an embedded system.

A computer log entry from the Mark II, with a moth taped to the page

More recently the term also covers Joint Test Action Group (JTAG) based hardware debuggers which provide equivalent access using on-chip debugging hardware with standard production chips.

Serial Peripheral Interface

Synchronous serial communication interface specification used for short-distance communication, primarily in embedded systems.

Single master to single slave: basic SPI bus example
A typical hardware setup using two shift registers to form an inter-chip circular buffer
A timing diagram showing clock polarity and phase. Red lines denote clock leading edges; and blue lines, trailing edges.
Typical SPI bus: master and three independent slaves
Daisy-chained SPI bus: master and cooperative slaves
SPI Serial Memory by Atmel
Fairchild Serial EEPROM with Microwire bus

Other applications that can potentially interoperate with SPI that require a daisy chain configuration include SGPIO, JTAG, and Two Wire Interface.

Reverse engineering

Process or method through which one attempts to understand through deductive reasoning how a previously made device, process, system, or piece of software accomplishes a task with very little (if any) insight into exactly how it does so.

The six classes of gene network inference methods, according to

1) Analysis through observation of information exchange, most prevalent in protocol reverse engineering, which involves using bus analyzers and packet sniffers, such as for accessing a computer bus or computer network connection and revealing the traffic data thereon. Bus or network behavior can then be analyzed to produce a standalone implementation that mimics that behavior. That is especially useful for reverse engineering device drivers. Sometimes, reverse engineering on embedded systems is greatly assisted by tools deliberately introduced by the manufacturer, such as JTAG ports or other debugging means. In Microsoft Windows, low-level debuggers such as SoftICE are popular.

Daisy chain (electrical engineering)

Wiring scheme in which multiple devices are wired together in sequence or in a ring, similar to a garland of daisy flowers.

A series of devices connected in a daisy chain layout
A daisy garland, a chain of daisy flowers
A graphic representation of a daisy chain

All JTAG integrated circuits should support daisy chaining according to JTAG daisy chaining guidelines.

Field-programmable gate array

Integrated circuit designed to be configured by a customer or a designer after manufacturing – hence the term field-programmable.

A Stratix IV FPGA from Altera
A Spartan FPGA from Xilinx
Simplified example illustration of a logic cell (LUT – Lookup table, FA – Full adder, DFF – D-type flip-flop)
A Xilinx Zynq-7000 All Programmable System on a Chip

This file is transferred to the FPGA/CPLD via a serial interface (JTAG) or to an external memory device like an EEPROM.

Peripheral Component Interconnect

Local computer bus for attaching hardware devices in a computer and is part of the PCI Local Bus standard.

Three 5-volt 32-bit PCI expansion slots on a motherboard (PC bracket on left side)
A typical 32-bit, 5 V-only PCI card, in this case, a SCSI adapter from Adaptec
A motherboard with two 32-bit PCI slots and two sizes of PCI Express slots
Diagram showing the different key positions for 32-bit and 64-bit PCI cards
A PCI-X Gigabit Ethernet expansion card with both 5 V and 3.3 V support notches, side B toward the camera
A semi-inserted PCI-X card in a 32-bit PCI slot, illustrating the need for the rightmost notch and the extra room on the motherboard to remain backward compatible
64-bit SCSI card working in a 32-bit PCI slot
A Mini PCI slot
Mini PCI Wi-Fi card Type IIIB
PCI-to-MiniPCI converter Type III
MiniPCI and MiniPCI Express cards in comparison
A PCI POST card that displays power-on self-test (POST) numbers during BIOS startup
A full-height bracket
A low profile one

TDO is daisy-chained to the following slot's TDI. Cards without JTAG support must connect TDI to TDO so as not to break the chain.

Embedded system

Computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system.

An embedded system on a plug-in card with processor, memory, power supply, and external interfaces
Embedded Computer Sub-Assembly for Accupoll Electronic Voting Machine
e-con Systems eSOM270 & eSOM300 Computer on Modules
Embedded system text user interface using MicroVGA
A close-up of the SMSC LAN91C110 (SMSC 91x) chip, an embedded Ethernet chip

Debugging: JTAG, In-system programming, background debug mode interface port, BITP, and DB9 ports.

Printed circuit board

Laminated sandwich structure of conductive and insulating layers.

PCB of a DVD player. Typically, PCBs are green, but they may also be made in other colors.
Part of a 1984 Sinclair ZX Spectrum computer board, a PCB, showing the conductive traces, vias (the through-hole paths to the other surface), and some electronic components mounted using through-hole mounting.
Through-hole (leaded) resistors
Surface mount components, including resistors, transistors and an integrated circuit
A PCB in a computer mouse: the component side (left) and the printed side (right)
A board designed in 1967; the sweeping curves in the traces are evidence of freehand design using adhesive tape
The two processing methods used to produce a double-sided PWB with plated-through holes
Cut through a SDRAM-module, a multi-layer PCB. Note the via, visible as a bright copper-colored band running between the top and bottom layers of the board.
Eyelets (hollow)
PCB with test connection pads
A cordwood module
Cordwood construction was used in proximity fuzes.
Proximity fuze Mark 53 production line 1944
An example of hand-drawn etched traces on a PCB
A PCB as a design on a computer (left) and realized as a board assembly populated with components (right). The board is double sided, with through-hole plating, green solder resist and a white legend. Both surface mount and through-hole components have been used.
A breakout board can allow interconnection between two incompatible connectors.
This breakout board allows an SD card's pins to be accessed easily while still allowing the card to be hot-swapped.
A breakout board allows a module (a Bluetooth module in this case) to have larger pins.

Boundary scan testing requires that all the ICs to be tested use a standard test configuration procedure, the most common one being the Joint Test Action Group (JTAG) standard.