set_clock_latency (::quartus::project)

The following table displays information for the set_clock_latency Tcl command:

Tcl Package and Version

Belongs to ::quartus::project 5.0

Syntax set_clock_latency [-h | -help] [-long_help] [-early] [-fall] [-late] [-rise] [-tag <data> ] -to <to>
 
[ <value> ]
Arguments -h | -help Short help
-long_help Long help with examples and possible return values
-early Early clock latency
-fall Option applies to falling edge
-late Late clock latency
-rise Option applies to rising edge
-tag <data> Option to tag data to this assignment
-to <to> Destination clock name
<value> Input delay value after rise of reference clock
Description
Specifies the required early or late clock latency on the clock
or input assignment group as specified by the "-to" option. 
The Quartus Prime(R) timing analysis propagates this latency and 
checks it against the actual latency. For more information 
about assignment groups, type "assignment_group -h".

The "assignment_group" command replaces the deprecated
"timegroup" command in ::quartus::project, version 5.0.

If both "-early" and "-late" options are not used, then the
assignment is set for both early and late latency.

The <value> is the latency of the reference clock.
The format of <value> is "<numerical value><time unit>", 
for example, "7.55ns". 

The following table shows the available time units:

Time Unit                  Description
----------------------     ------------------
s                          second(s)
ms                         millisecond(s)
us                         microsecond(s)
ns                         nanosecond(s)
ps                         picosecond(s)
fs                         femtosecond(s)
Hz                         Hertz
KHz                        KiloHertz
MHz                        MegaHertz
GHz                        GigaHertz

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.
Example Usage
## Set early clock latency to Clk0
set_clock_latency 2ns -to Clk0 -early

## Set early and late clock latency to Clk*
set_clock_latency 2ns -to Clk*

## Use assignment_group to set clock latency.
assignment_group "clock_group" -add_member "Clk*" -add_exception "Clk0"
set_clock_latency 2ns -to "clock_group" -early

## Commit the assignments to .qsf file.
export_assignments
Return Value Code Name Code String Return
TCL_OK 0 INFO: Operation successful
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: You must open a project before you can use this command.