When you omit -datapath_only, a Maximum Delay constraint does not change
the minimum requirement on that path. The hold (or removal) check stays at its
default.
Note: Using
-datapath_only with set_max_delay ignores
the hold requirement on those paths (the tool generates internal set_false_path
-hold constraints).Similarly, setting a Minimum Delay constraint does not change the default setup (or recovery) check.
If a path requires only a max delay, combine set_max_delay with
set_false_path, for example:
set_max_delay 5 -from [get_pins FD1/C] -to [get_pins FD2/D]
set_false_path -hold -from [get_pins FD1/C] -to [get_pins FD2/D]
This sets a 5 ns setup requirement from FD1/C to FD2/D.
The set_false_path removes the minimum requirement.