Virtual JTAG Intel® FPGA IP Core User Guide

ID 683705
Date 8/12/2021
Public
Document Table of Contents

Applications of the Virtual JTAG Intel® FPGA IP Core

You can instantiate single or multiple instances of the Virtual JTAG Intel® FPGA IP core in your HDL code. During synthesis, the Intel® Quartus® Prime software assigns unique IDs to each instance, so that each instance is accessed individually. You can instantiate up to 128 instances of the Virtual JTAG Intel® FPGA IP core. The figure below shows a typical application in a design with multiple instances of the IP core.
Figure 2. Application Example

The hub automatically arbitrates between multiple applications that share a single JTAG resource. Therefore, you can use the IP core in tandem with other on‑chip debugging applications, such as the Signal Tap logic analyzer, to increase debugging visibility. You can also use the IP core to provide simple stimulus patterns to solicit a response from the design under test during run‑time, including the following applications:

  • To diagnose, sample, and update the values of internal parts of your logic. With this IP core, you can easily sample and update the values of the internal counters and state machines in your hardware device.
  • To build your own custom software debugging IP using the Tcl commands to debug your hardware. This IP communicates with the instances of the Virtual JTAG Intel® FPGA IP core inside your design.
  • To construct your design to achieve virtual inputs and outputs.
  • If you are building a debugging solution for a system in which a microprocessor controls the JTAG chain, you cannot use the Signal Tap logic analyzer because the JTAG control must be with the microprocessor. You can use low‑level controls for the JTAG port from the Tcl commands to direct microprocessors to communicate with the Virtual JTAG Intel® FPGA IP core inside the device core.