HW_PROBE - 2024.1 English

Vivado Design Suite Properties Reference Guide (UG912)

Document ID
UG912
Release Date
2024-05-30
Version
2024.1 English

Description

A hardware probe object, hw_probe, provides access to signals in the design to monitor and drive signal values, and track hardware events on the FPGA. Hardware probes can be added to both ILA and VIO debug cores.

Debug probes can be added to ILA debug cores in the RTL design source, along with the core, or in the synthesized netlist design using the create_debug_probe command, and connected to signals in the design using connect_debug_probe.

Probes can only be added to VIO debug cores in the RTL design when the IP core is customized, or re-customized, from the IP catalog, and signals connected to it. Refer to the Vivado Design Suite User Guide: Programming and Debugging (UG908) for more information on adding ILA and VIO debug cores and signal probes to the design.

Debug cores and probes are written to a probes file (.ltx) with write_debug_probes, and associated with the hardware device, along with the bitstream file (.bit), using the PROBES.FILE and PROGRAM.FILE properties of the hw_device object. The hardware device is programmed with this information using the program_hw_device command.

Related Objects

Figure 1. Hardware Probe Objects

The hardware probe objects are associated with the ILA and VIO debug cores programmed onto the hardware devices on the hw_target opened through the hw_server. You can query the hw_probe objects associated with these debug core objects:

get_hw_probes -of [get_hw_ilas hw_ila_2]
get_hw_probes -of [get_hw_vios]

Properties

There are three types of debug probes: ILA, VIO_INPUT, and VIO_OUTPUT. The properties assigned to a hw_probe object depend on the type of probe. You can use the report_property command to report the properties assigned to a hw_probe object.

Refer to the Vivado Design Suite Tcl Command Reference Guide (UG835) for more information. The properties assigned to an ILA type hw_probe object includes the following, with example values:

Property	Type	Read-only	Visible	Value
CAPTURE_COMPARE_VALUE	string	false	true	eq2'hX
CLASS	string	true	true	hw_probe
COMPARATOR_COUNT	int	true	true	4
COMPARE_VALUE.0	string	false	false	eq2'hX
CORE_LOCATION	string	true	false	1:0
DISPLAY_HINT	string	false	false	
DISPLAY_VISIBILITY	string	false	false	
HW_ILA	string	true	true	hw_ila_1
NAME	string	true	true	GPIO_BUTTONS_dly
PROBE_PORT	int	true	true	3
PROBE_PORT_BITS	int	true	true	0
PROBE_PORT_BIT_COUNT	int	true	true	2
TRIGGER_COMPARE_VALUE	string	false	true	eq2'hX
TYPE	string	true	true	ila

To report the properties for a specific type of hw_probe object, you can copy and paste one of the following commands into the Vivado Design Suite Tcl shell or Tcl Console:

report_property -all [lindex [get_hw_probes -filter {TYPE == ila}] 0] 
report_property -all [lindex [get_hw_probes -filter {TYPE == vio_input}] 0] 
report_property -all [lindex [get_hw_probes -filter {TYPE == vio_output}] 0]