The incremental run requires a reference checkpoint to be read in to start the
incremental place and route. The
<reference>.dcp command initiates the incremental flow and must be
issued before place_design.
The reference design is typically a fully routed checkpoint from a previous iteration or a different variation of the incremental design. If using a different variation or a design, it is important that the hierarchy names from the reference design match the incremental design.
The reference design must match the device and it is recommended to match the tool version but not a strict requirement.
The incremental design is the updated design that is to be run through the
implementation tools. It can include RTL changes, netlist changes, or both but these
changes should be typically < 5%. Prior to issuing the
read_checkpoint -incremental command, there is no knowledge that the
incremental implementation flow is being used. Therefore it is important to not
introduce significant netlist changes by changing
options when compared with the reference design.
Constraint changes are allowed but general tightening of constraints will significantly impact placement and routing and is generally best added outside of the incremental flow.