proute_create_via_array
proute_create_via_array
{-set d_setObj | {-via_defs { s_viaDefName…} -net s_netName}}
-x_start f_x
-y_start f_y
-x_step f_xStep
-y_step f_yStep
-x_stop f_x
-y_stop f_y
[ -class1 {s_className …} ]
[ -class2 {s_className …} ]
[ -class3 {s_className …} ]
[ -class4 {s_className …} ]
[ -class5 {s_className …} ]
[ -stop_at_boundary_of_class1 {s_className…} [ -boundary_clearance1 {f_clearanceValue | {f_leftValue f_bottomValue f_rightValue f_topValue}} ] ]
[ -stop_at_boundary_of_class2 {s_className…} [ -boundary_clearance2 {f_clearanceValue | {f_leftValue f_bottomValue f_rightValue f_topValue}} ] ]
[ -stop_at_boundary_of_class3 {s_className…} [ -boundary_clearance3 {f_clearanceValue | {f_leftValue f_bottomValue f_rightValue f_topValue}} ] ]
[ -stop_at_boundary_of_class4 {s_className…} [ -boundary_clearance4 {f_clearanceValue | {f_leftValue f_bottomValue f_rightValue f_topValue}} ] ]
[ -stop_at_boundary_of_class5 {s_className…} [ -boundary_clearance5 {f_clearanceValue | {f_leftValue f_bottomValue f_rightValue f_topValue}} ] ]
[ -prBoundary_clearance {f_clearanceValue | {f_leftValue f_bottomValue f_rightValue f_topValue}}]
[ -stop_at_halo_of_class1 {s_className…} [ -halo_clearance1 {f_clearanceValue | {f_leftValue f_bottomValue f_rightValue f_topValue}} ] ]
[ -stop_at_halo_of_class2 {s_className…} [ -halo_clearance2 {f_clearanceValue | {f_leftValue f_bottomValue f_rightValue f_topValue}} ] ]
[ -stop_at_halo_of_class3 {s_className…} [ -halo_clearance3 {f_clearanceValue | {f_leftValue f_bottomValue f_rightValue f_topValue}} ] ]
[ -stop_at_halo_of_class4 {s_className…} [ -halo_clearance4 {f_clearanceValue | {f_leftValue f_bottomValue f_rightValue f_topValue}} ] ]
[ -stop_at_halo_of_class5 {s_className…} [ -halo_clearance5 {f_clearanceValue | {f_leftValue f_bottomValue f_rightValue f_topValue}} ] ]
[ -use_cellname_as_class [ true | false ] ]
[ -use_checker [ true | false ] ]
[ -check_metal_below [ true | false ] ]
[ -check_metal_above [ true | false ] ]
[ -color { ColorGray | ColorRed | ColorBlue | ColorYellow } ]
[ -color_status { ColorMutable | ColorLocked } ]
[ -use_regions_on_scratch_layer i_scratchLayerID ]
[ -avoid_regions_on_scratch_layer i_scratchLayerID ]
[ -undoable [ true | false ] ]
[ -silent [ true | false ] ]
[ -threads i_count ]
[ -threads i_threads ]
[ -slices i_slices ]
Description
Creates an array of selected vias at specific locations.
Specifying Boundary or Halo Clearances
You can prevent vias from extending across block boundaries or halos by using the stop_at_boundary_of_class and/or stop_at_halo_of_class arguments. Up to five unique lists of classes can be specified, each with a different clearance specification, given by the corresponding boundary_clearance or halo_clearance argument. For the clearance, if a single value is given, it applies to all four sides of the block or halo. If a list of four values is given, they must be given in the exact order of left, bottom, right, and top. Positive values are measured outward from the block boundary or halo; negative values are measured inward from the block boundary or halo.
Arguments
|
If To create shapes on a scratch layer, refer to geom_add_shape. |
||
|
|
||
|
Specifies the clearance for blocks of the class given by the |
||
|
|
||
|
Specifies the clearance for blocks of the class given by the |
||
|
|
||
|
Specifies the clearance for blocks of the class given by the |
||
|
|
||
|
Specifies the clearance for blocks of the class given by the |
||
|
|
||
|
Specifies the clearance for blocks of the class given by the |
||
|
If |
||
|
If |
||
|
Specifies a list of classes of macro blocks that belong to class1 for “of_class1” arguments. |
||
|
Specifies a list of classes of macro blocks that belong to class2 for “of_class2” arguments. |
||
|
Specifies a list of classes of macro blocks that belong to class3 for “of_class3” arguments. |
||
|
Specifies a list of classes of macro blocks that belong to class4 for “of_class4” arguments. |
||
|
Specifies a list of classes of macro blocks that belong to class5 for “of_class5” arguments. |
||
|
|
||
|
Specifies the clearance for the |
||
|
|
||
|
Specifies the clearance for the |
||
|
|
||
|
Specifies the clearance for the |
||
|
|
||
|
Specifies the clearance for the |
||
|
|
||
|
Specifies the clearance for the |
||
|
Specifies the name of the net to use for vias created from the viaDefs. |
||
|
|
||
|
Specifies the extra allowed clearance from the design prBoundary. For an explanation of the argument value, refer to Specifying Boundary or Halo Clearances. |
||
|
When |
||
|
Specifies the number of region slices in each direction for connecting stripe sections. |
||
|
Prevents inserting objects inside the boundary of macro blocks that belong to a class in this list. If this list is empty, then classes from class1 are used. |
||
|
Prevents inserting objects inside the boundary of macro blocks that belong to a class in this list. If this list is empty, then classes from class2 are used. |
||
|
Prevents inserting objects inside the boundary of macro blocks that belong to a class in this list. If this list is empty, then classes from class3 are used. |
||
|
Prevents inserting objects inside the boundary of macro blocks that belong to a class in this list. If this list is empty, then classes from class4 are used. |
||
|
Prevents inserting objects inside the boundary of macro blocks that belong to a class in this list. If this list is empty, then classes from class5 are used. |
||
|
Prevents inserting objects inside the halo of macro blocks that belong to a class in this list. If this list is empty, then classes from class1 are used. |
||
|
Prevents inserting objects inside the halo of macro blocks that belong to a class in this list. If this list is empty, then classes from class2 are used. |
||
|
Prevents inserting objects inside the halo of macro blocks that belong to a class in this list. If this list is empty, then classes from class3 are used. |
||
|
Prevents inserting objects inside the halo of macro blocks that belong to a class in this list. If this list is empty, then classes from class4 are used. |
||
|
Prevents inserting objects inside the halo of macro blocks that belong to a class in this list. If this list is empty, then classes from class5 are used. |
||
|
Specifies the number of threads or processors to use for checking. By default, if multi-threading has been enabled, the session threads are used, otherwise, a single processor is used. |
||
|
Specifies the number of threads or processors to use in parallel for checking. |
||
|
Permits this command to be undone. Default is the current setting for the |
||
|
Allows specification of cellnames instead of class names for the |
||
|
If To create shapes on a scratch layer, refer to “geom_add_shape”. |
||
Examples
The following example creates a 2 x 3 via array using the via definition for VIA_12, starting at x- and y-coordinates {100 200} with x-steps of 20 and y-steps of 30, and no vias added past {130 270}.
proute_create_via_array -via_defs {STACKEDVIA_12 STACKEDVIA_23 STACKEDVIA_34} \
-x_start 100 -y_start 200 -x_step 20 -y_step 30 \
-x_stop 130 -y_stop 270 \
-net {VDD}
The following example creates a three via layer stacked via array, using the via definitions for STACKEDVIA_12, STACKEDVIA_23, and STACKEDVIA_34, starting at the x- and y-coordinates of {100 2200}, with x-steps of 200 and y-steps of 30, and no vias added past {340 2520}.
proute_create_via_array -via_defs {STACKEDVIA_12 STACKEDVIA_23 STACKEDVIA_34} \
-x_start 100 -y_start 2200 -x_step 200 -y_step 30 \
-x_stop 340 -y_stop 2520 \
-net {VDD}
Related Topics
Return to top