Directives provide different modes of behavior for the
phys_opt_design command. Only one directive can be specified at
a time, and the directive option is incompatible with other options. The available
directives are described below.
- Explore
- Run different algorithms in multiple passes of optimization, including replication for very high fanout nets, SLR crossing optimization, and a final phase called Critical Path Optimization where a subset of physical optimizations are run on the top critical paths of all endpoint clocks, regardless of slack.
- ExploreWithHoldFix
- Run different algorithms in multiple passes of optimization, including hold violation fixing, SLR crossing optimization and replication for very high fanout nets.
- ExploreWithAggressiveHoldFix
- Run different algorithms in multiple passes of optimization, including
aggressive hold violation fixing, SLR crossing optimization and replication
for very high fanout nets.Tip: Hold-Fixing only fixes hold time violations above a certain threshold. This is because the router is expected to fix any hold time violations that are less than the threshold.
- AggressiveExplore
- Similar to Explore but with different optimization algorithms and more aggressive goals. Includes a SLR crossing optimization phase that is allowed to degrade WNS which should be regained in subsequent optimization algorithms. Also includes a hold violation fixing optimization. Consider using this directive if you are requiring to run several iterations of phys_opt_design to achieve improved WNS.
- AlternateReplication
- Use different algorithms for performing critical cell replication.
- AggressiveFanoutOpt
- Uses different algorithms for fanout-related optimizations with more aggressive goals.
- AddRetime
- Performs the default phys_opt_design flow and adds register retiming.
- AlternateFlowWithRetiming
- Perform more aggressive replication and DSP and block RAM optimization, and enable register retiming.
- Default
- Run phys_opt_design with default settings.
- RuntimeOptimized
- Run fewest iterations, trade higher design performance for faster run time.
- RQS
- Instructs phys_opt_design to select the phys_opt_design directive specified by the report_qor_suggestion strategy suggestion. Requires an RQS file with a strategy suggestion to be read in prior to calling this directive.
Tip: All directives are compatible with both post-place and post-route
versions of
phys_opt_design.