add_hw_probe_enum - 2023.1 English

Vivado Design Suite Tcl Command Reference Guide (UG835)

Document ID
UG835
Release Date
2023-05-16
Version
2023.1 English

Add an enumerated name-value pair to a hw_probe enumeration.

Syntax

add_hw_probe_enum [‑no_gui_update] [‑dict <args>] [‑quiet] [‑verbose]
    <name> <value> <hw_probe>

Usage

Name Description
[-no_gui_update] Defer GUI update.
[-dict] List of parameter name-value pairs.
[-quiet] Ignore command errors
[-verbose] Suspend message limits during command execution
<name> Enumerated name.
<value> Explicit value.
<hw_probe> hw_probe object.

Categories

Hardware

Description

Assign enumerated name/value pairs to specified hardware probe objects.

This command is intended to make it easier to monitor the states of signals in the Vivado® logic analyzer. The command lets you define a set of states, or enumerated names to be associated with specific values that may be found on a hw_probe object. This lets you monitor state machine probes and some other types of probes, by comparing symbolic names with trigger values and waveform data values.

The enumerated name is added as an ENUM.NAME property on the specified hw_probe object, and associated with the specified bit value on the probe. Enumerated names can be used to specify trigger/capture compare values for hw_probes.

Tip: Enumerated names are displayed in the waveform viewer of the Vivado logic analyzer. Display of the enumerated names can be disabled on a per probe basis. Refer to the Vivado Design Suite User Guide: Programming and Debugging (UG908) for more information on the waveform viewer.

This command returns the enumerated name property, or returns an error if it fails.

Arguments

-no_gui_update - (Optional) Do not update the GUI in the Vivado logic analyzer to reflect the enumerated values of the probe.

-dict - (Optional) Use this option to specify a dictionary of enumerated <name> <value> pairs on a hw_probe. Multiple <name> <value> pairs must be enclosed in quotes, "", or braces, {}.

-dict "name1 value1 name2 value2 ... nameN valueN"
Tip: Use the -dict option in place of the <name> and <value> arguments when specifying multiple enumerated values.
-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.

<name> - (Required) Specify the name for the ENUM property associated with the specified <value>, on the hw_probe object. The enumerated name property is case insensitive. The specified name will be used whenever the bit value on the hw_probe matches the specified <value>.

<value> - (Required) Specify the bit value on the hw_probe object to associate with the defined enumerated <name>. Values can be defined using binary, octal, hex, signed and unsigned values.

Important: Binary bit-values 'x' and edge bit values (F,B,RT) can not be specified.

<hw_probe> - (Required) Specify the hw_probe object to assign the enumerated name property to.

Examples

The following example uses the -dict option to define the enumerated name/value pairs for the specified hw_probe object:

add_hw_probe_enum -dict {ZERO eq5'h00 RED eq5'h12 GREEN eq5'h13 \
  BLUE eq5'h14 WHITE eq5'h15 YELLOW eq5'h16  GREY eq5'h17} \
  [get_hw_probes op1 -of_objects [current_hw_ila]]

The following example defines the enumerated name/value pairs for the specified hw_probe object:

add_hw_probe_enum  ZERO eq5'h00 [get_hw_probes op1 \
  -of_objects [current_hw_ila]]
add_hw_probe_enum  RED eq5'h12 [get_hw_probes op1 \
  -of_objects [current_hw_ila]]
add_hw_probe_enum  GREEN eq5'h13 [get_hw_probes op1 \
  -of_objects [current_hw_ila]]
add_hw_probe_enum  BLUE eq5'h14 [get_hw_probes op1 \
  -of_objects [current_hw_ila]]
add_hw_probe_enum  WHITE eq5'h15 [get_hw_probes op1 \
  -of_objects [current_hw_ila]]
add_hw_probe_enum  YELLOW eq5'h16 [get_hw_probes op1 \
  -of_objects [current_hw_ila]]
add_hw_probe_enum  GREY eq5'h17 [get_hw_probes op1 \
  -of_objects [current_hw_ila]]

The following example returns the ENUM property assigned to the specified hw_probe object:

report_property [get_hw_probes op1 -of_objects [current_hw_ila]] ENUM*
Property            Type    Read-only  Visible  Value
ENUM.ZERO           string  true       true     eq5'h00
ENUM.RED            string  true       true     eq5'h12
ENUM.GREEN          string  true       true     eq5'h13
ENUM.BLUE           string  true       true     eq5'h14
ENUM.WHITE          string  true       true     eq5'h15
ENUM.YELLOW         string  true       true     eq5'h16
ENUM.GREY           string  true       true     eq5'h17