commit_hw_vio - 2022.1 English

Vivado Design Suite Tcl Command Reference Guide (UG835)

Document ID
Release Date
2022.1 English

Write hardware VIO probe OUTPUT_VALUE properties values to VIO core(s).


commit_hw_vio [‑quiet] [‑verbose] <hw_objects>...


Name Description
[-quiet] Ignore command errors
[-verbose] Suspend message limits during command execution
<hw_objects> List of hardware VIO and hardware probe objects.




Commit the current values defined on the probes of the VIO Debug core to the current hardware device.

The Virtual Input/Output (VIO) debug core can both monitor and drive internal signals on a programmed Xilinx® FPGA in real time. The VIO core uses hardware probes, hw_probe objects, to monitor and drive signals on the device. Input probes monitor signals as inputs to the VIO core. Output probes drive signals to specified values from the VIO core.

The VIO core operates on an object property-based set/commit use model. You can set the OUTPUT_VALUE property on the output probes of the VIO core using the set_property command. You can then drive those values onto probed signals on the hardware device using the commit_hw_vio command.

This command returns nothing if successful, or returns an error if it fails.


-quiet - (Optional) Execute the command quietly, returning no messages from the command. The command also returns TCL_OK regardless of any errors encountered during execution.
Note: Any errors encountered on the command-line, while launching the command, will be returned. Only errors occurring inside the command will be trapped.
-verbose - (Optional) Temporarily override any message limits and return all messages from this command.
Note: Message limits can be defined with the set_msg_config command.
<hw_objects> - (Optional) Specify the hw_vio debug core, or the hw_probe objects, to commit the OUTPUT_VALUE properties onto the hw_device. You can commit the values of one or more hardware probes, or you can commit the values on all the probes of the VIO core by specifying the hw_vio object.
Note: The objects must be specified using the get_hw_vios or get_hw_probes commands, rather than specified by name.


The following example demonstrates the OUTPUT_VALUE property of the reset hw_probe being set high and committed to the hw_device, to trigger the reset process. Then the value is set low to release the reset:
set_property OUTPUT_VALUE 1 [get_hw_probes fast_cnt_reset \
   -of_objects [get_hw_vios hw_vio_1]]
commit_hw_vio [get_hw_probes {fast_cnt_reset} \
   -of_objects [get_hw_vios hw_vio_1]]
set_property OUTPUT_VALUE 0 [get_hw_probes fast_cnt_reset \
   -of_objects [get_hw_vios hw_vio_1]]
commit_hw_vio [get_hw_vios hw_vio_1]
Note: In the first occurrence of the commit_hw_vio command, a single hardware probe is specified as the object, while the whole hw_vio debug core is specified in the second occurrence of the command.