Step 2: Running Report QoR Assessment - 2023.2 English

Vivado Design Suite Tutorial: Design Analysis and Closure Techniques (UG938)

Document ID
UG938
Release Date
2023-11-08
Version
2023.2 English

In this step, you run the report_qor_assessment command on the open design. This step can be run after any stage of the implementation process: synth_design, opt_design, place_design, phys_opt_design, and route_design. It provides an assessment score that details the likelihood of the design closing timing, as well as a quick first analysis returning items that need to be further investigated.

  1. With the design open, click Reports > Report QoR Assessment....
  2. In the Report QoR Assessment dialog box, select Report Passing Metrics and click OK.

    The equivalent Tcl command is as follows:
    report_qor_assessment -exclude_methodology_checks -name qor_assessments -max_paths 100 -full_assessment_details
    This opens up the assessment report, with three main sections providing the following:
    • Assessment summary
    • Difficult timing paths requiring investigation
    • Objects with DONT_TOUCH properties that prevent tool optimizations
  3. In the first section of the report, select RQA Summary.

    This section has the score marked as "2 - Implementation may complete. Timing will not meet". It also recommends running report_qor_suggestions. The RQA command understands when suggestions are available and can offer the guidance to check them.

  4. Select Assessment Details.

    This section lists the items that have led to the assessment score of 2. Because the option to Report passing metrics was selected, items marked as OK are shown. Typically, only items marked REVIEW are shown. In this example, you can see WNS and TNS metrics marked for review, as well as paths above their net/LUT budget.

    Timing paths usually offer the values that are achievable in the best case scenarios. Not all paths can achieve these values. Net and LUT budget checks substitute net or LUT values with more typical values, and also penalize paths that are more challenging due to a netlist profile or a resource being less sparse. The result is two checks performed under this item. Look at all of these paths before continuing.

  5. Select Net/LUT budget under Challenging Timing Paths.

    Scroll across the screen to see all the path characteristics reported. The following items are of particular interest:

    SuggestionIds
    These IDs correspond to suggestions that, if triggered, impact this path.
    Net Check Slack
    This is the slack when the path is substituted with higher net delay values.
    LUT Check Slack
    This is the slack when LUTs are substituted with higher LUT delay values.
  6. Double-click on the path to bring up the Timing Path report. You can also press F4 to show a schematic. All of these items use standard Vivado cross probing. At this stage, you can also explore other items in the report.
  7. In the Design Runs window, select impl_1, expand the Implementation Run Properties window, and select the Properties tab. Locate the MIN_RQA_SCORE property.

    When the MIN_RQA_SCORE property is set, an implementation run will be terminated if RQA is run and the assessment score value is less than the value specified. As the minimum RQA score is 1, MIN_RQA_SCORE must be set to 2 or greater to have an impact.

    Edit the value of MIN_RQA_SCORE and set this to 3.

  8. Next, the implementation run must generate the QoR Assessment report.

    In the implementation Run Properties box, select the Reports tab. In the Report Strategy pull down menu, select the Timing Closure Report Strategy. This is only one way of setting the run to generate the report. Other methods are:

    1. Creating a custom report strategy.
    2. Adding report_qor_assessment to a Tcl hook. This must run the report in the run directory to be effective.
  9. Launch the impl_1 run.
    After opt_design is complete, the report_qor_assessment command is run and the run should terminate. You should see the following in the Design Runs status column:

    The log file should have the following message:
    
    INFO: [runtcl 7-1] RQA Score (opt_design): 2 (RQA score tolerance: 3)
    ERROR: [runtcl 8-1] Flow terminated - RQA score threshold not met after 'opt_design' step
    The following message appears when the flow successfully passes the check:
    
    INFO: [runtcl 7-1] RQA Score (opt_design): 2 (RQA score tolerance: 2)
    INFO: [runtcl 9-1] Flow continues - RQA score threshold met after 'opt_design' step
  10. Update the MIN_RQA_VALUE to 1. Revert the reports back to Vivado Implementation Default Reports and reset the run.