Copying an IP - 2021.2 English

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

Document ID
Release Date
2021.2 English

You can copy an existing IP customization to use as a starting point for a new IP. This is useful when you have already customized an IP, need to only make small or simple customization changes for the new IP.

To copy an IP, in IP Sources, select the IP, right-click and selectCopy IP. Then provide a destination name and location for the copy, as shown in the following figure.

Figure 1. Copy IP Dialog Box

Save the copied IP into the project directory structure, which by default is located at <project_name>.src/sources_1/ip/, or specify a different location to store the copied IP outside of the current project. When working with a Manage IP project the default location is the same location as the /manage_ip_project directory. Then, you can re-customize the copied IP customization by either double-clicking the IP, or right-clicking and selecting Re-customize IP from the IP Sources tab. The copied IP customization window opens with the customization settings from the original IP. You can now make edits.

It is possible to have an IP that references different sub-IP versions; an older version that is locked and another, newer version. In such a case, the synthesis tool could produce errors or logic bugs because files exist with the same module names but with different contents. Upgrade the sub-IP or synthesize the IP out-of-context.

Tcl Command Example for Copying IP

You can use the copy_ip command to create a copy of an IP customization:

copy_ip -name newFIFo [get_ips char_fifo]

This example creates a copy of the char_fifo IP, names it newFIFO, and adds it to the project. Because no directory was specified using the -dir option, the IP is created inside the project directory structure.