execute_flow (::quartus::flow)
The following table displays information for the execute_flow Tcl command:
| Tcl Package and Version |
Belongs to ::quartus::flow 1.1 |
|||
| Syntax | execute_flow [-h | -help] [-long_help] [-analysis_and_elaboration] [-check_ios] [-check_netlist] [-compile] [-design_analysis] [-dni] [-dont_export_assignments] [-eco <value> ] [-export_database] [-finalize] [-flow_args <Tcl list of name value pairs args to pass to the flow> ] [-implement] [-import_database] [-incremental_compilation_export] [-incremental_compilation_import] [-ip_upgrade] [-quick_elaboration] [-signalprobe] [-simulation] | |||
| Arguments | -h | -help | Short help | ||
| -long_help | Long help with examples and possible return values | |||
| -analysis_and_elaboration | Option to run Analysis & Elaboration | |||
| -check_ios | Option to run I/O assignment analysis | |||
| -check_netlist | Option to run Check and Save Netlist | |||
| -compile | Option to run a full compilation | |||
| -design_analysis | Option to run a design analysis | |||
| -dni | Option to request flow be executed in DNI mode. | |||
| -dont_export_assignments | Option not to export assignments to file. By default, this command exports assignments before running command-line executables. | |||
| -eco <value> | Option to run a Fitter ECO compilation | |||
| -export_database | Option to export a version-compatible database | |||
| -finalize | Option to run algorithms to prepare design for programming. | |||
| -flow_args <Tcl list of name value pairs args to pass to the flow> | Option to specify flow args | |||
| -implement | Option to run compilation up to route stage and skipping all time intensive algorithms after. | |||
| -import_database | Option to import a version-compatible database | |||
| -incremental_compilation_export | Option to export a design partition into a Quartus Prime Exported Partition (QXP) file | |||
| -incremental_compilation_import | Option to import one or more Quartus Prime Exported Partition (QXP) files into the design partitions of the current project | |||
| -ip_upgrade | Option to run a ip upgrade | |||
| -quick_elaboration | Option to run Quick Elaboration | |||
| -signalprobe | Option to run a Signal Probe compilation | |||
| -simulation | Option to run simulation | |||
| Description |
Runs one or more of the command-line executables using one of the
predefined flows, such as "-compile" or "-signalprobe". You can run
only one flow at a time, so you must use only one option.
Some flows have limited device support or other limitations based on
the features used. See documentation for the features in question for
details.
The "-export_database" and "-import_database" options use the value of
the VER_COMPATIBLE_DB_DIR assignment for the version-compatible
database files directory, defaulting to "export_db".
The "-incremental_compilation_export" option uses the value of the
INCREMENTAL_COMPILATION_EXPORT_FILE global assignment for the path of
the Quartus Prime Exported Partition (QXP) file to be created. The value
of the INCREMENTAL_COMPILATION_EXPORT_PARTITION_NAME global assignment
should specify the name of the partition to be exported. The value of
the INCREMENTAL_COMPILATION_EXPORT_NETLIST_TYPE global assignment
(which can either have value POST_SYNTH or POST_FIT) determines
whether post-synthesis or post-fitting results should be
exported. Finally, the value of the
INCREMENTAL_COMPILATION_EXPORT_ROUTING global assignment specifies
whether routing should be exported when a post-fit netlist is
generated.
The "-incremental_compilation_import" option uses the following
partition assignments to determine the location of the QXP files, and
how importation should be performed, on a per-partition basis:
PARTITION_IMPORT_FILE
PARTITION_IMPORT_PROMOTE_ASSIGNMENTS
PARTITION_IMPORT_NEW_ASSIGNMENTS
PARTITION_IMPORT_EXISTING_ASSIGNMENTS
PARTITION_IMPORT_EXISTING_LOGICLOCK_REGIONS
All assignments are exported first automatically, as if you
called the "export_assignments" command first, unless the
-dont_export_assignments option is specified.
You must use the Tcl command "catch" to determine whether the
predefined flow ran successfully or not, as in the following example:
if {[catch {execute_flow -compile} result]} {
puts "\nResult: $result\n"
puts "ERROR: Compilation failed. See report files.\n"
} else {
puts "\nINFO: Compilation was successful.\n"
}
|
|||
| Example Usage |
# To run quartus_map, quartus_fit, quartus_sta, quartus_asm
# or other executables based on options. (Refer to "Using
# Compilation Flows," "Compiling Designs," and "Specifying
# Compiler Settings" in Quartus Prime online Help for more
# information.)
execute_flow -compile
# To determine if compilation was successful or not
# and print out a personalized message.
if {[catch {execute_flow -compile} result]} {
puts "\nResult: $result\n"
puts "ERROR: Compilation failed. See report files.\n"
} else {
puts "\nINFO: Compilation was successful.\n"
}
# To perform a full compilation
execute_flow -compile
# To perform a ip_upgrade with flow_args to specify variation_files
execute_flow -ip_upgrade -flow_args "variation_files=\"a.ip;b.ip\""
|
|||
| Return Value | Code Name | Code | String Return | |
| TCL_OK | 0 | INFO: Operation successful | ||
| TCL_ERROR | 1 | ERROR: Can't run multiple flows simultaneously. Wait for current flow to complete. | ||
| TCL_ERROR | 1 | ERROR: Flow doesn't exist: <string>. Make sure the specified flow exists. | ||
| TCL_ERROR | 1 | ERROR: The flow args are invalid. It should be a legal Tcl list. | ||
| TCL_ERROR | 1 | ERROR: Only one flow option is allowed. Only one flow can be run for a single command call. If multiple flows are required, use multiple commands. | ||
| TCL_ERROR | 1 | ERROR: Can't find active revision. Make sure there is an open, active revision name. Use the -revision option of project_open, project_new, or use set_current_revision. | ||
| TCL_ERROR | 1 | ERROR: No project is currently open. Open an existing project or create a new project. | ||
| TCL_ERROR | 1 | ERROR: Error(s) found while running an executable. See report file(s) for error message(s). Message log indicates which executable was run last. | ||
| TCL_ERROR | 1 | ERROR: Option -<string> is illegal in the Quartus Prime User Interface. Specify a different option or use a similar command from the Processing menu. | ||
| TCL_ERROR | 1 | ERROR: At least one option is required. Specify at least one option. | ||