Fact-checked by Grok 2 weeks ago

JTAG

JTAG, formally known as the IEEE 1149.1 Standard Test Access Port and Boundary-Scan Architecture, is a serial communications protocol that defines test logic within integrated circuits to enable standardized testing of interconnections on printed circuit boards, internal IC testing, and observation or modification of circuit activity during operation. This architecture includes a Test Access Port (TAP) controlled by signals such as Test Clock (TCK) and Test Mode Select (TMS), along with serial data inputs (TDI) and outputs (TDO), allowing for efficient shifting of test data and instructions without the need for physical probes on every pin. Originally developed to replace traditional bed-of-nails testing methods for increasingly dense electronics, JTAG has evolved into a versatile interface supporting automated test equipment, system maintenance, and boundary-scan operations that sample or control I/O pins. The standard originated in the mid-1980s when the Joint Test Action Group (JTAG), an consortium of over 200 manufacturers worldwide, formed in 1985 to address escalating test costs in high-density board assemblies. Building on earlier efforts like the 1985 Joint European Test Action Group (JETAG), the full IEEE 1149.1 standard was ratified in 1990, with subsequent revisions—such as the 2001 and 2013 updates—enhancing support for internal scan chains, hierarchical designs, and compatibility with emerging technologies like system-on-chip (SoC) devices. Key components include the boundary-scan register, which captures data at the IC's I/O boundaries, and instruction registers that select operational modes like sample, preload, or bypass for efficient testing. Beyond manufacturing test, JTAG has become integral to systems development, serving as a primary debug and programming interface for microcontrollers, FPGAs, and processors from vendors like and . It enables of , real-time debugging via tools like emulators, and even security applications, though its exposed ports can pose risks if not secured. Related extensions, such as IEEE 1149.7 for reduced-pin access and IEEE 1149.10 for high-speed operations, extend its applicability to modern, pin-constrained designs.

History

Origins in the 1980s

In the mid-, the faced significant challenges in testing printed circuit boards (PCBs) due to the rapid increase in density and complexity, particularly with multi-layer boards and shrinking pin spacings that rendered traditional bed-of-nails probing methods unreliable and costly. To address these limitations, a of European companies formed the Joint European Test Action Group (JETAG) in 1985, aiming to develop a standardized approach for verifying designs and testing assembled PCBs without relying on physical probes. This initiative was driven by the need for a more efficient, non-invasive testing strategy that could handle the evolving demands of high-density electronics manufacturing. In 1986, JETAG expanded to incorporate North American participants and was renamed the Joint Test Action Group (JTAG), reflecting broader international collaboration among key players such as , which initiated the effort within its European operations, , and test equipment firms like GenRad. The group's early focus centered on pioneering serial scan paths for boundary testing, which would allow test data to be shifted through IC boundaries via a dedicated interface, thereby replacing direct physical access with a serial protocol to detect interconnect faults on PCBs. This conceptual shift promised to reduce testing complexity and costs while improving fault coverage in dense assemblies. The inaugural JTAG meetings took place between 1986 and 1987, including discussions at events like the in 1987, where proposals for a were refined to serve as the core interface for IC test logic. These sessions emphasized a unified featuring a input/output mechanism controlled by clock and mode signals, laying the foundation for interoperable boundary-scan capabilities across devices from multiple vendors. By 1988, the JTAG Technical Subcommittee had advanced these ideas into formal proposals, setting the stage for eventual IEEE adoption.

Standardization and Evolution

The Joint Test Action Group (JTAG) technology was formally standardized by the Institute of Electrical and Electronics Engineers (IEEE) as IEEE Std 1149.1-1990, which defined the Test Access Port (TAP) and boundary-scan architecture to enable testing of digital integrated circuits and printed circuit boards without physical probes. Approved in 1990, this initial standard established a serial interface with dedicated pins for test data input (TDI), test data output (TDO), test mode select (TMS), and test clock (TCK), optionally including a test reset (TRST), to support interconnection testing and internal device diagnostics. Subsequent revisions addressed evolving needs in semiconductor design. The IEEE Std 1149.1-2001 update introduced software-controlled test features, enhancing flexibility for maintenance and support functions while maintaining compatibility with the 1990 version. A more substantial overhaul occurred with IEEE Std 1149.1-2013, which incorporated optional features such as the procedural description language (PDL) for documenting test procedures and extensions to the boundary-scan description language (BSDL) to handle complex tests in heterogeneous integrated circuits. These 2013 enhancements, approved after a decade of development, doubled the standard's size and focused on test reuse for embedded cores via integration with IEEE 1500. Recent advancements include the IEEE Std 1149.7-2022, known as cJTAG, which provides a reduced-pin variant of the while ensuring full with IEEE 1149.1 implementations. Published on October 14, 2022, this standard defines six TAP classes (T0 to ) with incremental capabilities, such as two-wire operation to minimize pin usage in space-constrained systems. These evolutions have been driven by increasing system-on-chip () complexity, the proliferation of embedded instrumentation for in-system diagnostics, and the demand for reduced pin counts in high-density designs. As of 2023, the IEEE 1149.1 working group has been discussing a potential refresh, aligning with approximate 10-year revision cycles to incorporate further adaptations for advanced packaging and internal scan networks.

Technical Fundamentals

Electrical Characteristics

The JTAG interface is implemented through a Test Access Port () that typically consists of four mandatory pins: TCK for providing the test , TMS for selecting operational modes, TDI for serial data input, and TDO for serial data output. An optional fifth pin, , can be included to asynchronously the TAP controller. Signal voltage levels for the TAP pins are not rigidly defined by the IEEE 1149.1 standard but must comply with the device's I/O characteristics, commonly aligning with CMOS or TTL logic families operating at 1.2 V to 5 V based on the system supply voltage (Vcc). For boundary-scan testing, pins support specific compliance patterns such as high-impedance (high-Z) states to isolate the device from the board, as well as weak pull-up or pull-down configurations to detect open or short faults during pin integrity checks. In multi-device systems, the daisy-chain topology connects devices serially by routing the TDO output of one device to the TDI input of the next, with TMS and TCK signals bused in to all devices for synchronized control. This arrangement enables efficient scanning across chains but imposes requirements on , including controlled impedance traces (often 50 Ω ) to reduce reflections and support TCK frequencies up to 100 MHz, limited by factors such as chain length, capacitive loading, and individual device timing specifications. JTAG TAP operation relies on the device's system () without a dedicated power pin, ensuring that signal levels track the core voltage for compatibility. ESD protection guidelines for JTAG pins follow general practices, with integrated circuits typically rated for at least 2 kV (HBM) resilience, and external interfaces recommended to include series resistors (e.g., 100–220 Ω on data lines) and proper grounding to mitigate risks during handling and connection.

Communications Primitives

