The IDR is an aggressive timing closure implementation run focused solely on meeting timing. Power and compile time are not priorities, although some power optimizations can occur if utilization savings are achieved.
The IDR process is divided into three stages, as shown in the simplified diagram:
Figure 1. IDR Overview
The flow is fully automated, and you cannot control which stages run. Before
using IDR, make sure your design is free of methodology issues. Run
report_methodology and fix or waive all critical warnings and
warnings.
Stage Details
- Stage 1: Design Optimization
- In this stage, the tool generates and applies QoR
suggestions. Compile time is typically up to two and a half times longer
than a standard implementation run because:
- The implementation tools must run to post-place or post-route to produce accurate analysis data.
- To apply the suggestions, the design run must be reset and the implementation tools rerun.
- By applying suggestions before re-analysis, you avoid overestimating the impact of design issues, which maximizes the QoR improvement.
- Stage 2: Tool Option Exploration
- This stage uses ML strategies to predict the best tool options for the design.
- Stage 3: Last Mile Timing Closure
- This stage applies post-route
phys_opt_design, incremental implementation with a Last Mile directive, and incremental QoR suggestions to close timing.To enter this stage, the design must meet both of the following:
- An RQA score of 3 or higher.
- WNS between -0.250 and 0.000.
Exit Conditions
The flow can exit under the following conditions:
- At any stage, if timing is met and the design is fully routed.
- At stage 1, if:
- The design fails initial timing checks.
- The design fails initial utilization checks.
- The exit-on-failed-methodology-checks option is enabled and there are failed methodology checks with IDs TIMING-6, TIMING-7, TIMING-8, or TIMING-13.
- The design fails to route.
- No ML strategies are predicted.
- At stage 2, if the Last Mile entry criteria are not met.
- At the end of stage 3, if the Last Mile algorithms were used and no further improvements are possible.