Changing compile_simlib Defaults - 2025.2 English - UG900

Vivado Design Suite User Guide: Logic Simulation (UG900)

Document ID
UG900
Release Date
2025-12-17
Version
2025.2 English

The config_compile_simlib Tcl command lets you configure third-party simulator options for use by the compile_simlib command.

Tcl Command

config_compile_simlib [-cfgopt <arg>] [-simulator <arg>] [-reset] [-quiet] [-verbose]

Where:

  • -cfgopt <arg>: Configuration option in form of <simulator>:<language>:<library>:<options>.
  • -simulator: The name of the simulator whose configuration you want.
  • -reset: Lets you reset all previous configurations for the specified simulator.
  • -quiet: Executes the command without any display to the Tcl Console.
  • -verbose: Executes the command with all command output to the Tcl Console.

For example, to change the option used to compile the UNISIM VHDL library, type:

config_compile_simlib -cfgopt {modelsim.vhdl.unisim:-source -93}
Important: The compile_simlib command compiles AMD primitives and Simulation models of AMD Vivado IP. AMD Vivado IP cores are delivered as an output product when you generate an IP. The IP cores are included in the pre-compiled libraries created using compile_simlib.

When you run the compile_simlib command, IPs are compiled from the installed catalog of Vivado IDE. When using a patch, you can compile the IPs from the patch repository in following two ways:

  1. Compiling Patched IP Repository Using XILINX_PATH
  2. Compiling Patched IP Repository Using XILINX_VIVADO

Compiling Patched IP Repository Using XILINX_PATH

Use the following command to compile patched IPs using the XILINX_PATH environment variable:
setenv XILINX_PATH <repo-path> [:<repo-path>:....:<repo_path>]

Assume that the patched IP repository is at the following locations:

'/repo/patch/AR012345/vivado/data/ip/xilinx/<ips>'
'/repo/patch/AR06789/vivado/data/ip/xilinx/<ips>'

To compile the default installed IP repository and the repositories that are pointed to by XILINX_PATH, set the XILINX_PATH environment (env) variable to point to these patched IP repositories and run compile_simlib. compile_simlib processes the IP library sources from the default installed repository and the ones set by XILINX_PATH.

% setenv XILINX_PATH /repo/path/AR012345/vivado:/repo/path/AR06789/vivado
% compile_simlib -simulator <simulator> -directory <new_clibs_dir>

Compiling Patched IP Repository Using XILINX_VIVADO

Use the following command to compile patched IPs using the XILINX_VIVADO environment variable:
setenv XILINX_VIVADO <Vivado-Install-Path>

Assume that the patched IP repositories are at the following locations where you set XILINX_VIVADO:

'$XILINX_VIVADO/patches/AR012345/vivado/data/ip/xilinx/<ips>'
'$XILINX_VIVADO/patches/AR06789/vivado/data/ip/xilinx/<ips>'

To compile the default installed IP repository and the repositories that are pointed to by the above locations, set the XILINX_PATH env variable to point to Vivado install path and run compile_simlib. compile_simlib processes the IP library sources from the default Vivado installed repository and the one set by XILINX_VIVADO.

% setenv XILINX_PATH <Vivado-Install-Path 
% compile_simlib -simulator <simulator> -directory <clibs_dir>
Note: The <clibs_dir> can point to a new directory or to the existing directory where you compiled the library earlier.