The JTAG communications primitives are defined by the Test Access Port (TAP) controller, a 16-state that orchestrates all operations within the IEEE 1149.1 standard. The states include Test-Logic-Reset, Run-Test/Idle, Select-DR-Scan, Capture-DR, Shift-DR, Exit1-DR, Pause-DR, Exit2-DR, Update-DR, Select-IR-Scan, Capture-IR, Shift-IR, Exit1-IR, Pause-IR, Exit2-IR, and Update-IR. Transitions between these states are controlled by the Test Mode Select (TMS) signal, which is sampled on the rising edge of the Test Clock (TCK); a TMS value of 1 directs the machine toward the instruction register path or reset, while 0 follows the data register path or stable modes. This synchronous design ensures deterministic behavior, with the state machine starting in Test-Logic-Reset upon power-up or reset. Data transfer in JTAG relies on shifting during the Shift-DR and Shift-IR states, where bits are loaded into the selected via the Test Data In (TDI) pin and simultaneously shifted out through the Test Data Out (TDO) pin. Each rising edge of TCK advances the shift by one bit, forming a daisy-chain scan path that allows external tools to load or read contents bit by bit without . The (IR) is selected by navigating the TMS path through Select-IR-Scan, Capture-IR, and into Shift-IR, where commands like or SAMPLE are loaded; conversely, the data (DR) path—via Select-DR-Scan, Capture-DR, and Shift-DR—handles operand data for the active instruction, such as boundary-scan chain contents. Fundamental primitives include and operations to initialize or pause JTAG activity. can be achieved asynchronously via an optional Test (TRST) pin or synchronously by holding TMS high for at least five rising TCK edges, forcing the TAP into Test-Logic-Reset and disabling test logic. The Run-Test/ state serves as the primary mode, where the system remains stable with no shifting or capturing, allowing time for internal test operations or waiting for host commands; entry to this state occurs from Update-DR or Update-IR with TMS low. Timing for these primitives emphasizes reliable signal integrity relative to TCK. TMS and TDI must meet setup time requirements—typically the minimum duration they must be stable before the rising TCK edge—to ensure correct sampling, and hold time—the duration after the rising edge—to prevent glitches. TDO, in contrast, updates its value on the falling TCK edge, providing a half-cycle for propagation without interfering with input sampling. This serial scanning flow conceptually involves clocking a stream of bits through the , with the external controller managing TMS sequences to route data precisely through or paths while TCK provides the rhythmic pulse.

Core Standards

IEEE 1149.1 Boundary Scan

The IEEE 1149.1 standard establishes the foundational boundary-scan architecture for embedded test logic in integrated circuits, enabling standardized testing of interconnections between devices on assembled printed circuit boards without requiring physical access to individual pins. This architecture incorporates a Test Access Port (TAP) with four or five dedicated pins (TDI, TDO, TCK, TMS, and optionally TRST) to control a serial scan path that facilitates controllability and observability of I/O signals. By integrating shift-register cells adjacent to each device pin, the standard allows test stimuli to be applied and responses to be captured electronically, addressing the challenges of testing high-density boards where traditional bed-of-nails probing becomes impractical. At the core of this architecture is the boundary-scan chain, composed of latch cells forming a at every , bidirectional, and pin of the device. Each typically includes a boundary input for capturing incoming signals, a boundary output for driving outgoing signals, and additional logic for handling bidirectional or powered pins, ensuring that the chain provides full visibility and over external interfaces. This setup permits the injection of test patterns to detect opens, shorts, and stuck-at faults in inter-device wiring, while the cells can be configured to support normal functional operation when not in test mode. The Description Language (BSDL), defined within the standard, provides a standardized VHDL-based format for describing the chain's configuration, including types, mappings, codes, and lengths, which is essential for and automated test vector generation across vendors. The standard mandates specific registers to manage test operations: the Instruction Register (IR), a serial shift register of at least 2 bits (typically 4 to 8 bits in practice), which holds the to select the active test mode or data register; and the Data Registers (DR), a family of selectable shift registers including the primary Register (BSR) that spans the entire boundary chain. Other DRs may include bypass, identification, or user-defined registers, but the BSR is central, with its length determined by the number of pins and cell types (e.g., one cell per simple I/O, two for bidirectional). In a multi-device daisy chain, the full scan path length for BSR operations is the sum of individual BSR lengths plus any intervening fixed cells, allowing sequential shifting of data across the board-level chain without parallel access needs. IEEE 1149.1 requires four public instructions to ensure basic compliance, each decoded from the to connect a specific to the for shifting. The EXTEST instruction selects the BSR to drive test data from its output cells to external pins while capturing external signals into input cells, enabling comprehensive board-level interconnect testing by suspending internal device logic. The SAMPLE/PRELOAD instruction also connects the BSR but maintains the device in functional mode, allowing real-time sampling of pin states for signature analysis or preloading of test vectors into output cells without disrupting system operation. The BYPASS instruction selects a single-bit bypass , effectively shortening the by routing TDI directly to TDO and isolating the device, which is crucial for focusing tests on specific components in a chain. The IDCODE instruction selects a 32-bit register containing manufacturer ID, , , and compliance codes, facilitating device discovery and during test setup. Beyond these, the standard defines several optional public instructions to extend functionality. The RUNBIST instruction connects a self-test data register, initiating an internal (BIST) sequence and returning pass/fail status via the BSR or another , supporting at-speed internal diagnostics. The instruction uses the BSR to force output and bidirectional pins to predefined safe states (e.g., high-impedance or logic levels) without shifting further data, useful for isolating faults during testing. The 2013 revision of IEEE 1149.1 introduced the Procedural Description Language (PDL), an optional Tcl-based extension to BSDL, for specifying complex, parameterized test sequences and register behaviors associated with new instructions like CLAMP_HOLD and ECIDCODE, enhancing documentation and reuse for advanced applications such as IP core . As of March 2024, IEEE 1149.1-2013 is designated as an Inactive-Reserved standard, meaning it remains valid but is no longer actively maintained.

IEEE 1149.7 Reduced-Pin Variant

The IEEE 1149.7 standard, also known as cJTAG, defines a reduced-pin and enhanced-functionality Test Access Port (TAP) and boundary-scan architecture that minimizes the number of dedicated pins required for test and debug access while maintaining compatibility with the IEEE 1149.1 standard. It introduces circuitry to access on-chip TAPs using either the traditional four- or five-wire IEEE 1149.1 interface or a two-pin configuration aligned with the Serial Wire Debug (SWD) protocol, enabling efficient operation in pin-limited environments. This variant supports mode detection to ensure backward compatibility, allowing devices to operate in full IEEE 1149.1 mode when connected to legacy systems. A key feature of IEEE 1149.7 is its two-pin mode, which utilizes only the System Clock (SCK, equivalent to SWCLK) and System Data (SDI, equivalent to SWDIO) pins for all signaling, eliminating the need for separate Test Data In (TDI) and Test Data Out (TDO) pins. This mode serializes IEEE 1149.1 transactions over the two pins, with protocol enhancements that detect the interface type at startup and switch accordingly to prevent conflicts with traditional JTAG chains. In two-pin operation, control and data are multiplexed on the SDI pin, while SCK provides the timing reference, supporting both scan-based testing and debug functions without additional I/O overhead. The standard defines six hierarchical compliance classes (T0 through T5), each building on the previous to add incremental capabilities. Class T0 ensures full behavioral compatibility with IEEE 1149.1, particularly for multi- devices, by emulating standard JTAG startup sequences. Class T1 extends this with common debug instructions and features, such as selective TAP enabling to reduce quiescent current. Class T2 introduces high-performance scan modes, including optimized packet formats for faster data transfer in daisy-chain topologies. Class T3 supports flexible four-wire configurations in either series or star scan topologies, enabling efficient multi-device addressing. Classes T4 and T5 enable the two-pin interface, with T4 providing basic serialization and T5 adding advanced credit-based flow control for reliable, high-bandwidth non-scan data transfers across multiple on-chip clients. The 2022 revision of IEEE 1149.7 enhances integration with SWD by formalizing the two-pin access as a native pathway for both test and debug, including refined protocols for seamless protocol switching in mixed environments. It improves timing parameters to support higher clock rates suitable for modern systems and extends multi-device chain support through enhanced topology handling in classes and T3, facilitating daisy-chain and star configurations with reduced latency. These updates address evolving challenges in debug and test systems, such as those in stacked-die and system-on-chip designs. Advantages of IEEE 1149.7 include significant reduction in I/O pin count, which is particularly beneficial for space-constrained applications like wearables and mobile devices, where traditional five-pin JTAG would consume valuable resources. The credit-based flow control in Class T5 ensures efficient data handling by managing overflows in high-speed, multi-client scenarios, improving overall reliability without increasing pin usage. Overall, the standard balances pin efficiency with enhanced performance, making it a scalable solution for advanced integrated circuits.

