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_instance_assignment (::quartus::project)

The following table displays information for the set_instance_assignment Tcl command:

Tcl Package and Version

Belongs to ::quartus::project

Syntax set_instance_assignment [-h | -help] [-long_help] [-comment <comment> ] [-disable] [-entity <entity_name> ] [-fall] [-from <source> ] -name <name> [-remove] [-rise] [-section_id <section id> ] [-tag <data> ] [-to <destination> ] [ <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
-from <source> Source of assignment
-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
-to <destination> Destination of assignment
<value> Assignment value
Sets or removes an instance 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:

1) export_assignments
2) project_close (unless "-dont_export_assignments" is specified)

These two Tcl commands reside in the ::quartus::project Tcl 
package. You must save assignment changes before you run 
Quartus Prime command-line executables. Note, however, that 
the Tcl commands "execute_flow" and "execute_module" (part 
of the ::quartus::flow Tcl package) automatically 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.
Example Usage
## Specify a TSU_REQUIREMENT of 2ns from mypin to any register
set_instance_assignment -from "mypin" -to * -name TSU_REQUIREMENT 2ns

## Remove the TSU_REQUIREMENT from mypin to all registers
set_instance_assignment -from "mypin" -to * -name TSU_REQUIREMENT -remove

## Specify the entity to which the assignment is added, 
## use the -entity option
## This is needed if the top-level entity name is other than
## that of the project name
## The following command generates a top_level entity
set_instance_assignment -from "mypin" -to * -entity top_level -name TSU_REQUIREMENT 2ns
Return Value Code Name Code String Return
TCL_OK 0 INFO: Operation successful
TCL_OK 0 WARNING: Ignored assignment: <string>. The assignment is no longer supported.
TCL_ERROR 1 ERROR: Assignment is not an instance assignment: <string> -- it is a global assignment. Specify an instance assignment name or use the global assignment commands.
TCL_ERROR 1 ERROR: Can't find file(s) associated with a