create_bd_port - 2023.2 English

Vivado Design Suite Tcl Command Reference Guide (UG835)

Document ID
Release Date
2023.2 English

Create a new port for an IP subsystem design.


create_bd_port [‑from <arg>] [‑to <arg>] ‑dir <arg> [‑type <arg>]
    [‑freq_hz <arg>] [‑quiet] [‑verbose] <name>


The newly created port object. Returns nothing if the command fails.


Name Description
[-from] Beginning index Default: Unspecified
[-to] Ending index Default: Unspecified
-dir Port direction. Valid values are I, O, or IO.
[-type] Port type. Valid values are clk, ce, rst, intr, data.
[-freq_hz] Frequency in Hertz for clock ports Default: Unspecified
[-quiet] Ignore command errors
[-verbose] Suspend message limits during command execution
<name> Name of port to create




Create a new port to add to an IP integrator subsystem design. The port is a connection to signals external to the subsystem design.

This command returns the name of the newly created port object, or returns an error message if it failed.


-from <arg> - (Optional) The starting index of a standard bus port. This is unspecified for single bit ports.

-to <arg> - (Optional) The ending index of a standard bus port. This is unspecified for single bit ports.

-dir [ I | O | IO ] - (Required) The direction of the port. Valid values are I for input, O for output, and IO for bidirectional ports.

-type <arg> - (Optional) Defines the type of the port as a clock port (CLK), a reset port (RST), a clock enable port (CE), an interrupt port (INTR), or as a data port (DATA). If you do not define the port type, it will be undefined (UNDEF).

-freq_hz <arg> - (Optional) Specifies the frequency for clock ports as defined by the -type option. Unit is specified as Hz, so a 150 MHz clock would be 150000000. If not specified the clock is set to 100 MHz.

-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 subsystem port to create.


The following example creates a new bidirectional bus port in the current IP integrator subsystem design:

create_bd_port -from 0 -to 32 -dir IO -type data addr

The following example creates a new 125 MHz clock port:

create_bd_port -dir I -type clk -freq_hz 125000000 my_clock