Advanced Extensions

Internal JTAG (IEEE 1687)

IEEE 1687, commonly referred to as Internal JTAG or IJTAG, is a standard developed by the IEEE for providing standardized and control to instrumentation within devices. Published in 2014, it builds upon the foundational IEEE 1149.1 (JTAG) boundary-scan by extending the (TAP) to support hierarchical networks of internal instruments, such as logic analyzers, performance monitors, and debug registers, without specifying the instruments themselves. The primary purpose is to enable efficient reuse of and measurement IP across design flows, facilitating , debug, and at-speed testing in complex system-on-chips (SoCs) where traditional boundary-scan alone is insufficient for internal visibility. This standard addresses the growing complexity of integrated circuits by allowing instrument networks to be described portably, promoting interoperability among tools from different vendors. At its core, IEEE 1687 introduces two key description languages: the Instrument Connectivity Language (ICL) and the Procedure Description Language (PDL). ICL defines the structural topology of the instrument network, including interconnections between the JTAG TAP, scan segments, and instruments, using a modular, hierarchical approach that supports retargeting for IP reuse. PDL, on the other hand, specifies operational procedures for instruments, such as read/write operations or capture sequences, in a vendor- and tool-independent manner. To optimize access in potentially large networks, the standard employs Segment Insertion Bits (SIBs), which are configurable bits that dynamically insert or bypass scan path segments, reducing test time and data volume by avoiding unnecessary scanning through inactive branches. This retargeting mechanism allows the same instrument description to be adapted to different TAP configurations or hierarchical levels, such as from die-level to package-level integration. The architecture integrates seamlessly with IEEE 1149.1 by reusing the TAP controller, TMS, and TCK signals, but augments the and data registers to include internal scan chains. For example, a typical IJTAG network might route from the boundary-scan chain to an internal (a container for instruments) via a Wire-AND or other interconnect primitives, with SIBs enabling selective activation. Compliance requires devices to support optional instructions like EXTEST_INSTR for internal access, ensuring with legacy JTAG tools while enabling advanced features like at-speed instrument operation. Extensions in later amendments, such as IEEE 1687.1-2025, further expand applicability to multi-die systems and ICs, enhancing scalability for emerging heterogeneous integrations. Overall, IEEE 1687 has become essential for modern design, with adoption in industries like automotive and for in-system debug and silicon lifecycle management.

Auxiliary Standards (IEEE 1149.8 and Beyond)

IEEE 1149.8.1-2012 defines boundary-scan-based stimulus of interconnections to passive and/or active components. This standard codifies testability circuitry added to integrated circuits (ICs) incremental to IEEE 1149.1 provisions, enabling the use of boundary-scan to provide stimulus and response for testing components such as capacitors, resistors, and other passives on printed circuit boards without physical probes. It includes structural and procedural description languages to support loaded board testing and manufacturing defect detection. Building on the core JTAG framework, several auxiliary standards address specific limitations in testing mixed-signal and high-speed environments. IEEE 1149.4, released in 1999, defines an analog boundary-scan architecture that extends boundary-scan to mixed-signal circuits, incorporating analog test receivers and sources to measure external components like capacitors and resistors on printed circuit boards. This standard introduces additional pins (AT1 and AT2) for analog stimulus and response, allowing non-intrusive testing of analog interconnects while maintaining compatibility with IEEE 1149.1 operations. Similarly, IEEE 1149.6, approved in 2003, targets AC-coupled and high-speed networks, which are incompatible with the DC-coupled assumptions of IEEE 1149.1. It specifies compliant pins and analog pins to handle signals like LVDS and , enabling EXTEST operations on advanced I/O without signal distortion, thus supporting testing of modern interconnects in multi-gigabit environments. Security has become a critical aspect of JTAG implementations due to inherent vulnerabilities that expose devices to physical attacks. Unauthorized access via exposed JTAG ports can enable attackers with physical proximity to extract cryptographic keys, dump , or manipulate internal states, as demonstrated in exploits targeting mobile devices and embedded systems. For instance, physical probing of JTAG pins has been used to bypass secure boot mechanisms and retrieve sensitive data from . To mitigate these risks, post-2013 countermeasures include locking, which disables or restricts JTAG access through hardware fuses or configuration bits after initial testing, and encrypted scan chains that protect data shifted through TDI/TDO using stream ciphers like . Emerging work in the 2020s emphasizes protocols, such as challenge-response mechanisms, to verify users before granting JTAG access, often integrated into SoC security controllers from vendors like NXP and . These approaches balance testability with protection, ensuring JTAG remains viable for debugging while preventing unauthorized exploitation. Recent developments in auxiliary standards focus on adapting JTAG for advanced packaging technologies, notably through integration with IEEE 1838. This 2019 standard establishes a test access architecture for stacked integrated circuits, incorporating per-die controllers that leverage JTAG primitives for hierarchical control across stacked layers. In ICs, IEEE 1838 enables pre-bond and post-bond testing by routing scan paths through micro-bumps and interposers, allowing individual die testing without full stack disassembly. Procedurally, it uses a serial network of TAPs to select and activate test modes on specific dies, combining with boundary-scan for interconnect verification and embedded instruments for functional validation, thus addressing yield challenges in heterogeneous stacking.

Applications

Board-Level Testing

Boundary scan, as defined in the IEEE 1149.1 , enables testing of assembled printed circuit boards (PCBs) by accessing the interconnects between compliant devices without physical probes. The shifts the to control and observe the pins of each device, allowing detection of opens, , and other faults in the wiring between components. This method isolates the board's structural integrity by applying test patterns to one device's outputs while capturing responses at the next device's inputs in the . Prior to full interconnect testing, chain integrity must be verified to ensure all devices are properly connected and responsive. The BYPASS instruction connects the test data in (TDI) and test data out (TDO) pins through a single-bit register in each device, enabling a quick check of the overall chain length and continuity by measuring the expected shift delay. The optional IDCODE instruction further confirms device presence and identity by reading a 32-bit manufacturer-specific code from each component, helping identify miswired or missing parts in the daisy-chain configuration. Test vectors for interconnect faults typically include walking 1s and 0s patterns to detect stuck-at faults and bridges, where a logic 1 or 0 is propagated through each net sequentially to verify . For efficiency, signature analysis compresses responses using a multiple input signature register () to generate a compact fault , improving test speed while maintaining coverage. Automation relies on Description Language (BSDL) files provided by device manufacturers, which describe the pin mappings, register lengths, and instruction opcodes to generate netlists and vectors for board-specific tests. Compared to traditional bed-of-nails probing, offers non-intrusive access ideal for ball-grid array (BGA) and (SMT) packages, where physical probes are impractical due to dense pin spacing. It achieves high fault coverage, often exceeding 90% for digital nets in complex boards, reducing costs and enabling at-speed testing without custom hardware. A key limitation is its dependence on JTAG-compliant components; non-compliant parts, such as or legacy , cannot be directly tested, necessitating hybrid approaches that combine with systems for full board coverage.

Device Debugging and Programming

