Adding Existing IP to a Project - 2023.2 English

Vivado Design Suite User Guide: Designing with IP (UG896)

Document ID
Release Date
2023.2 English

You can add IP that was previously created in the CORE Generator tool (<ip_name>.xco files) or Vivado IP (<ip_name>.xci or <ip_name>.xcix files) by using the Add Sources option. You can either reference the IP and any generated output products from its current location, or copy the IP and any generated output products into your project.

Existing IP can be IP customized for use in another design, or customized for use in many designs using a Managed IP project. A Managed IP project can create the XCI file for the IP customization, and generate any needed output products. See Using Manage IP Projects for details on creating IP using the Managed IP flow.

The added IP and any output products show in the IP Sources tab of the Sources window, and other source files in the Hierarchy, Libraries, and Compile Order views.

You can select the IP in the IP Sources and view the properties for it in the Source File Property window.

Important: NGC format files are not supported in the Vivado Design Suite for AMD UltraScale™ devices. AMD recommends that you regenerate the IP using the Vivado Design Suite IP customization tools with native output products. Alternatively, you can use the NGC2EDIF command to migrate the NGC file to EDIF format. See the ISE to Vivado Design Suite Migration Guide (UG911) for more information about migrating files for Vivado.

When adding or importing an existing IP into a project, the existing output products for the IP are referenced or copied into the project; however, the design runs are not.

To create the design runs for the IP you have two options: regenerate the output products for the IP, or enter thecreate_ip_run command into the Tcl Console:

create_ip_run -force [get_ips <ip_name>]

The run reports that it has not been started yet. The added IP also needs to be instantiated into the top-level design as described in Instantiating an IP.

Adding Existing IP using Tcl Commands

Tcl commands to add existing IP and its generated output products to a project are as follows:

  • Use the import_files to add existing IP: import_files <ip_filename>
  • Use the read_ip to remotely access an IP: read_ip <ip_filename>