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. |