Gets the list of interfaces in the board components that implement busdef specified by VLNV
Syntax
get_board_component_interfaces [‑regexp] [‑nocase] [‑all] [‑filter <arg>]
[‑of_objects <args>] [‑quiet] [‑verbose] [<patterns>...]
Returns
List of bus interfaces.
Usage
Name | Description |
---|---|
[-regexp]
|
Patterns are full regular expressions |
[-nocase]
|
Perform case-insensitive matching |
[-all]
|
Returns all enabled as well as disabled interfaces |
[-filter]
|
Filter list with expression |
[-of_objects]
|
Get 'board_component_interface' objects of these types: 'board board_component'. |
[-quiet]
|
Ignore command errors |
[-verbose]
|
Suspend message limits during command execution |
[<patterns>]
|
Match Bus Interface names against patterns Default: * Values: The default search pattern is the wildcard *, or .* when -regexp is specified. |
Description
Gets a list of interfaces defined on the components found on the current board, as defined in the Board Interface file.
The board file, board.xml located in the data/boards folder of the Vivado® Design Suite installation area, stores information regarding board attributes. The board provides a representation of the overall system that the Xilinx® device is a part of, and can help define key aspects of the design, such as clock constraints, I/O port assignments, defined components and supported interfaces. You can create custom boards by defining a custom Board Interface file, as described in the Vivado Design Suite User Guide: System-Level Design Entry (UG895).
The component interface defines related groups of signals that are found on a component, or a component mode.
This command returns a list of component interfaces, or returns an error if it fails.
Arguments
-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 http://perldoc.perl.org/perlre.html for help with regular expression syntax.
regexp
is not anchored, and works as a standard Tcl command. For more information refer to http://www.tcl.tk/man/tcl8.5/TclCmd/regexp.htm.
-nocase
- (Optional) Perform case-insensitive matching when a pattern has been specified. This argument applies to the use of -regexp
only.
-all
- (Optional) Return a list of all component interfaces defined in the Board Interface file of the current board.
-filter
- (Optional) Filter the results list with the specified expression. The -filter
argument filters the list of objects returned by get_board_component_interfaces
based on property values on the component interfaces. You can find the properties on an object with the report_property
or list_property
commands. Any property/value pair can be used as a filter. In the case of the component interface object, "NAME" and "BUSDEF_NAME" are two of the properties that can be used to filter results.
get_pins * -filter {DIRECTION == IN && NAME !~ "*RESET*"}
bool
) type properties can be directly evaluated in filter expressions as true or not true: -filter {IS_PRIMITIVE && !IS_LOC_FIXED}
-of_objects
<args> - (Optional) Get the component interfaces of the specified board, or board_component objects.
-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.
-verbose
- (Optional) Temporarily override any message limits and return all messages from this command.
set_msg_config
command.<patterns> - (Optional) Match component interfaces against the specified search patterns. The default pattern is the wildcard '*' which gets a list of all component interfaces defined on the current board.
Examples
get_board_component_interfaces -of_objects [get_board_components *part0*]
#Get and Create Interfaces for I/O Ports
foreach x [get_board_component_interfaces] {
create_interface $x }