get_hw_sio_iberts - 2022.1 English

Vivado Design Suite Tcl Command Reference Guide (UG835)

Document ID
Release Date
2022.1 English

Get list of hardware SIO IBERT cores.


get_hw_sio_iberts [‑of_objects <args>] [‑regexp] [‑nocase] [‑filter <arg>]
    [‑quiet] [‑verbose] [<patterns>]


Hardware SIO IBERT cores.


Name Description
[-of_objects] Get 'hw_sio_ibert' objects of these types: 'hw_server hw_target hw_device hw_sio_gtgroup hw_sio_gt hw_sio_common hw_sio_pll hw_sio_tx hw_sio_rx hw_sio_link'.
[-regexp] Patterns are full regular expressions
[-nocase] Perform case-insensitive matching. (valid only when -regexp specified)
[-filter] Filter list with expression
[-quiet] Ignore command errors
[-verbose] Suspend message limits during command execution
[<patterns>] Match the 'hw_sio_ibert' objects against patterns. Default: *


Hardware, Object


Returns the Integrated Bit Error Ratio Tester (IBERT) debug core objects, hw_sio_ibert, defined on the current hardware device.

The customizable LogiCORE™ IP Integrated Bit Error Ratio Tester (IBERT) core for Xilinx® FPGAs is designed for evaluating and monitoring the Gigabit Transceivers (GTs). The IBERT core enables in-system serial I/O validation and debug, letting you measure and optimize your high-speed serial I/O links in your FPGA-based system. Refer to the LogiCORE IP Integrated Bit Error Ratio Tester (IBERT) for 7 Series GTX Transceivers v3.0 (PG132) for more information.

The IBERT debug core lets you configure and control the major features of GTs on the device, including:
  • TX pre-emphasis and post-emphasis
  • TX differential swing
  • RX equalization
  • Decision Feedback Equalizer (DFE)
  • Phase-Locked Loop (PLL) divider settings

You can use the IBERT core when you are interested in addressing a range of in-system debug and validation problems; from simple clocking and connectivity issues to complex margin analysis and channel optimization issues.

This command returns a list of IBERT debug core objects on the device, or returns an error if it fails.


-of_objects <arg> - (Optional) Return the IBERT cores of the specified hw_server, hw_target, hw_device, hw_sio_gt, hw_sio_common, hw_sio_pll, hw_sio_tx, hw_sio_rx, or hw_sio_link objects. The objects must be specified by an appropriate get_hw_* command.
Note: The -of_objects option requires objects to be specified using the get_* commands, such as get_cells or get_pins, rather than specifying objects by name. In addition, -of_objects cannot be used with a search <pattern>.
-regexp - (Optional) Specifies that the search <patterns> are written as regular expressions. Both search <patterns> and -filter expressions must be written as regular expressions when this argument is used. Xilinx® regular expression Tcl commands are always anchored to the start of the search string. You can add ".*" to the beginning or end of a search string to widen the search to include a substring. See for help with regular expression syntax.
Note: The Tcl built-in command regexp is not anchored, and works as a standard Tcl command. For more information refer to

-nocase - (Optional) Perform case-insensitive matching when a pattern has been specified. This argument applies to the use of -regexp only.

-filter <args> - (Optional) Filter the results list with the specified expression. The -filter argument filters the list of objects returned by get_hw_sio_iberts based on property values on the IBERT debug core objects. You can find the properties on an object with the report_property or list_property commands. In the case of the "hw_sio_ibert" object, "NAME" and "CORE_REFRESH_RATE_MS" are two of the properties that can be used to filter results.

The filter search pattern should be quoted to avoid having to escape special characters. String matching is case-sensitive and is always anchored to the start and to the end of the search string. The wildcard “*” character can be used at the beginning or at the end of a search string to widen the search to include a substring of the property value.
Note: The filter returns an object if a specified property exists on the object, and the specified pattern matches the property value on the object. In the case of the "*" wildcard character, this will match a property with a defined value of "".
For string comparison, the specific operators that can be used in filter expressions are "equal" (==), "not-equal" (!=), "match" (=~), and "not-match" (!~). Numeric comparison operators <, >, <=, and >= can also be used. Multiple filter expressions can be joined by AND and OR (&& and ||). The following gets input pins that do NOT contain the “RESET” substring within their name:
get_pins * -filter {DIRECTION == IN && NAME !~ "*RESET*"}
Boolean (bool) type properties can be directly evaluated in filter expressions as true or not true:
-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.

<patterns> - (Optional) Match hw_sio_ibert objects against the specified patterns. The default pattern is the wildcard '*' which gets a list of all hw_sio_ibert objects available on the current hardware device.


The following example gets the ILA debug cores defined on the current hardware device:
get_hw_sio_iberts -of_objects [current_hw_device]