We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 66533

2015.3 - Simulation - What files are needed to simulate Vivado IP in standalone Third party simulator?


I am having issues simulating my IP in a supported Third Party Simulator.

How do I get the files needed for simulation and create a successful simulation script from within a Managed IP Project?


In some use cases, users create large numbers of IP within a single Managed IP Project. They then test the IP via a 3rd Party Simulation tool, (for example QuestaSim) before they start designing in a Vivado Project.

Below are a few approaches to finding the required files for simulating the IP(s).


When you create an IP customization (XCI), the Vivado IDE creates a directory whose name is the same as the IP that contains the IP definition and output products. 

Within this directory, there is an ip_user_files directory that stores the IP support files. Inside the ip_user_files folder there is a folder named sim_scripts.

By default, scripts for all supported simulators for the selected OS are created in this folder for each IP present. 

To control scripts generation, see the General IP Settings:

For Microsoft Windows, this includes:

  • Vivado Simulator
  • Mentor Graphics ModelSim
  • Mentor Graphics Questa

For Linux, this includes the above simulators as well as:

  • Synopsys Verilog compiler simulator (VCS)
  • Cadence incisive enterprise simulator (IES)

2) Use the following command:

report_compile_order -used_in simulation

This will create a list of files needed to simulate ALL of the IP in the Managed IP Project and include the location of the file. It will also list what libraries are needed for each specific IP.

Note: The output products need to be generated for this Tcl command to run properly.

3) Use the following commands:

set_property target_simulator <simulator_name> [current_project]
launch_simulation -scripts_only -of_objects [get_files <ip_name>.xci]
This will create a simulation script of the specified IP for the specified target simulator.

This can only be used for one IP at a time. i.e. You cannot use *.xci in get_files.

4) Use the following command:

export_simulation -directory <output_directory> -simulator <simulator_name> -of_objects [get_files <ip_name>.xci]
This will create a simulation script of the specified IP in the specified output_directory for the specified target simulator.

Note: This can be used for ALL IP in the Managed IP Project. i.e. you can use *.xci in get_files. It will however make a separate script for each IP.

AR# 66533
Date Created 02/03/2016
Last Updated 03/04/2016
Status Active
Type General Article
  • Vivado Design Suite - 2015.3
  • Vivado Design Suite - 2015.4
  • Vivado Design Suite - 2015.4.1