Example – Altera Quartus II Scripting User Manual
Page 317

Chapter 3: Tcl Packages & Commands
3–187
project
© July 2013
Altera Corporation
Quartus II Scripting Reference Manual
This command sets a multicycle assignment from every member of "group_a" to every member of
"group_b". Quartus®II timing analysis is optimized to use assignment groups in handling timing
constraints.
To disable assignment group assignments for the entire group, use the "-disable" option, for example:
assignment_group "group_a" -disable
To disable a particular assignment group assignment, use the "-disable" option with the "-add_member" or
"-add_exception" options, for example:
assignment_group "group_a" -add_member "m1" -disable
assignment_group "group_a" -add_exception "e1" -disable
Assignments created or modified by using this Tcl command are not saved to the Quartus II Settings File
(.qsf) unless you explicitly call one of the following two Tcl commands:
■
export_assignments
■
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®II 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.
Example
# Make timing cut assignment from nodes starting
# with "r" except those starting with "r|s|"
# and except those starting with "r|t|"
# to nodes "t1", "t2", and "t3"
assignment_group "tg1" -add_member "r*" -add_exception "r|s|*"
assignment_group "tg1" -add_exception "r|t|*"
assignment_group "tg2" -add_member [list "t1" "t2" "t3"]
set_timing_cut_assignment -from "group_a" -to "group_b" 2
# Remove the "t1" from a particular assignment group named "tg2"
assignment_group "tg2" -remove_member "t1"
# Display the members of a particular assignment group named "tg1"
foreach_in_collection member [assignment_group "tg1" -get_members] {
# Print the name of the member
puts $member
}
# Display the exceptions to a particular assignment group named "tg1"
foreach_in_collection exception [assignment_group "tg1" -get_exceptions] \
{
# Print the name of the exception
puts $exception
}