Intel® Quartus® Prime Pro Edition User Guide: Scripting

ID 683432
Date 12/13/2021

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents set_global_assignment (::quartus::project)

The following table displays information for the set_global_assignment Tcl command:

Tcl Package and Version

Belongs to ::quartus::project

Syntax set_global_assignment [-h | -help] [-long_help] [-comment <comment> ] [-disable] [-entity <entity_name> ] [-fall] -name <name> [-remove] [-rise] [-section_id <section id> ] [-tag <data> ] [ <value> ]
Arguments -h | -help Short help
-long_help Long help with examples and possible return values
-comment <comment> Comment
-disable Option to disable assignment
-entity <entity_name> Entity to which to add assignment
-fall Option applies to falling edge
-name <name> Assignment name
-remove Option to remove assignment
-rise Option applies to rising edge
-section_id <section id> Section id
-tag <data> Option to tag data to this assignment
<value> Assignment value
Sets or removes a global assignment.

Assignments created or modified by using this Tcl command are not
saved to the Quartus Prime Settings File (.qsf) unless you explicitly
call one of the following two Tcl commands (from the
::quartus::project Tcl package):

1) export_assignments 
2) project_close (unless -dont_export_assignments is specified as an
argument to project_close)

You must save assignment changes before you run Quartus Prime
command-line executables. Note, however, that the Tcl commands
execute_flow and execute_module (from the ::quartus::flow Tcl
package) call "export_assignments" before they run
command-line executables.

For entity-specific assignments, use the -entity option to force the
assignment to specified entity. If the -entity option is not
specified, the value for the FOCUS_ENTITY_NAME assignment is used. If
the FOCUS_ENTITY_NAME value is not found, the revision name is used.

If the Quartus Prime Settings File contains a USER_LIBRARIES assignment
and you call set_global_assignment to set a SEARCH_PATH or
USER_LIBRARIES assignment, the existing USER_LIBRARIES assignment
expands into one or more SEARCH_PATH assignments.

Note that values that begin with a dash ("-") should be enclosed in a
backslash followed by a quote. In the following example, -02 is
enclosed by \" at the beginning and the end.

set_global_assignment -name ARM_CPP_COMMAND_LINE \"-O2\"
Example Usage
## Specify Stratix as the family to use when compiling
set_global_assignment -name FAMILY Stratix

## If the family name has empty spaces, use quotes
set_global_assignment -name FAMILY "Stratix GX"

## or remove any empty space
set_global_assignment -name FAMILY StratixGX
Return Value Code Name Code String Return
TCL_OK 0 INFO: Operation successful
TCL_OK 0 INFO: Assigment <string> is not supported in this edition of the Quartus Prime software.
TCL_OK 0 WARNING: Ignored assignment: <string>. The assignment is no longer supported.
TCL_ERROR 1 ERROR: Assignment is not a global assignment: <string> -- it is an instance assignment. Specify a global assignment name or use the instance assignment commands.
TCL_ERROR 1 ERROR: Can't find file(s) associated with assignment. Specify a different assignment name.
TCL_ERROR 1 ERROR: Can't find section information for assignment. Specify a different assignment name.
TCL_ERROR 1 ERROR: Can't find active revision name. Make sure there is an open, active revision name.
TCL_ERROR 1 ERROR: Entity does not exist or uses illegal name characters: <string>. Specify a legal entity name.
TCL_ERROR 1 ERROR: The assignment <