JTAG plays a pivotal role in debugging by providing direct access to device internals through the Test Access Port (), enabling developers to control execution and inspect states without physical probing. This capability stems from extensions to the core IEEE 1149.1 , which originally focused on boundary-scan testing but was adapted by vendors in the early 1990s to support functional of microcontrollers. For instance, Intel's integration of JTAG-like features in the 80486 around 1990 marked an early milestone, allowing initial debugging and in-system modifications that reduced reliance on socketed programming. By the mid-1990s, JTAG had become a standard tool for debugging, facilitating operations like single-stepping through code and examination on devices such as early ARM-based systems. In modern multi-core System-on-Chips (SoCs), JTAG extensions—such as those in IEEE 1149.7 for reduced-pin interfaces—enable scalable across multiple processors, supporting simultaneous halt and operations to manage complexity in heterogeneous cores. Debug access via JTAG typically involves private instructions, which are vendor-specific opcodes loaded into the (IR) to invoke non-standard behaviors beyond the mandatory , EXTEST, and SAMPLE/PRELOAD instructions defined in IEEE 1149.1. These private instructions allow halting and resuming the CPU by shifting into internal debug registers; for example, in ARM architectures, the HALT instruction sets a bit in the Debug Status and Control Register (DSCR) via the JTAG , pausing execution while preserving context for inspection. Trace ports, accessible through JTAG, further support instruction breakpoints by capturing execution flows without full halts, using trace macros (ETMs) to stream off-chip for . For firmware storage and updates, JTAG enables (ISP) of non-volatile memories like and , even when these components lack native JTAG support, by leveraging the host device's to control programming signals. This often involves shifting data into the device's control registers to initiate write cycles, as seen in CPLD and FPGA applications where JTAG sequences program directly. A common technique is bootloader injection, where JTAG loads an initial into , which then handles subsequent firmware updates to , streamlining field upgrades without dedicated programmers. JTAG debugging employs two primary techniques: halt mode, which is invasive and stops the CPU entirely for detailed examination, and , which is non-intrusive and allows operation by invoking a debug monitor handler via interrupts. In halt mode, the processor enters a quiescent upon JTAG command, enabling register reads/writes and setting, but it disrupts timing-critical applications; this is ideal for low-level of non- systems. Conversely, maintains essential functionality—such as peripheral servicing—while providing limited access through software-mediated JTAG requests, making it suitable for environments where full stops could cause system failures. Despite its utility, JTAG introduces security risks, particularly through exposed debug features that can enable side-channel attacks. Private instructions may be reverse-engineered via scan chains, allowing unauthorized CPU control and data extraction, as demonstrated in scenarios where attackers insert malicious devices into JTAG chains to intercept or alter instructions. Additionally, JTAG ports facilitate side-channel attacks by modulating clock signals (TCK) to induce phase leakage, enabling inference of internal states like cryptographic keys without altering standard operations; such vulnerabilities have been shown to extract sensitive information from secure SoCs. To mitigate these, implementations often incorporate or disablement mechanisms post-deployment.

Implementation and Tools

Hardware Interfaces and Connectors

JTAG hardware interfaces primarily rely on standardized physical connectors to facilitate reliable connections between debug tools and target devices. The 10-pin 2x5 Insulation Displacement Connector (IDC) with a 2.54 mm pitch is a prevalent choice for compact JTAG and Serial Wire Debug (SWD) implementations, commonly used in microcontroller boards and development kits from manufacturers like Texas Instruments. This connector supports essential signals while minimizing board space, often featuring keyed alignment to prevent incorrect mating. A standard pinout for the 10-pin connector (ARM Debug) assigns VTREF (target reference voltage) to pin 1 for automatic level detection, TCK (test clock)/SWCLK to pin 2, TMS (test mode select)/SWDIO to pin 4, TDI (test data in) to pin 8, TDO (test data out)/SWO to pin 6, nSRST (system reset) to pin 10, and GND to pins 3, 5, and 9 for shielding. Note that some vendors, such as , may swap TCK and TMS pin assignments. To accommodate voltage mismatches between tools (typically 3.3 V or 5 V) and targets (1.8 V to 5 V), buffer integrated circuits (ICs) such as the SN74LVC125A quad buffer are employed for unidirectional level shifting on signals like TDI, TMS, and TCK, ensuring signal integrity without bidirectional complexity. For more advanced ARM-based systems, the 20-pin connector offers expanded functionality with a 2.54 mm pitch box header, supporting full JTAG alongside trace and reset signals. Defined by specifications, its pinout includes VTREF on pin 1 for voltage sensing, nTRST (negative test reset) on pin 3, TDI on pin 5, TMS on pin 7, TCK on pin 9, RTCK (return test clock) on pin 11 for adaptive clocking, TDO on pin 13, nSRST on pin 15, and multiple GND pins for . This interface enables higher-speed operations compared to the 10-pin variant, though it requires careful routing to maintain compliance with IEEE 1149.1 timing. Adapter types bridge host interfaces to JTAG connectors, with USB-to-JTAG adapters being ubiquitous for PC-based . Devices based on the FT2232H chip provide dual-channel USB 2.0 high-speed (up to 480 Mb/s) conversion to JTAG signals, configurable via for protocols like MPSSE (Multi-Protocol Synchronous Serial Engine), and supporting speeds up to 30 MHz on the . Standalone pods, such as the SEGGER J-Link, operate independently or via USB/Ethernet, offering portable multi-core without direct host attachment. For daisy-chained configurations with multiple Test Access Ports (), multi-TAP controllers like the Corelis ScanTAP-8 deliver eight independent channels, allowing concurrent access to devices on complex boards while managing lengths up to thousands of flip-flops. Electrical adaptations address signal quality in varied environments. Active probes integrate onboard amplification and buffering to drive signals over longer traces or reduce loading in multi-device chains, as utilized in FPGA debugging tools for dynamic probe point access. In contrast, passive probes use direct wiring without active components, suitable for short, low-capacitance connections but prone to degradation at higher frequencies. ESD-safe designs incorporate series resistors (typically 22–47 Ω) on data lines to limit current and transient voltage suppressor (TVS) diodes (e.g., clamping at 6.1 V) near the connector to protect against human-body-model ESD events up to 8 kV, preventing latch-up in CMOS TAP controllers. Cable length limits constrain high-speed deployments; for TCK frequencies exceeding 10 MHz, lengths should not exceed 30 cm to avoid propagation delays and reflections that violate IEEE 1149.1 setup/hold times, with flat ribbon cables preferred for impedance matching. In the 2020s, compact adapters have evolved with FPGA acceleration for Internal JTAG (IJTAG, IEEE 1687) support, enabling efficient navigation of embedded instrument networks. Tools like the XJTAG XJAccelerator use onboard FPGAs to parallelize scan operations, achieving up to 10x faster programming of internal chains compared to traditional controllers, particularly in testing. These designs often combine interfaces with adaptive voltage sensing for broad compatibility.
Connector TypePitchKey SignalsTypical Use CaseSource
10-pin 2x5 IDC2.54 mmVTREF, TMS, TCK, TDI, TDO, GNDMicrocontroller debugging (e.g., TI XDS)
ARM 20-pin2.54 mmVTREF, nTRST, TMS, TCK, TDI, TDO, RTCKARM Cortex trace and adaptive clocking

Software Development Support

