Define a synthesis or implementation run for the current project.
Syntax
create_run [‑constrset <arg>] [‑parent_run <arg>] [‑part <arg>] ‑flow <arg>
[‑strategy <arg>] [‑report_strategy <arg>] [‑pr_config <arg>]
[‑dfx_mode <arg>] [‑rm_instance <arg>] [‑quiet] [‑verbose] <name>
Returns
Run object
Usage
| Name | Description |
|---|---|
[-constrset]
|
Constraint fileset to use |
[-parent_run]
|
Synthesis run to link to new implementation run |
[-part]
|
Target part |
-flow
|
Flow name |
[-strategy]
|
Strategy to apply to the run |
[-report_strategy]
|
Report strategy to apply to the run |
[-pr_config]
|
partition configuration to apply to the run |
[-dfx_mode]
|
dynamic function exchange mode Default: STANDARD |
[-rm_instance]
|
reconfigurable module instance information. Format <partition cell>:<reconfigurable module> |
[-quiet]
|
Ignore command errors |
[-verbose]
|
Suspend message limits during command execution |
<name>
|
Name for new run |
Categories
Description
Defines a synthesis or implementation run. The attributes of the run can be configured with the use of the set_property command.
Arguments
-constrset <arg> - (Optional) The constraint set to use for the synthesis or implementation run.
-parent_run <arg> - The run that defines the netlist for the current run. For
netlist-based projects the -parent_run argument is not required.
For an RTL sources project, the parent_run must be specified for implementation
runs, but is not required for synthesis runs. For the Dynamic Function eXchange
(DFX) flow, the -parent_run describes the synthesis run, an
implementation run, or the PR configuration as specified by the
-pr_config option.
-part <partName> - (Optional) The AMD part to be used for the run. If the
-part option is not specified, the default part defined for the
project is assigned as the part to use.
-flow <arg> - (Required) The tool flow and release version for the synthesis
tool. For example,Vivado Synthesis 2026 or the Vivado Implementation 2026 tool.
-strategy <arg> - (Optional) The strategy to employ for the synthesis or implementation run. There are many different strategies to choose from within the tool, including custom strategies you can define. Refer to the appropriate user guide for a discussion of the available synthesis and implementation strategies. If the strategy argument is not specified, "Synthesis Defaults" or "Implementation Defaults" will be used as appropriate.
-report_strategy <arg> - (Optional) Specifies a Report Strategy that defines a collection of report objects to run at different stages of the design flow. Report objects are created with the create_report_config command. Report strategies are defined in the Settings dialog box of the Vivado™ IDE.
-pr_config <arg> - (Optional) Specifies a partition configuration to apply to the new run. Partition configurations are defined by the create_pr_configuration command. Refer to the Vivado Design Suite User Guide: Dynamic Function eXchange (UG909) for more information.
-dfx_mode <arg> - (Optional) Specifies the Dynamic Function
eXchange mode. The allowed calues are Standard, Abtract Shell, or Both mode. - Standard: mode takes full design into consideration while implementing the reconfigurable modules. Standard mode is the default.
- Abtract Shell: mode uses the shell for a single reconfigurable partition to implement a single reconfigurable module. Abstract Shell mode saves implementation time compared to Standard mode.
- Both: mode allows users to leverage the strengths of both Standard and Abstract Shell DFX flows within a single project, providing greater flexibility and efficiency in partial reconfiguration design flows.
-rm_instance <arg> - (Optional) Specifies the reconfigurable
module instance information. This information is needed when a run is in Abstract
Shell mode. It specifies which reconfigurable module instance are implemented by the
run. The format is <partition cell>:<reconfigurable
module>
-quiet - (Optional) Execute the command quietly, returning no messages from the command. The command also returns TCL_OK regardless of any errors encountered during execution.
-verbose - (Optional) Temporarily override any message limits and return all messages from this command.
set_msg_config command.
<name> - (Required) The name of the synthesis or implementation run to be created.
Examples
The following example creates a run named synth_1 referencing the Vivado synthesis tool flow:
create_run -flow {Vivado Synthesis 2013} synth_1
-parent_run
argument is not required.The following example creates an implementation run based on the
Vivado Implementation 2026 tool flow and attaches it to the synth_1
synthesis run previously created:
create_run impl_2 -parent_run synth_1 -flow {Vivado Implementation 2026}
-parent_run argument is required in this example because it is an implementation of synthesized RTL sources.