phys_opt_design - 2023.1 English

Vivado Design Suite User Guide: Implementation (UG904)

Document ID
UG904
Release Date
2023-05-16
Version
2023.1 English

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] [-insert_negative_edge_ffs]
                 [-restruct_opt] [-interconnect_retime] [-lut_opt] [-casc_opt]
                 [-cell_group_opt] [-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.