Open-source tools play a central role in JTAG-based , enabling cost-effective and testing for systems. OpenOCD, an open-source on-chip , provides comprehensive support for JTAG and Serial Wire Debug (SWD) interfaces, facilitating , boundary-scan testing, and real-time across various architectures like and . It integrates seamlessly with the GNU Debugger (GDB) via the remote GDB protocol over sockets or pipes, allowing developers to perform source-level , set breakpoints, and inspect while OpenOCD handles low-level access. Complementing this, UrJTAG serves as a versatile open-source utility for JTAG testing, focusing on boundary-scan operations to verify integrated circuits and program flash devices without full capabilities. Commercial software suites offer advanced features for professional JTAG workflows, including automated test generation and diagnostics. JTAG Technologies' ProVision is a comprehensive boundary-scan development platform that automates the creation of interconnect tests and (ISP) applications from project databases, supporting IEEE 1149.1 compliance and integration with EDA netlists. Similarly, Corelis' ScanWorks suite provides a modular set of tools for JTAG boundary-scan testing, featuring graphical interfaces for control, script debugging, and fault coverage reporting to streamline and production testing. These suites often incorporate BSDL (Boundary Scan Description Language) parsers to interpret device models and vector generators to produce optimized test patterns, ensuring high fault coverage for complex board assemblies. Development workflows leveraging JTAG tools emphasize scripted automation to enhance efficiency in embedded firmware cycles. Scripted test sequences are commonly defined using Serial Vector Format (SVF), an ASCII-based standard for representing high-level IEEE 1149.1 operations like scan chains and data shifts, which enables portable execution across compatible JTAG controllers for verification and programming. Alternatively, STAPL (Standard Test and Programming Language) supports more structured scripting for JTAG-compliant devices, generating low-level instructions for multi-device chains in formats executable by players like those in Vivado or Jam STAPL solutions. In continuous integration/continuous deployment (CI/CD) pipelines for embedded firmware, these formats integrate with tools like OpenOCD to automate build-time testing, such as boundary-scan integrity checks and flash programming, reducing manual intervention and accelerating release cycles. Recent advancements in address security concerns in JTAG , particularly for environments. Tools like Lauterbach's TRACE32 now include enhanced support for secure JTAG protocols, enabling authenticated debugging sessions through certificate-based unlocking and runtime injection, compatible with standards like those in NXP processors to prevent unauthorized during development and field updates.

Examples and Case Studies

ARM CoreSight Integration

In ARM architectures, the integration of JTAG begins with the family, where the JTAG Test Access Port () interfaces directly with the EmbeddedICE debug unit to enable halt and monitor capabilities. EmbeddedICE provides essential facilities such as breakpoint units for setting execution halts at specific instructions and watchpoint units for monitoring memory accesses, allowing developers to inspect processor state without external intervention. This setup leverages the standard JTAG boundary-scan chain to access debug registers, facilitating non-intrusive observation of core execution. CoreSight represents the evolution of ARM's debug infrastructure, introducing modular components that extend beyond traditional JTAG to support scalable, multi-core systems. A key element is the multi-drop trace funnel, which merges multiple trace streams from various sources into a single for efficient bandwidth management in complex SoCs. Synchronization across components is achieved via the Cross-Trigger Interface (CTI), enabling coordinated triggering of debug events like breakpoints or trace starts across processors. Over time, CoreSight has shifted from pure JTAG reliance to a model incorporating Serial Wire Debug (SWD), reducing pin count from five to two while maintaining compatibility through the Serial Wire JTAG Debug Port (SWJ-DP), which allows dynamic protocol switching. ARM CoreSight supports two primary debug modes: halt mode, which invasively stops the core to allow full register inspection and single-stepping, and , which enables by allowing the core to run while intercepting events non-invasively. In , semihosting facilitates host-mediated I/O operations, such as outputs or file access, without halting execution, making it suitable for performance-sensitive applications. Status information, including power-down and states, is accessible via registers like the Device Power-down and Status Register (DBGPRSR), which reports processor conditions to ensure proper debug session management. In modern implementations, JTAG usage differs between A-profile processors, designed for high-end application environments with rich operating systems, and M-profile processors, optimized for applications. A-profile cores, such as those in Cortex-A series, employ extensive CoreSight components for system-wide and multi-core , often retaining JTAG for but favoring SWD for . In contrast, M-profile cores, like Cortex-M, prioritize compact SWD interfaces with simplified CoreSight elements, focusing on low-overhead debug for embedded systems while supporting JTAG through SWJ-DP for broader tool interoperability.

Microcontroller Implementations

The series microcontrollers implement a 4-pin JTAG interface consisting of TCK, TMS, TDI, and TDO, enabling (ISP) entry via a dedicated ISP pin and supporting debug access through the Test Access Port (). In the LPC5500 series, this configuration facilitates testing and debug operations, with ISP mode activated by holding the ISP button during reset to allow flash programming via vendor-specific commands accessible over the JTAG chain. Private JTAG instructions are employed for targeted flash programming tasks, such as sector and code loading, enhancing security and efficiency in applications. Microchip's dsPIC family incorporates a 4-wire JTAG (TCK, TMS, TDI, TDO) in devices like the dsPIC33F series, supporting IEEE 1149.1 for interconnect testing and enabling code download directly in the target system without removing the device from the board. This setup allows programming of on-chip using JTAG-compliant tools, providing a robust alternative for and firmware updates in digital signal control applications. However, low-pin-count variants face limitations with full JTAG due to pin constraints, often relying instead on the 2- or 3-wire In-Circuit Programming (ICSP) for cost-effective programming and basic debug in space-limited designs. The Renesas RX family achieves full compliance with the IEEE 1149.1 standard, integrating JTAG capabilities in models such as the RX63x group to enable comprehensive testing of internal and external connections. On-chip emulator support is provided through Renesas' E2 and E1 tools, which connect via the JTAG for real-time debugging, trace capture, and flash programming without halting the entire system. In automotive electronic control units (s), via JTAG on RX microcontrollers facilitates efficient production testing of multi-chip assemblies, as demonstrated in ECU designs where it verifies integrity and signal paths to reduce defects in high-volume . Across these non-ARM implementations, common patterns emphasize cost-optimized TAP controllers that leverage the mandatory instruction to minimize test time in daisy-chained configurations during production, allowing non-targeted devices to be bypassed while scanning others for faults. Reduced-pin options, such as those defined in IEEE 1149.7, are occasionally referenced to address pin scarcity in compact designs. The IEEE 1149 family encompasses several standards that build upon or complement the JTAG (IEEE 1149.1) interface for specialized testing and access needs. IEEE 1149.4, ratified in 1999 and updated in 2010, defines a mixed-signal test bus that extends boundary-scan capabilities to analog and mixed-signal circuits using additional analog boundary modules accessed via the JTAG TAP. IEEE 1149.5, released in 1995, specifies the Module Test and Maintenance Bus (MTM-Bus) protocol, a serial backplane interface for system-level testing and maintenance of modules, integrating with IEEE 1149.1 at the device level. IEEE 1149.6, first published in and revised in , addresses boundary-scan testing for advanced networks, including AC-coupled, , and high-speed I/O signals that challenge traditional DC testing methods. IEEE 1149.10, approved in 2017, introduces a high-speed test access port and on-chip distribution architecture using packetized serial communications over two wires (HSIC-like), enabling faster test data delivery for complex SoCs while maintaining compatibility with IEEE 1149.1.

