Product Documentation
Virtuoso Space-based Router Command Reference
Product Version IC23.1, September 2023

reduce_vias

reduce_vias
[ -check_rule 
  {all 
  | none 
  |[grid][minarea][minedge ][minenclosedarea][minwidth][numcuts][samenet]
  [samenet_crossing][samenet_portshort]} ] 
[ -check_antenna [ true | false ] ] 
[ -region {f_xlo f_ylo f_xhi f_yhi} ] 
[ -set d_setObj ] 
[ -exclude_set d_setObj ] 
[ -exclude_net {s_netName …} ] 
[ -exclude_type {[power] [ground] [clock]} ] 
[ -critic [ true | false ] ] 
[ -threads i_threads ] 
[ -use_double_cut_vias [ true | false ] ] 

Description

Removes unnecessary vias and associated wiring from the design.

Since this process can be time-consuming, it can be beneficial to limit the scope to a region or to nets in a set.

Arguments

-check_antenna [ true | false ]

If true, checks new routes created by this command for antenna violations and, if found, the new routes are discarded and the original route connections are kept. Default: false

-check_rule {all | none | {s_check…}}

  

Checks new routes created by this command for the specified rule violations.

  

all

(default) Performs all checks (grid, minarea, minedge, minenclosedarea, minwidth, numcuts, samenet, samenet_crossing, samenet_portshort).

  

none

No checks are performed.

  

{s_check…}

Performs the checks in the list.

-critic [ true | false ]

Straightens wires where possible after routing. Defaults to false.

-exclude_net {s_netName…}

Excludes the given nets from processing. Nets that are not fixed or locked in this list can be shifted while routing other nets.

-exclude_set d_setObj

Excludes nets in the given set from processing.

-exclude_type {[power][ground][clock]}

Excludes the given types of nets from processing. Nets that are not fixed or locked in this list can be shifted while routing other nets.

-region {f_xlo f_ylo f_xhi f_yhi}

Processes routes in the area given by the lower left (f_xlo f_ylo) and upper right (f_xhi f_yhi) coordinates.

Default: The entire top cellview is processed.

-set d_setObj

Processes nets in the given set. If this argument is not specified, the entire top cell is processed.

-threads i_threads

Specifies the number of threads or processors to use in parallel to run this command. By default, if multi-threading has been enabled (enable_multithreading), the session threads are used, otherwise, one processor is used.

-use_double_cut_vias [ true | false ]

  

If true, will route using double cut vias when possible.

Default: false

Examples

The following example removes unnecessary vias and associated wiring within the given region.

reduce_vias -region [get_window_area]

Related Topics

Optimize Commands


Return to top
 ⠀
X