18.104.22.168. Timing Exception Precedence
- Set False Path (set_false_path) is the first priority. False paths and clock groups have identical priority, except when you use the -latency_insensitive or -no_synchronizer options with a false path exception. With either option, the false path has priority over a clock group.
- Set Clock Groups (set_clock_groups) is the second priority.
- Set Minimum Delay (set_min_delay) and Set Maximum Delay (set_max_delay) are the third priority.
- Set Multicycle Path (set_multicycle_path) is the fourth priority.
- -from <node> is the first priority.
- -to <node> is the second priority.
- -thru <node> is the third priority.
- -from <clock> is the fourth priority.
- -to <clock> is the fifth priority.
- set_max_delay 1 -from x -to y
- set_max_delay 2 -from x
- set_max_delay 3 -to y
The first exception has higher priority than either of the other two, since the first exception specifies a -from (while #3 doesn't) and specifies a -to (while #2 doesn't). In the absence of the first exception, the second exception has higher priority than the third, since the second exception specifies a -from, which the third does not. Finally, the remaining order of precedence for additional exceptions is order-dependent, such that the assignments most recently created overwrite, or partially overwrite, earlier assignments.
- The set_net_delay exception applies regardless of the existence of a set_false_path exception, or set_clock_groups exception, or other path-based constraint or exception. It is a net-based exception, and net-based and path-based exceptions are applied independently of each other.
- The set_max_skew exception applies on paths cut by an asynchronous clock group, and regardless of any set_false_path exception. Exclusive clock groups override max skew exceptions, because paths between exclusive clocks are entirely inactive and should not be analyzed for timing or skew requirements. This precedence allows you to define more targeted constraints on asynchronous CDC bus transfers.
- The set_data_delay exception specifies a maximum datapath delay exception for a given path. Exclusive clock groups override data delay exceptions, because paths between exclusive clocks are entirely inactive and should not be analyzed for timing or data delay requirements. Asynchronous clock groups do not override data delay exceptions. False path exceptions override data delay exceptions in the Intel Quartus Prime Pro software version 21.2 and earlier. Beginning in version 21.3, false path exceptions do not override data delay exceptions. This change in precedence allows you to write more targeted constraints on asynchronous CDC bus transfers.