AXI4 Debug Hub Connectivity - 2022.2 English

Vivado Design Suite User Guide: Programming and Debugging (UG908)

Document ID
UG908
Release Date
2022-10-19
Version
2022.2 English

To use the Vivado® debug cores, the design must contain an AXI4 Debug Hub. The AXI4 Debug Hub connects an AXI4 interface of the CIPS with the AXI4-Stream interface. The interface connects to Vivado® debug cores, which includes the following types of cores:

  • AXI4-Stream Integrated Logic Analyzer (AXIS-ILA)
  • AXI4-Stream Virtual Input/Output (AXIS-VIO)
  • PCI Express® Link Debugger
Table 1. AXI4 Debug Hub Auto-Insertion
AXI4 Debug Hub Connectivity Debug Flow
Automatic AXI4 Debug Hub post-synthesis netlist insertion and connection. This method is recommended for most usecases as it provides the most flexibility.
  1. During opt_design the Vivado debug flow will detect if the design contains any debug cores that require AXI4 Debug Hub connectivity. The Vivado debug flow will also detect if the design contains an instance of the Control, Interface, and Processing (CIPS) IP.
  2. The Vivado debug flow will insert an instance of the AXI4 Debug Hub into the synthesized netlist and automatically connect it to the debug cores used in the design.
Note: This method can not be used on designs that uses Dynamic Function eXchange (DFX).
Manual AXI4 Debug Hub instantiation, automatic post-synthesis netlist debug core connection. This method should be used when it is desired to manually assign the address used by the AXI4 Debug Hub or when Dynamic Function eXchange (DFX) is used. In this case the design should have a manually instantiated AXI4 Debug Hub with a connection to an AXI4 master from the Control, Interface, and Processing (CIPS) IP.
  1. During opt_designthe Vivado debug flow will detect if the design contains any debug cores that require AXI4 Debug Hub Connectivity. The Vivado debug flow will also detect if the design contains an instance of the Control, Interface, and Processing (CIPS) IP.
  2. The Vivado debug flow will locate the manually added AXI4 Debug Hub. This instance of the AXI4 Debug Hub will be replaced with an AXI4 Debug Hub configured with a suitable number of AXI4-Stream interfaces to connect to each debug core used in the design.
    Note: The AXI4 Debug Hub that is replaced by the Vivado debug flow in the above steps will retain the user specified address and properties.
Manual AXI4 Debug Hub instantiation, manual debug core connection. This method should be used when it is desired to manually define all connectivity between the AXI4 Debug Hub, CIPS, and all debug cores in the design. This method can also be used when the design uses Dynamic Function eXchange (DFX).
  1. When building the design, one or more instances of the AXI4 Debug Hub are added to the design with connectivity to an appropriate AXI4 master on the CIPS IP.
  2. The AXI4 Debug Hub should be customized to include the exact number of AXI4-Stream interfaces as there are debug cores in the design.
  3. Each debug core in the design should have the option to enable AXI4-Stream ports for manual connectivity turned on.
  4. It is the user's responsibility to connect each debug core's AXI4-Stream master and slave to a corresponding slave and master on the AXI4 Debug Hub.