upgrade_ip - 2023.1 English

Vivado Design Suite Tcl Command Reference Guide (UG835)

Document ID
Release Date
2023.1 English

Upgrade a configurable IP to a later version


upgrade_ip [‑srcset <arg>] [‑vlnv <arg>] [‑log <arg>] [‑quiet] [‑verbose]


A return code indicating success or failure.


Name Description
[-srcset] (Optional) Specifies the source file set containing the IP to be upgraded Default: The current source fileset Values: Source set name
[-vlnv] (Optional) Identifies the Catalog IP to which the IP will be upgraded. The VLNV string maps to the IPDEF property on the IP core. This is a strict comparison, and the upgrade will fail if the identified IP does not exist in the Catalog. Default: Latest version of the current IP Values: A string of the form '<vendor>:<library>:<name>:<versio n>'
[-log] (Optional) Identifies the log file to which the IP upgrade report will be concatenated. Default: An empty string, indicating that no log will be written Values: A file path to an existing writable file, or a non-existent file location in a writable directory
[-quiet] Ignore command errors
[-verbose] Suspend message limits during command execution
<objects> IP to be upgraded Values: IP instance(s) within the design, as returned by 'get_ips <instance name>' or 'get_bd_cells <cell name>'




This command upgrades the specified IP cores from an older version to the latest version in the IP catalog.

You can only upgrade IP that explicitly supports upgrading. The UPGRADE_VERSIONS property on the ipdef object indicates if there are upgrade versions for an IP core.

Tip: The upgrade_ip command also accepts Block Design cell IP instances as bd_cell objects. The command upgrades the bd_cell objects within the Block Design, and does not require the diagram to be open in the Vivado® IP integrator .


-srcset <arg> - (Optional) Specifies the source file set to upgrade the IP files in. If not specified, the default source file set is sources_1.

-vlnv <arg> - (Optional) Specify the Vendor:Library:Name:Version attribute of the IP to upgrade from the IP catalog. The VLNV attribute identifies the object in the IP catalog.

-log <arg> - (Optional) Specifies the name of a file to append the IP upgrade information to. By default the upgrade_ip command does not log its activities.

Note: If the path is not specified as part of the file name, the log file will be written into the current project directory.
-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.

<objects> - (Required) Specifies which IP cores of Block Design cells to upgrade. The IP must be specified as objects returned by the get_ips command.

Important: Do not use the get_ips -all option, as this can result in recursion issues.


The following example upgrades all IP cores in the current project to the latest version:

upgrade_ip [get_ips]