Report Incremental Reuse - 2023.2 English

Vivado Design Suite User Guide: Implementation (UG904)

Document ID
UG904
Release Date
2023-11-01
Version
2023.2 English

The report_incremental_reuse command is available at any stage of the flow after read_checkpoint -incremental has been used. The report allows the user to compare the following between the reference and current design runs:

  • Examine cell, net, I/O and pin reuse in the current run
  • Runtimes
  • Timing WNS at each stage of the flow
  • Tool options
  • Tool versions
  • iphys_opt_design replaying optimization
  • QoR suggestions applied with the incremental flow

By examining the cell reuse and the other factors mentioned above, a user can determine the effectiveness of the incremental. Where the flow is judged ineffective, a user would typically update the checkpoint to a newer version of the design or adjust the tool flow. The report is split into seven sections.

Flow Summary

This reports the general information for the current whole incremental flow:

Reuse Summary

This contains an overview of the cells, nets, pins, and ports that are reused. An example is:

The columns provide the following information:

  • Matched - Cells that have the same instance name, REF_NAME property or have been deemed a match if some information differs slightly. This is calculated at the end of read_checkpoint -incremental
  • Initial reuse - Once items are matched, this indicates if the matching information on location was reused or not. Sometimes items are matched not possible to be reused due to illegal connectivity or other design requirements.
  • Current reuse - This indicates the reuse at the current design phase. Useful when compared with initial reuse to see how much reuse is lost as you go through the tool flow to generate a legal solution.
  • Fixed - items that incremental flow can not touch. When high, the tools might struggle to generate a legal solution.
Note: The titles have been trimmed.

Reference Checkpoint Information

This contains information about the reference checkpoint. From this section you can examine the following:

  • Vivado version that generated it
  • Stage of the implementation
  • Recorded WNS and WHS
  • Speedfile version information of both the reference and incremental runs

An example is:

Comparison with Reference Run

This contains useful metrics about a comparison with the reference run. From this section you can compare the following:

  • Runtime information
  • WNS at each stage of the flow
  • Tool options at each stage of the flow.
Figure 1. Reference Run Comparison Example

When using this report it is important to understand that the Incremental run should be compared to the post route numbers of the Reference run as the placement and routing should be reused. For the sections that are not reused, these might contain a mixture of unplaced, placed, or routed information that can impact the accuracy of the metrics reported.
Note: For further understanding, conduct a timing analysis on a checkpoint written out after read_checkpoint -incremental.

Optimization Comparison with Reference Run

This section contains the iphys_opt_design replaying information which is retrieved from the reference dcp, along with the RQS suggestions derived, generated, and applied in the current incremental flow. An example is:

Note: Physical optimizations that have failed to replay result in lower reuse can impact the likelihood of maintaining the current timing picture.

Command Comparison with Reference Run

This section contains the commands executed for flow command comparison. An example is:

Note: In Incremental flow, iphys_opt_replay might not replay all optimizations from the reference run. Any Non-reused optimization has an impact on the cell or net reuse.

Pay particular attention to the commands used prior to read_checkpoint -incremental to confirm they are the same and reuse is maximized.

Non-reuse Information

This contains metrics about what was not reused and why. The following is an example: