Intel® Quartus® Prime Pro Edition User Guide: Scripting

ID 683432
Date 10/04/2021

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

Document Table of Contents
Give Feedback timegroup (::quartus::project)

The following table displays information for the timegroup Tcl command:

Tcl Package and Version

Belongs to ::quartus::project

Syntax timegroup [-h | -help] [-long_help] [-add_exception <name> ] [-add_member <name> ] [-comment <comment> ] [-disable] [-get_exceptions] [-get_members] [-overwrite] [-remove] [-remove_exception <name> ] [-remove_member <name> ] <group_name>
Arguments -h | -help Short help
-long_help Long help with examples and possible return values
-add_exception <name> Tcl list of exception names to add
-add_member <name> Tcl list of member names to add
-comment <comment> Comment
-disable Option to disable assignment
-get_exceptions Option to get collection of timegroup exceptions
-get_members Option to get collection of timegroup members
-overwrite Option to overwrite existing timegroup with the same group name
-remove Option to remove timegroup
-remove_exception <name> Tcl list of exception names to remove
-remove_member <name> Tcl list of member names to remove
<group_name> Group name

Adds, removes, gets members of, or gets exceptions to a timegroup. A timegroup is a custom group of registers and pins. You can use the "-add_member" option to specify register or pin names you want to include in the timegroup. You can use the "-add_exception" option to specify names you want to exclude from the timegroup. You can specify the names using wildcards, that is, using "?" or "*". For example, to add all registers and pins that start with a "b" except those that start with "b|c|" to a particular timegroup named "group_b", type: timegroup "group_b" -add_member "b*" -add_exception "b|c|*" To remove members or exceptions from a timegroup, use the "-remove_member" or "-remove_exception" options respectively. The "-get_members" option returns a collection of members in the timegroup. The "-get_exceptions" option returns a collection of exceptions to the timegroup. To access each element of the collection, use the Tcl command "foreach_in_collection". To see example usage, type "timegroup -long_help" or "foreach_in_collection -long_help". Specifying registers and pins in terms of a timegroup allows you to set timing constraints easily. For example, to make a multicycle assignment from nodes "a1" and "a2" to nodes "b1", "b2", and "b3", type the following: timegroup "group_a" -add_member [list "a1" "a2"] timegroup "group_b" -add_member [list "b1" "b2" "b3"] set_multicycle_assignment -from "group_a" -to "group_b" 2 This command sets a multicycle assignment from every member of "group_a" to every member of "group_b". Quartus Prime timing analysis is optimized to use timegroups in handling timing constraints. To disable timegroup assignments for the entire group, use the "-disable" option, for example: timegroup "group_a" -disable To disable a particular timegroup assignment, use the "-disable" option with the "-add_member" or "-add_exception" options, for example: timegroup "group_a" -add_member "m1" -disable timegroup "group_a" -add_exception "e1" -disable 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