Intel® Quartus® Prime Pro Edition User Guide: Scripting

ID 683432
Date 6/20/2022
Public

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

Document Table of Contents

3.1.33.22. set_clock_uncertainty (::quartus::sdc)

The following table displays information for the set_clock_uncertainty Tcl command:

Tcl Package and Version

Belongs to ::quartus::sdc

Syntax set_clock_uncertainty [-h | -help] [-long_help] [-add] [-enable_same_physical_edge] [-fall_from <fall_from_clock> ] [-fall_to <fall_to_clock> ] [-from <from_clock> ] [-hold] [-rise_from <rise_from_clock> ] [-rise_to <rise_to_clock> ] [-setup] [-to <to_clock> ] <uncertainty>
Arguments -h | -help Short help
-long_help Long help with examples and possible return values
-add Specifies that this assignment is an addition to the clock uncertainty derived by derive_clock_uncertainty call
-enable_same_physical_edge Enable setting uncertainty value for same physical clock edge
-fall_from <fall_from_clock> Valid destinations (string patterns are matched using Tcl string matching)
-fall_to <fall_to_clock> Valid destinations (string patterns are matched using Tcl string matching)
-from <from_clock> Valid destinations (string patterns are matched using Tcl string matching)
-hold Only apply the uncertainty value to hold and removal checks
-rise_from <rise_from_clock> Valid destinations (string patterns are matched using Tcl string matching)
-rise_to <rise_to_clock> Valid destinations (string patterns are matched using Tcl string matching)
-setup Only apply the uncertainty value to setup and recovery checks
-to <to_clock> Valid destinations (string patterns are matched using Tcl string matching)
<uncertainty> Uncertainty
Description
Specifies clock uncertainty or skew for clocks for
clock-to-clock transfers. You can specify uncertainty
separately for setup and hold, and you can specify
separate rising and falling clock transitions. If you omit 
to specify -setup or -hold, the uncertainty value will be
applied to both analysis types. Similarly, if you omit to
specify rising or falling clock transitions, the uncertainty
value will be applied to both transitions.
The setup uncertainty is subtracted from the data required
time for each applicable path, and the hold
uncertainty is added to the data required time for
each applicable path.

Intel Quartus Prime software computes clock uncertainty for every clock
transfer. For particular transfers, you can use the set_clock_uncertainty
assignment to override the automatically derived value, or you can
specify the -add option to add to the automatically derived value.
Note that the -add option is only relative to the automatically derived
value. If multiple set_clock_uncertainty assignments apply to the same
clock transfer, the later value overrides the earlier ones,
regardless of whether the -add option was used.

Note: The Timing Analyzer does not apply
clock uncertainty to transfers involving the same
physical launch and latch edge (that is, the latch and
launch edges are the same edge of a clock source and
occur at the same time) by default. Such transfers 
typically occur in hold analysis, but may also occur in 
setup analysis with a multicycle value of 0. You can 
use the -enable_same_physical_edge option to override this
behavior.

The values for -from, -to, and similar options are
either collections or a Tcl list of wildcards used to
create collections of appropriate types. The values
used must follow standard Tcl or Timing Analyzer-extension
substitution rules. See the help for
use_timing_analyzer_style_escaping for details.
Example Usage
set_clock_uncertainty -setup -rise_from clk1 -fall_to clk2 200ps
Return Value Code Name Code String Return
TCL_OK 0 INFO: Operation successful