You can adjust the incremental implementation flow behavior using
directives. The tools follow these directives when the incremental implementation
algorithms are used on the implementation run. When flow reverts to the default
algorithms, the tools follow the directives specified with the place_design
, phys_opt_design
, and
route_design
commands.
Following are the directives available for use with the incremental
implementation flow:
- RuntimeOptimized
- Targets the WNS from the reference checkpoint. This helps maintain consistency with the reference checkpoint and improves placer and router run time by at least 2x. If the reference checkpoint does not close timing, this directive does not attempt to close timing. This directive is the default.
- TimingClosure
- Targets WNS = 0.000 ns. Use this directive when the reference run is very close to meeting timing, and you are willing to trade off consistency in results and runtime with more effort to try to meet timing. This mode can improve WNS by up to 250 ps on difficult designs. Use this directive with QoR Suggestions for the best chance at closing timing. There is usually a runtime hit with this directive.
- Quick
- This option is intended for designs that easily meet timing with greater than 99% reuse. Typically, this option is used for ASIC emulation and prototype designs with minor changes that do not impact timing.
Following is an example command for Project Mode:
set_property -name INCREMENTAL_CHECKPOINT.MORE_OPTIONS -value {-directive TimingClosure} -object [get_runs <runName>]
Following is an example command for Non-Project Mode:
read_checkpoint -incremental -directive TimingClosure <reference>.dcp
Note: The
RuntimeOptimized
directive replaces the Default
mapping directive, and the TimingClosure
directive replaces the Explore
mapping directive from previous Vivado Design Suite releases.