Package/Export - Package/Export - 2026.1 English - UG1399

Vitis High-Level Synthesis User Guide (UG1399)

Document ID
UG1399
Release Date
2026-06-23
Version
2026.1 English

Description

Package / Export (package.*, vivado.* / config_export)

Controls IP packaging and export format. All Vivado implementation options are also part of config_export (via -vivado_* flags); the config file uses top-level vivado.* keys.

Syntax

Table 1. Output Settings Table
Option Config File Tcl Default Description
output.file package.output.file=<path> config_export -output <path> Output path for the exported IP or XO file.
output.format package.output.format=[ip_catalog|xo|syn_dcp|sysgen|rtl] config_export -format [ip_catalog|xo|syn_dcp|sysgen|rtl] ip_catalog Export format.
output.xo_type package.output.xo_type=<type> config_export -xo_type <type> rtl XO output type (relevant when format=xo).
output.flow vivado.flow=[syn|impl] config_export -flow [syn|impl] none Vivado run to perform after export: none = no Vivado run, syn = synthesis only, impl = full implementation.
cosim_trace_generation syn.rtl.cosim_trace_generation=true config_export -cosim_trace_generation 0 bool | Generate simulation traces during co-simulation for debugging. Note: config file key is under syn.rtl.*.
Table 2. IP Metadata Table
Option Config File Tcl Description
ip.description package.ip.description=<text> config_export -description <text> IP core description string.
ip.display_name package.ip.display_name=<name> config_export -display_name <name> Display name for the IP in the IP catalog.
ip.library package.ip.library=<name> config_export -library <name> IP library name (used in IP catalog).
ip.name package.ip.name=<name> config_export -ipname <name> IP core name. Note: Tcl option is -ipname, not -name.
ip.taxonomy package.ip.taxonomy=<path> config_export -taxonomy <path> IP taxonomy path (For example: /UserIP).
ip.vendor package.ip.vendor=<name> config_export -vendor <name> IP vendor name.
ip.version package.ip.version=<ver> config_export -version <ver> IP version string (For example: 1.0).
ip.xdc_file package.ip.xdc_file=<path> config_export -ip_xdc_file <path> XDC constraints file to include in IP package.
ip.xdc_ooc_file package.ip.xdc_ooc_file=<path> config_export -ip_xdc_ooc_file <path> Out-of-context XDC constraints file.
Table 3. Vivado Options Table
Option Config File Tcl Default Description
vivado.clock vivado.clock=<N> config_export -vivado_clock <N> Target clock period in ns for Vivado implementation.
vivado.impl_strategy vivado.impl_strategy=<s> config_export -vivado_impl_strategy <s> default Vivado implementation strategy name.
vivado.max_timing_paths vivado.max_timing_paths=<N> config_export -vivado_max_timing_paths <N> 10 Number of timing paths to report.
vivado.optimization_level vivado.optimization_level=[0|1|2|3] config_export -vivado_optimization_level [0|1|2|3] 0 Vivado optimization aggressiveness level.
vivado.pblock vivado.pblock=<constraint> config_export -vivado_pblock <s> Pblock constraint string for floorplanning.
vivado.phys_opt vivado.phys_opt=[none|place|route|all] config_export -vivado_phys_opt [none|place|route|all] none Enable physical optimization passes.
vivado.report_level vivado.report_level=[0|1|2] config_export -vivado_report_level [0|1|2] 2 Report verbosity level.
vivado.rtl vivado.rtl=[verilog|vhdl] config_export -rtl [verilog|vhdl] verilog RTL language for generated output.
vivado.synth_design_args vivado.synth_design_args=<args config_export -vivado_synth_design_args <args> -directive sdx_optimization_effort_high Additional arguments passed to Vivado synth_design command.
vivado.synth_strategy vivado.synth_strategy=<s> config_export -vivado_synth_strategy <s> default Vivado synthesis strategy name.

Tcl config_export Full Syntax


tcl
config_export \
  -format ip_catalog \
  -output ./myip.zip \
  -flow impl \
  -rtl verilog \
  -vendor xilinx.com \
  -library user \
  -ipname mykernel \
  -version 1.0 \
  -display_name "My Kernel" \
  -description "HLS kernel for matrix multiply" \
  -taxonomy /UserIP \
  -ip_xdc_file ./constraints.xdc \
  -ip_xdc_ooc_file ./ooc.xdc \
  -vivado_clock 4 \
  -vivado_synth_strategy Flow_PerfOptimized_high \
  -vivado_impl_strategy Performance_ExplorePostRoutePhysOpt \
  -vivado_optimization_level 2 \
  -vivado_phys_opt all \
  -vivado_report_level 1 \
  -vivado_max_timing_paths 10 \
  -vivado_synth_design_args {-flatten_hierarchy rebuilt}