create_bd_intf_pin - 2022.1 English

Vivado Design Suite Tcl Command Reference Guide (UG835)

Document ID
Release Date
2022.1 English

Create a new intf_pin.


create_bd_intf_pin [‑vlnv <arg>] [‑mode <arg>] [‑quiet] [‑verbose] [<name>]


The newly created intf_pin object, "" if failed.


Name Description
[-vlnv] Bus vlnv
[-mode] Bus interface mode
[-quiet] Ignore command errors
[-verbose] Suspend message limits during command execution
[<name>] Name of intf_pin to create




Create a new interface pin on an IP integrator hierarchical module. An IP integrator interface is a grouping of signals that share a common function, and can include both individual signals and buses that share a related function. An AXI4-Lite master, for example, is an interface that includes a large number of individual signals plus multiple buses.

To create a single connection pin, or standard bus pin, use the create_bd_pin command.

Interface pins connect with other compatible interface pins, or interface ports. The interface pin is added as a port inside the hierarchical module, to connect outside of the module, and as a pin on the hierarchical module.

You must define the hierarchical module as the current instance in the IP integrator subsystem design, using the current_bd_instance command. The current instance is the target of the create_bd_intf_pin command.

This command returns the name of the newly created interface pin object if successful, and returns an error if it failed.


-vlnv <arg> - (Optional) The Vendor:Library:Name:Version (VLNV) attribute of the interface pin object to be added to the subsystem design. The VLNV attribute identifies the object in the IP integrator catalog.
Note: The -vlnv property for interface pins and ports refers to files in the Vivado® Design Suite installation hierarchy. -vlnv for example, is located in the Vivado Design Suite installation at data/ip/interfaces/lmb_v1_0.

-mode <arg> - (Optional) Defines the mode of the interface pin. Accepted values are Master, Slave, System, MirroredMaster, MirroredSlave, MirroredSystem, Monitor.

-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) The name of the interface pin to add to the current instance.


The following example sets the hierarchical module, newMod1, as the current instance of the IP integrator subsystem design, and then creates a new interface pin on that module:
current_bd_instance [get_bd_cells /newMod1]
create_bd_intf_pin -mode Slave -vlnv data_in