References

  1. [1]
    JTAG IEEE 1149.1 Standard WG - of IEEE Standards Working Groups
    The IEEE 1149.1 standard defines test logic that can be included in an integrated circuit to provide standardized approaches to testing the interconnections.
  2. [2]
    [PDF] IEEE Std 1149.1 (JTAG) Testability Primer - TI.com
    Many people believe that boundary-scan architecture will do for development, manufacturing, and test what the RS-232C standard did for computer peripherals.
  3. [3]
    IEEE 1149.1 (JTAG) Technology Overview
    May 16, 2022 · JTAG is the common name of the IEEE1149.1 standard, which defines the Standard Test Access Port and Boundary-Scan Architecture for test access ports.
  4. [4]
    Scan chains and the JTAG interface - Arm Developer
    For more details of the JTAG specification, see IEEE Standard 1149.1 - 1990 Standard Test Access Port and Boundary-Scan Architecture.
  5. [5]
    Mitigating JTAG as an Attack Surface - IEEE Xplore
    The Joint Test Action Group (JTAG) standards define test and debug architectures that are ingrained within much of today's commercial silicon.
  6. [6]
    IEEE 1149.7-2009 - IEEE SA
    This specification describes circuitry that may be added to an integrated circuit to provide access to on-chip Test Access Ports (TAPs) specified by IEEE ...
  7. [7]
    High Speed JTAG P1149.10 Working Group
    This standard defines a high speed test access port for delivery of test data, a packet format for describing the test payload and a distribution architecture.
  8. [8]
    None
    ### Summary of JTAG and JETAG History and Formation in the 1980s
  9. [9]
    JTAG: An Introduction - Embedded
    Oct 29, 2002 · To find a solution to these problems, a group of European electronics companies formed a consortium in 1985 called the Joint Test Action Group ( ...
  10. [10]
    [PDF] JTAG Advanced Capabilities and System Design - Texas Instruments
    Overview: What is JTAG? The Joint Test Action Group (JTAG) is an industry group formed in 1985 to develop a method to test populated circuit boards after ...
  11. [11]
    [PDF] Boundary Scan Tutorial - DMCS Pages for Students
    Sep 25, 2002 · JTAG did not invent the concept of boundary scan. Several companies, such as IBM, Texas Instruments and Philips, were already working on the ...<|control11|><|separator|>
  12. [12]
    IEEE 1149.1-1990 - IEEE SA
    Circuitry that may be built into an integrated circuit to assist in the test, maintenance, and support of assembled printed circuit boards is defined.
  13. [13]
    IEEE 1149 Boundary Scan Test - Semiconductor Engineering
    IEEE 1149.1 Boundary-Scan Standard and the associated Test Access Port (TAP) were first released in 1990. While the initial use case was for structural testing ...
  14. [14]
    What is JTAG? - Corelis Inc.
    Captured data is serially shifted out through the JTAG Test Access Port (TAP) and can be compared to expected values to determine a pass or fail result.Missing: 1986 1987
  15. [15]
    IEEE 1149.1-2001 - IEEE SA
    Superseding: 1149.1-1990 ; Board Approval: 2001-06-14 ; History. ANSI Approved: 2001-10-25; Published: 2001-07-23; Reaffirmed: 2008-03-27 ; ANSI Approved: 2001-10- ...Missing: JTAG | Show results with:JTAG
  16. [16]
    IEEE 1149.1-2013 - IEEE SA
    This standard defines test logic that can be included in an integrated circuit (IC), as well as structural and procedural description languages.
  17. [17]
    The IEEE 1149.1-2013 Standard for Test Access Port and Boundary ...
    Dec 18, 2022 · 1149.1 underwent a significant revision within the IEEE in 2013, to accommodate changes driven by increasing circuit density, heterogeneous ...
  18. [18]
    This Isn't Your Father's JTAG Anymore - Design And Reuse
    Oct 20, 2014 · 1149.1 was revised in 2001 with only incremental improvements and no real major rewrites. That is until now. A new 1149.1-2013 and the upcoming ...
  19. [19]
    IEEE 1149.7-2022 - IEEE SA
    Oct 14, 2022 · It defines six classes of IEEE 1149.7 Test Access Ports (TAP.7s), T0 to T5, with each class providing incremental capability, building on that of the lower ...
  20. [20]
    1149.7-2022 - IEEE Standard for Reduced-Pin and Enhanced ...
    Oct 14, 2022 · The purpose of the standard is to define a debug and test interface that meets an expanding set of challenges facing Debug and Test Systems.Missing: cJTAG | Show results with:cJTAG
  21. [21]
    What's up with the IEEE 1687 and 1149.1 refresh? - Tessent Solutions
    Jun 23, 2023 · 2, which extends the procedure description language (PDL) with new commands to control and observe analog values in much the same way that ...
  22. [22]
    Introduction to JTAG and the Test Access Port (TAP)
    Nov 18, 2020 · And so, in the 1980s, boundary-scan was developed, and standardized in IEEE 1149.1-1990, IEEE Standard for Test Access Port and Boundary-Scan ...Missing: 1986 1987
  23. [23]
    2.1.2. JTAG Chip Architecture - Embecosm
    IEEE 1149.1 specifies an optional asynchronous reset pin, TRST , an optional identification register and a number of optional instructions that may be included.
  24. [24]
    Technical Guide to JTAG - XJTAG Tutorial
    JTAG, based on IEEE 1149.1, is a standard for test access port and boundary scan architecture, enabling setting/reading pin values without direct access.Boundary Scan · Test Access Port (tap)... · RegistersMissing: European 1985 history
  25. [25]
    9.2. I/O Voltage for JTAG Operation - Intel
    The JTAG pins support 1.8 V, 1.5V, and 1.2V TTL/CMOS I/O standard. For any voltages higher than 1.8 V, you have to use level shifter.
  26. [26]
    4. Intel® Stratix® 10 I/O Voltage for JTAG Operation
    The JTAG pins support 1.8 V TTL/CMOS I/O standard. Note: For any voltages higher than 1.8 V, you have to use level shifter. The output voltage of the level ...
  27. [27]
    JTAG: Joint Test Action Group - GitHub
    Aug 23, 2017 · JTAG is an electronics industry association formed in 1985 for developing a method of verifying designs and testing printed circuit boards after manufacture.
  28. [28]
    [PDF] SCANSTA101 Low Voltage IEEE 1149.1 System Test Access (STA ...
    1149.1 (JTAG) Test master for an IEEE 1149.1 boundary scan test. Access ... Maximum Clock Frequency, TCK. 25. MHz. APPLICATIONS/PROGRAMMERS REFERENCE. Table ...
  29. [29]
    Design for Test (DFT) Guidelines for improving JTAG testability - xjtag
    At TCK frequencies above 30MHz and at output voltages below 2.5V it may be necessary to use a different termination scheme to achieve best performance. For ...
  30. [30]
    IEEE 1149.1 - JTAG Technologies
    The IEEE 1149.1 standard has stood the test of time. Since 1990 it has served as the embedded test technology in thousands of ICs.
  31. [31]
    The JTAG Test Access Port (TAP) State Machine - Technical Articles
    Nov 20, 2020 · The state machine is simple, comprising two paths: The data register (DR) path (shown in green), used for loading instructions.
  32. [32]
    Boundary Scan Description Language (BSDL) Explained
    Jul 2, 2023 · Boundary Scan Description Language (BSDL) provides a description of testability features within ICs that comply with the IEEE 1149.1 Standard.
  33. [33]
    Boundary Scan Tutorial - Corelis Inc.
    Jun 5, 2025 · Boundary-scan is an integrated method for testing interconnects on printed circuit boards (PCBs) that are implemented at the integrated circuit (IC) level.
  34. [34]
    The IEEE 1149.1-2013 Standard for Test Access Port and Boundary ...
    Dec 18, 2022 · A test mode persistence controller that can keep the test mode active even if the active instruction does not force test mode. · A new, optional ...
  35. [35]
    1149.7-2009 - IEEE Standard for Reduced-Pin and Enhanced ...
    Feb 10, 2010 · Class T1 adds common debug functions and features to minimize power consumption. Class T2 adds operating modes that maximize scan performance.
  36. [36]
    IEEE 1687-2014 - IEEE SA
    Dec 5, 2014 · This standard defines a methodology for access to and operation of embedded instrumentation, without defining the instruments or their features themselves.
  37. [37]
    IEEE Standard for Access and Control of Instrumentation Embedded ...
    Dec 5, 2014 · This standard develops a methodology for access to embedded instrumentation, without defining the instruments or their features themselves.
  38. [38]
    IEEE P1687 Internal JTAG (IJTAG) taps into embedded ...
    Jan 29, 2013 · There's a wealth of test and measurement IP trapped inside chips and it's ready for the IJTAG standard to set it free.
  39. [39]
    [PDF] IEEE P1687 Internal JTAG (IJTAG) Tutorial - Circuitnet
    The goal of IEEE P1687 Internal JTAG (IJTAG) is to streamline the use of instruments that have been embedded in chips. The intent is to facilitate the ...Missing: 1689 | Show results with:1689
  40. [40]
    What's The Difference Between JTAG (IEEE 1149.1) And IJTAG ...
    This article details the differences between the older JTAG (IEEE-1149.1) standard and the newer Internal JTAG (IJTAG, IEEE-P1687) standard for test of printed-
  41. [41]
    IJTAG: IEEE 1687 Internal JTAG - Electronics Notes
    IJTAG, or Internal JTAG, is a method adding functionality to the JTAG TAP for internal testing, extending the JTAG interface for embedded instruments.
  42. [42]
    P1687.1 - IEEE SA
    Feb 13, 2025 · This standard extends or expands the application of the IEEE Std 1687-2014 “Standard for Access and Control of Instrumentation Embedded within a Semiconductor ...
  43. [43]
    [PDF] JTAG Tutorial - Corelis Inc.
    IEEE-1149.1 specifies mandatory instructions—to be fully JTAG compliant, devices must utilize these instructions. EXTEST. The EXTEST instruction is used to ...
  44. [44]
    IEEE 1149.4-1999 - IEEE SA
    Mar 20, 2000 · IEEE 1149.4-1999 ... The architecture is described, together with the means of control of and access to both analog and digital test data.
  45. [45]
    1149.6-2003 - IEEE Standard for Boundary-Scan Testing of ...
    This project will define standard, robust, and minimally intrusive test structures and methods that provide greater detection and diagnostic capability.
  46. [46]
    JTAG: A Strong Tool for Security Testing - eInfochips
    Aug 24, 2023 · Physical Access Attacks. These attacks take place with direct physical access to the device's JTAG interface. Attackers can exploit this ...
  47. [47]
    The JTAG Connection - Semiconductor Engineering
    Oct 2, 2014 · Such open access to flash memory, proprietary algorithms and other sensitive areas enables the extraction of keys, codes, data, even processes ...<|separator|>
  48. [48]
    [PDF] Encryption-Based Secure JTAG | HAL
    Jun 11, 2019 · In this paper, we propose a protection for the JTAG infrastructure, relying on the encryption of test data based on the stream cipher. Besides ...Missing: post- | Show results with:post-
  49. [49]
    Secure JTAG - AN4686 - Documentation - NXP Semiconductors
    Feb 5, 2025 · The Secure JTAG mode limits the JTAG access by using a challenge/response-based authentication mechanism. Any access to the JTAG port is checked.Missing: 2020s | Show results with:2020s
  50. [50]
    IEEE 1838: Taking Test into the Third Dimension - Cadence Blogs
    Jun 15, 2020 · This is IEEE Standard for Test Access Architecture for Three-Dimensional Stacked Integrated Circuits. Actually, it's even more complicated ...
  51. [51]
    JTAG Boundary Scan Tutorial - Etoolsmiths
    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 ...
  52. [52]
    [PDF] ieee 1149.1 jtag and boundary scan tutorial
    This tutorial also provides an overview of the data standards applicable to the boundary-scan architecture and an overview of the software tools available to ...
  53. [53]
    [PDF] Boundary-Scan Tutorial - Techs it easy
    The Runbist instruction initiates an internal self-test routine and places the pass/fail result register between TDI and. TDO. Two new instructions were ...
  54. [54]
    Boundary-Scan - JTAG Technologies
    The JTAG boundary-scan standard was developed to solve a fundamental, technical problem facing traditional PCB assembly test equipment, i.e. probing device pins ...What Is Jtag · Why Jtag · Jtag Testing
  55. [55]
    JTAG Boundary scan: Four test cases - EDN Network
    Jun 18, 2015 · JTAG testing helps detect opens in BGA (ball-grid array) packages, short circuits, breaks, as well as faulty chips with digital interfaces.
  56. [56]
    What is Jtag ? - FPGA Beginner
    Aug 15, 2019 · JTAG has been in widespread use ever since it was included in the Intel 80486 processor in 1990 and codified as IEEE 1491 that same year. Today ...Missing: early | Show results with:early
  57. [57]
    An extension to JTAG for at-speed debug on a system - IEEE Xplore
    The JTAG port is an efficient mechanism to gain more access to the ICs. A method is presented to reconfigure the boundary scan chain to any desired length and ...
  58. [58]
    Reinventing JTAG for SoC debugging - Embedded
    Sep 8, 2008 · Control level two is used to create commands for the IEEE 1149.7 system. ... two-pin operation, which is implemented in Class T4. It should ...
  59. [59]
    Halt mode - ARM1020T Technical Reference Manual - Arm Developer
    Halt mode can only be selected by setting the halt bit (bit 30) of the DSCR, which is only writable through the JTAG interface. In halt mode the processor stops ...
  60. [60]
    Halt mode and monitor mode compared - Arm Developer
    Halt mode is used to debug low-level, non real-time applications. Due to its hardware nature, halt mode can be used to debug ARM1020T under almost all ...
  61. [61]
    In-System Programming (ISP) using Boundary Scan - XJTAG
    In-system programming (ISP) allows devices to be programmed after being attached to the circuit, using JTAG, and eliminates the need for expensive programmers.
  62. [62]
    [PDF] 3. JTAG and In-System Programmability - Intel
    The MAX II JTAG and ISP controller internally generate the high programming voltages required to program the CFM cells, allowing in-system programming with.
  63. [63]
    Examining system state during debugging - Arm Developer
    In both halt mode and monitor mode, the JTAG-style serial interface enables you to examine the internal state of the core and the external state of the system ...
  64. [64]
    Attacks and defenses for JTAG - ResearchGate
    Aug 6, 2025 · This article addresses some security issues surrounding JTAG. We look at the threat of a malicious chip in a JTAG chain. We outline attack scenarios.
  65. [65]
    [PDF] Phase Modulation Side Channels: Jittery JTAG for On-Chip Voltage ...
    These attacks may be used for a form of side-channel attacks, but ultimately are using the JTAG port with valid timing and commands. These scan- based attacks ...<|separator|>
  66. [66]
    JTAG Connectors and Pinout - Texas Instruments
    Nov 29, 2022 · Texas Instruments supports a variety of JTAG connection methods to both its development kits and custom boards. This page covers in detail several aspects.
  67. [67]
    SN74LVT125-Q1: Quad Channel Buffer Recommendations for JTAG?
    Dec 16, 2024 · As far as I know, all four JTAG signals are unidirectional, so you can simply use the SN74LVC125A-Q1. I believe you are right in that JTAG ...Looking for a buffer that can support up to 25MHz signal such as JTAGIs this the latest and greatest to recommend for IEEE 1149.1 JTAG ...More results from e2e.ti.com
  68. [68]
    ARM JTAG 20
    Table 6. ARM JTAG 20 interface pinout table. Pin, Signal name, I/O diagram, Voltage domain. 1, VTREF, F, A. 2, NC, NA, NA. 3, nTRST, D, A. 4, GND, H, NA.
  69. [69]
    FT2232HQ - FTDI
    In stockThe FT2232H is a USB 2.0 Hi-Speed (480Mb/s) to UART/FIFO IC. It has the capability of being configured in a variety of industry standard serial or parallel ...
  70. [70]
    Debug Adapter Hardware (OpenOCD User's Guide)
    There are many USB JTAG dongles on the market, many of them based on a chip from “Future Technology Devices International” (FTDI) known as the FTDI FT2232; this ...<|separator|>
  71. [71]
    ScanTAP 4 & 8 - Corelis Inc.
    Corelis ScanTAP pods are designed for use with PCI-1149.1/Turbo and PCIe-1149.1 high-speed JTAG controllers. Featuring 4 & 8 independent Test Access Ports (TAPs) ...
  72. [72]
    [PDF] Debugging PolarFire FPGA Using SmartDebug Application Note
    Active Probes enable reading or changing the values of probe points in a design through JTAG. Active Probes dynamically and asynchronously read or write to any ...
  73. [73]
    ESD protection on JTAG and SWD - STMicroelectronics Community
    Aug 7, 2023 · I am reading the "Getting started with STM32U5 MCU" guie, which mentions that JTAG/SWD lines should have a 47-Ohms resistor and a 6.1V diode for ESD protection.Electromagnetic protection for JTAG interface?STM32H747(XI) JTAG Sensing - STMicroelectronics CommunityMore results from community.st.com
  74. [74]
    FAQ: How long should the JTAG cable be? - JTAGTest
    Maximum cable length depends on communication speed and JTAG I/O voltage. For very low-speed JTAG communication the cable used can be as long as 50 cm (1.6 feet) ...Missing: safe designs
  75. [75]
    XJAccelerator - Speed up Flash Programming using an FPGA & JTAG
    XJTAG's XJAccelerator is a multipurpose unit that can facilitate and accelerate flash programming as well as extending test coverage on a DUT.Missing: 2020s | Show results with:2020s
  76. [76]
    Open On-Chip Debugger
    OpenOCD version 0.12.0. Some major GNU/Linux distros (Debian, Fedora, Gentoo, OpenWrt), Homebrew for macOS and MSYS2 for Windows have already picked the ...Supported JTAG interfaces · Getting OpenOCD · OpenOCD 0.12.0 released · About
  77. [77]
    analogdevicesinc/openocd: OpenOCD provides on-chip ... - GitHub
    OpenOCD provides on-chip programming and debugging support with a layered architecture of JTAG interface and TAP support.
  78. [78]
    20 GDB and OpenOCD
    OpenOCD uses the remote GDB protocol for debugging remote targets. GDB connects via socket or pipe, and may need configuration for OpenOCD.
  79. [79]
    General - UrJTAG - SourceForge
    UrJTAG is a tool for testing integrated circuits using JTAG, a serial interface, and can program flash devices. It does not support debugging.
  80. [80]
    ProVision Platform - JTAG Technologies
    ProVision Platform is a reduced version for test and ISP execution, including import, execution, and result review, with a built-in test sequencer.
  81. [81]
    JTAG Boundary-Scan Tools & Products - Corelis Inc.
    Corelis offers a large variety of standardized boundary-scan hardware and software bundles that cover the majority of usage cases for our users.
  82. [82]
    ScanExpress Debugger - Corelis Inc.
    ScanExpress JTAG Debugger is a software application designed to assist engineers with hardware debug during prototype design verification and testing.Features · Graphical User Interface · Application Programming...
  83. [83]
    Serial Vector Format (SVF) File - XJTAG
    The SVF, or Serial Vector Format, was developed as a vendor-independent way of representing JTAG test patterns in ASCII (text) files.
  84. [84]
    [PDF] SVF | Serial Vector Format Specification JTAG | Boundary Scan
    Serial Vector Format (SVF) files are used to describe high-level IEEE 1149.1 bus operations. In general, IEEE 1149.1 bus operations consist of scan ...
  85. [85]
    Standard Test and Programming Language (STAPL) Programming
    The STAPL file generated through AMD Vivado™ Design Suite and AMD Vivado™ Lab Edition contains low-level JTAG instructions and data required to program these ...Missing: scripted | Show results with:scripted
  86. [86]
    [PDF] The Ultimate Guide to CI/CD for Embedded Software Systems
    CI/CD combines frequent integration (CI) with extensive testing (CD) for embedded systems, requiring automated builds and continuous testing.<|control11|><|separator|>
  87. [87]
    Debug tool examples for using Secure JTAG - Documentation
    Feb 5, 2025 · To use the Secure JTAG feature, the JTAG debugger must support it. The first example provided in this section uses the Lauterbach TRACE32 ...
  88. [88]
    [PDF] Application Note JTAG Interface | Lauterbach
    TRACE32 offers two interfaces for performing a custom JTAG access: •. Remote API. •. JTAG commands. Page 29. Application Note JTAG Interface | 29. ©1989-2025 ...Missing: secure | Show results with:secure
  89. [89]
    [PDF] User Guide - Arm
    technology using a standard JTAG TAP interface. Each device contains at least one TAP controller containing shift registers that form the chain. Processors ...
  90. [90]
    [PDF] ARM11 MPCore Processor Technical Reference Manual
    ... JTAG DBGTAP state machine diagram ... EmbeddedICE-RT logic. • an 8-stage pipeline. • branch prediction with return stack. • coprocessors 14 and 15.
  91. [91]
    About the CoreSight Trace Funnel - Arm Developer
    The CoreSight components provide a multi-core debug and trace solution with high bandwidth for whole systems, including trace and monitor of the system bus.Missing: evolution multi- drop CTI
  92. [92]
    CoreSight CTI signals - Arm Developer
    The CoreSight components provide a multi-core debug and trace solution with high bandwidth for whole systems, including trace and monitor of the system bus.Missing: evolution multi- drop
  93. [93]
    How to switch the debugger connection between JTAG and SWD ...
    The 16-bit SWD-to-JTAG select sequence is 0b0011 1100 1110 0111 , MSB first. This can be represented as either of the following: 0x3CE7, transmitted MSB first.<|separator|>
  94. [94]
    DBGPRSR, Device Powerdown and Reset Status Register
    DBGPRSR is in the Debug control and status registers group, see the registers summary in Table 29.3. For more information about the reset values of the bits see ...
  95. [95]
    Working with semihosting - Arm Development Studio User Guide
    This book describes how to use the debugger to debug Linux applications, bare-metal, Real-Time Operating System (RTOS), and Linux platforms.Missing: modes halt monitor DBGPRSR
  96. [96]
    The different DAPs - Arm Community - Arm Developer
    Dec 13, 2021 · It includes a single JTAG-AP, which is provided to integrate with the legacy processors with JTAG debug interfaces, such as Arm7, Arm9, and ...
  97. [97]
    Five key features of the Arm Cortex-M33 Processor
    Oct 20, 2016 · The Cortex family is based on three distinct profiles: the A profile, for sophisticated, high-end applications running mainly complex operating ...
  98. [98]
    [PDF] Introduction to Boundary Scan of LPC5500 - NXP Semiconductors
    Oct 30, 2020 · Boundary scan is a method for testing interconnects on PCBs and internal IC sub-blocks. It is defined in the IEEE 1149.1 standard.
  99. [99]
    [PDF] AN3283, MPC5500 Flash Programming Through Nexus/JTAG
    The MPC5500 family of devices has internal Flash used for code and data.1 The Nexus debug interface can be used to program the Flash using the JTAG.
  100. [100]
    [PDF] dsPIC33F/PIC24H Family Reference Manual - Microchip Technology
    Nov 29, 2011 · A 4-wire or 5-wire interface, and an appropriate test platform is required for implementing the BST. Since. JTAG boundary scan has been ...
  101. [101]
    [PDF] dsPIC33F/PIC24H Flash Programming Specification
    There are two methods of programming the dsPIC33F/. PIC24H family of devices discussed in this programming specification. They are:.Missing: download | Show results with:download
  102. [102]
    [PDF] dsPIC33/PIC24 Family Reference Manual Programming and ...
    Entry into and exit from ICSP mode involves applying (or removing) voltage to MCLR, while supplying a code sequence to PGD and a clock to PGC. Any one of the ...
  103. [103]
  104. [104]
  105. [105]
    JTAG / Boundary-scan in automotive
    With JTAG / Boundary-scan technology there is an answer to the ever increasing demands in every stage of the automotive sector.Missing: Renesas RX