Visible to Intel only — GUID: reference_TCL_tcl_pkg_sta_ver_1_0_cmd_update_timing_netlist
Ixiasoft
Visible to Intel only — GUID: reference_TCL_tcl_pkg_sta_ver_1_0_cmd_update_timing_netlist
Ixiasoft
3.1.29.80. update_timing_netlist (::quartus::sta)
The following table displays information for the update_timing_netlist Tcl command:
Tcl Package and Version | Belongs to ::quartus::sta |
||
Syntax | update_timing_netlist [-h | -help] [-long_help] [-dynamic_borrow] [-full] [-no_borrow] [-recompute_borrow] | ||
Arguments | -h | -help | Short help | |
-long_help | Long help with examples and possible return values | ||
-dynamic_borrow | Use time borrowing values that are correct for the current clock constraints | ||
-full | Forces creation of an updated timing netlist to ensure correctness | ||
-no_borrow | Turn off all time borrowing | ||
-recompute_borrow | Recompute optimal time borrowing values | ||
Description | Updates and applies SDC commands to the timing netlist. The update_timing_netlist command expands and validates generated clocks, warns about sources in the design that require clock settings, identifies and removes combinational loops, and warns about undefined input/output delays. Most Tcl commands (e.g., report_timing) automatically update the timing netlist when necessary. You can use the update_timing_netlist command explicitly to control when updating occurs, or to force a full update using the -full option. The update_timing_netlist command can also be used to control time borrowing behavior. Time borrowing is a technique whereby certain flip-flops in certain device families are allowed to have signals that arrive late (thus improving upstream slack), at the expense of downstream slack. The amount of time borrowing allowed at each flip-flop is hardware-dependent. By default, optimal time borrowing values are computed at the end of the Fitter (Finalize) stage (if enabled by your compilation settings), and these are the values you will see in the timing reports. To turn off time borrowing support, use the -no_borrow option. This is not recommended, as it may result in significantly pessimistic timing results. If you have changed clock constraints after compiling your design, pre-computed optimal time borrowing values may no longer be valid. Time borrowing will be turned off for the changed clocks, resulting in pessimistic timing. To get optimal results once again, run update_timing_netlist with the -recompute_borrow option. This may take significant time on large designs, but the results will be saved and available the next time you run update_timing_netlist without any time borrowing options. The time borrowing optimization algorithm has a few limitation - for example, it never borrows any time on sources of cross-clock transfers, sources of paths with set_max_delay or set_max_skew constraints, or in any clock domain containing at least one level-sensitive latch. If your design is correctly constrained, you may overcome these limitations and get better timing results with the -dynamic_borrow option, which calculates time borrowing amounts based on your actual clock constraints (rather than optimizing for highest FMax within each clock domain). Note that -dynamic_borrowing is not recommended for overconstrained designs. |
||
Example Usage | |
||
Return Value | Code Name | Code | String Return |
TCL_OK | 0 | INFO: Operation successful | |
TCL_ERROR | 1 | ERROR: Timing netlist does not exist. Use create_timing_netlist to |