Packaging a Specified Directory - 2024.1 English

Vivado Design Suite User Guide: Creating and Packaging Custom IP (UG1118)

Document ID
Release Date
2024.1 English

When you package a specified directory, you can package the files in a specific directory within the file system. There are inference rules which assist in packaging the IP correctly. The following table describes the directory structure recommended for inferring an IP.

Table 1. Directory Inference Recommendation
Source Type Directory Inference
Synthesizable Sources src/, hdl/
Simulation Sources sim/, simulation/
Example Sources example/, ex/, examples
Test Benches testbench/, tb/, test/
C Sim Models cmodel/, c/
Documents docs/, doc/, documents/

Using the directory structure shown in the previous table, the IP packager attempts to populate the contents into each corresponding file group. In the synthesizable sources directory, the files are filtered by the .sv, .v*, and .xdc extensions. For all other directories, files are populated.

  • If the simulation directories do not exist, the IP packager populates the synthesizeable sources into the simulation file sets.
  • If the directory structure of the specified directory cannot be recognized, the IP packager recursively searches for synthesizable source files, and adds files to the synthesis and simulation file groups.

To package a specific directory:

  1. Select the Package a Specified Directory option to open the associated wizard, as shown in the following figure.

  2. Make your selections from the following options:
    The location of the IP.
    Important: If you are using Vivado High Level Synthesis (HLS), you need to specify the directory in which the HDL sources are located.
    Package as a library core
    The checkbox defines the IP as a library core, which is IP that is available in the IP repository, but is not visible in the IP catalog.
    Important: Use the Package as a library core for IP that is not to be used as a standalone IP. This option lets you reference the IP from the IP Repository, but does not make the IP visible in the IP catalog.
  3. Click Next.
  4. In the Edit in IP Packager Project Name page, set the following information:
    Project name
    Name of the project created with the generated IP definition.
    Project location
    Directory where the design sources exist and the Edit IP packager project is located.
  5. Click Next. The New IP Creation page summarizes the information that the Create and Package New IP wizard heuristically gathers about the design.
  6. Click Finish to complete packaging, and open the Edit IP packager project. See Packaging IP, for more information.