The phys_opt_design
command runs physical optimization on the
design. It can be run in post-place mode after placement and in post-route mode
after the design is fully-routed.
phys_opt_design Syntax
phys_opt_design [-fanout_opt] [-placement_opt] [-routing_opt]
[-slr_crossing_opt] [-rewire] [-insert_negative_edge_ffs]
[-critical_cell_opt] [-dsp_register_opt] [-bram_register_opt] [-uram_register_opt] [-bram_enable_opt] [-shift_register_opt] [-hold_fix] [-aggressive_hold_fix] [-retime]
[-force_replication_on_nets <args>] [-directive <arg>] [-critical_pin_opt] [-clock_opt] [-path_groups <args>] [-tns_cleanup] [-sll_reg_hold_fix] [-quiet] [-verbose]
Note: The
-tns_cleanup
option can only be run in
conjunction with the -slr_crossing_opt
option.phys_opt_design Example Script
open_checkpoint top_placed.dcp
# Run post-place phys_opt_design and save results phys_opt_design
write_checkpoint -force $outputDir/top_placed_phys_opt.dcp report_timing_summary -file $outputDir/top_placed_phys_opt_timing.rpt
# Route the design and save results route_design
write_checkpoint -force $outputDir/top_routed.dcp report_timing_summary -file $outputDir/top_routed_timing.rpt
# Run post-route phys_opt_design and save results phys_opt_design
write_checkpoint -force $outputDir/top_routed_phys_opt.dcp report_timing_summary -file $outputDir/top_routed_phys_opt_timing.rpt
The phys_opt_design
example script runs both post-place and
post-route physical optimization. First, the placed design is loaded from a
checkpoint, followed by post-place phys_opt_design
. The checkpoint
and timing results are saved. Next the design is routed, with progress saved
afterwards. That is followed by post-route phys_opt_design
and
saving the results. Note that the same command phys_opt_design
is
used for both post-place and post-route physical optimization. No explicit options
are used to specify the mode.