set_pin_physical_constraints -help
Usage: set_pin_physical_constraints # set physical constraints for pin
[-pin_name string] (name of the pin)引脚名称
[-cell string] (name of the cell)引脚单元名称
[-layers layer_list] (The metal layers for the pin)引脚所在金属层
[-width float] (the width for the pin)引脚宽度
[-depth float] (the depth for the pin)引脚深度?
[-side int] (the side of the pin)引脚所在边
[-offset float] (the distance from nearest die edge to the center of the pin)die到引脚中心最小距离
[-order int] (order constraint: positive integer indicates order constraint)排序
[-off_edge center, location or auto]?
(off-edge pinDefault: off:
Values: center, location, auto)
[-location coordinate] (coordinate of the fixed off-edge pin.)?
[-pin_spacing int] (Number of wire tracks between pins. Default: 1)引脚之间的track数目
[-exclude_sides string]?
(Exclude pins on comma separated numbered sides. Default: none)
[-nets object_list] (Apply pin constraints for given nets)应用引脚约束
[object_list] (ports/terminal)端口、终端
man
NAME
set_pin_physical_constraints
Sets physical constraints for pin instances.
SYNTAX
status set_pin_physical_constraints
objects
| -pin_name pin_name [-cell cell_name]
| -nets nets [-cell cell_name]
[-layers layers]
[-width pin_width]
[-depth pin_depth]
[-side side_number]
[-offset offset_distance]
[-order order_number]
[-pin_spacing spacing]
[-exclude_sides exclude_side_numbers]
[-off_edge center | location | auto]
[-location point]
Data Types
objects collection
pin_name string
cell_name string
nets collection
layers list
pin_width float
pin_depth float
side_number integer
offset_distance float
order_number integer
spacing integer
exclude_side_numbers list of integers
ARGUMENTS
objects
Specifies the pins to which the specified constraints are
applied. In most cases, you can specify multiple objects. How-
ever, if you specify the -order option, you can specify only a
single pin.为指定引脚添加约束,如果你指定-order这个操作,就只能约束一个引脚
The objects argument, -pin_name option, and -nets option are
mutually exclusive. You must specify the pins by using only one
of these arguments. 这两个操作互斥。
-pin_name pin_name
Specifies the port or terminal to which the specified constraints are applied.

If you use this option together with the -cell option, the spec-
ified constraints are applied only to those named pins on the
named soft macro or plan group.如果带上-cell,就约束这个cell上的指定pin
If you use this option without the -cell option, nor the -nets
option, the specified constraints are applied to the top-level
port or terminal.如果不带cell也不带nets,约束就应用到顶层端口或终端
If you specify a pin that does not exist in the design, the con-
straint is stored in the database, even though it might not get
applied. In such cases, the constraint is automatically applied
when a new pin with this name is added to the design.如果pin不存在,约束也会存起来,留着给可能的new pin
The objects argument, -pin_name option, and -nets option are
mutually exclusive. You must specify the pins by using one of
these arguments.这两个操作互斥
-cell cell_name
Specifies the soft macro or the plan group to which the pin
belongs. For soft macro, you must use the soft macro's reference
CEL name. For plan group, you must use the plan group's full
hierarchy name. For plan group pin constraints you must use the
instance name of the plan group, since there is no corresponding
physical cell before the plan group is "committed". For example,
to apply pin constraints to B pin on instance A of reference CEL
name CellA, enter the following command:
指明pin的归属,举例说明,CellA是CEL里面的单元
set_pin_physical_constraints -pin_name B -cell CellA ...
This option is valid only when you also specify the -pin_name
option.必须要指明pin的名称命令才有效
-nets nets
Specifies the nets where the pin physical constraints are
applied.
If you use the -nets option without the -cell option, the speci-
fied constraints, with the exception of side constraints, are
applied to all the pins, ports, and feedthrough ports on the
specified nets. Side constraints are applied to all pins and
ports on the specified nets, except the feedthrough ports.如果只指明net,不指明cell,边缘约束会应用到所有pin上
If you use the -nets option with the -cell option, the specified
constraints, with the exception of side constraints, are applied
to all the pins, ports, and feedthrough ports on the specified
nets and at the same time also on the specified plan groups or
soft macros. Side constraints are applied to all pins and ports
on the specified nets, except the feedthrough ports.
-layers layers
Specifies the set of metal layers allowed for the specified
pins. The argument is a collection of consecutive metal layers.
A collection that contains nonconsecutive metal layers is not
supported.为pin指明金属层
By default, if the layer for an on-edge pin is not the preferred
layer, the pin is snapped to the closest wire track on the pre-
ferred layer during pin placement. You must use the
set_fp_pin_constraints -hard_constraints layer command to place
on-edge pins on a nonpreferred layer.?????????
-width pin_width
Specifies the pin width in microns. If the specified width con-
straint is smaller than the minimum width given in the library,
the minimum width is applied (unless otherwise noted). The
default is 0.引脚宽度约束??????

-depth pin_depth
Specifies the depth in microns. If the depth constraint speci-
fied is smaller than the minimum depth given in the library, the
minimum depth is applied (unless otherwise noted). The default
is 0.
-side side_number
Specifies the block side on which the pin must be placed so that
it abuts the specified die edge.指定引脚要放在哪个边上
The side number is a positive integer that starts from 1. Given
any shape (rectangular or rectilinear), the lower left-most ver-
tical edge is the starting edge (side number 1). The side number
of the next edge, going clockwise, is 2, and so on. You can
specify a value of 0 to indicate no side constraint.左边1,顺时针1234
-offset offset_distance
Specifies the distance in microns that the pins must be offset
from the starting point of the specific edge. The offset is the
distance to the edge of the pin. For a horizontal edge, the
starting point is the left vertex of the edge. For a vertical
edge, the starting point is the lower vertex of the edge. You
must specify a positive floating point value for the offset dis-
tance.对于引脚的水平边来说,是左边最高点到引脚边缘的距离,对于垂直边,是底边最低点到引脚边缘的距离
When you specify the set_fp_pin_constraints -hard_constraints
location command, you must also provide a pin layer or pin width
physical constraints by specifying set_pin_physical_constraints
-layers or set_pin_physical_constraints -width to honor hard
location constraints during pin placement.
-order order_number
Specifies the relative placement order for the specified pin.
The order number must be a positive integer. A smaller order
number specifies a more left side placement on a horizontal
placement edge, and a more bottom side placement on a vertical
placement edge. An order number of 0 specifies that the pin has
no order constraint. Order-constrained pins can be interleaved
by other pins. Constraints specified by the -order option do not
apply to feedthrough pins. The default order number is 0.水平方向的的最左端,垂直方向的最下端,是较小的数
-pin_spacing spacing
Specifies the minimum number of wire tracks between adjacent
pins or between a pin and a preroute wire that cuts across a
soft macro or plan group edge in the normal direction. Note that
pins that are created are always snapped to wire tracks. The
default minimum pin-to-pin spacing is one wire track.
-exclude_sides exclude_side_numbers
Specifies the soft macro edges on which pins cannot be placed.
The argument is a string consisting of a number or a set of num-
bers separated by commas. Each number corresponds to a macro or
plan group edge. The lower leftmost vertical edge is numbered 1
(one). Other edges are numbered according to their order of
traversal in the clockwise direction starting from edge 1. If
there are multiple leftmost edges then the edge 1 is the lowest
leftmost edge. For example, to exclude sides 2, 4, and 6, enter
-exclude_sides {2,4,6}
-off_edge center | location | auto
Specifies that the pin is placed off-edge. By default, pins are
placed on-edge. The center, location or auto keyword specifies
how the pin is placed. You must specify only one keyword.
o center
When you specify -off_edge center, the pin is placed at the
center of the cell.
o location
When you specify -off_edge location, you must provide the
location for this pin by specifying the -location option. The
command places the pin at the exact coordinates of the speci-
fied location. In addition, the command marks the pin as fixed
after creating it.
o auto
When you specify -off_edge auto, you must create a pin guide
that is associated with this pin. The pin guide must be in the
center of the block boundary. The pin is placed at the optimal
position guided by the pin guide. If you do not provide a pin
guide, the pins are placed in the center of the cell, the
result is the same as if you specified -off_edge center. Note
that this option only works with place_fp_pins -block_level.
You cannot use this option to place pins on plan groups, soft
macros or black boxes.
-location point
Specifies the coordinates of the pin. You can specify the loca-
tions for both on-edge and off-edge pins.
For on-edge pins, the specified point must be on the edge. For
vertical edges, the x-coordinate of the point should be the x-
coordinate of the edge and the y-coordinate of the point should
be bottommost y-coordinate of the pin bounding box. For horizon-
tal edges, the y-coordinate of the point should be the y-coordi-
nate of the edge and the x-coordinate of the point should be the
leftmost x-coordinate of the pin bounding box. By default, if
the location of an on-edge pin is not on the preferred wire-
track, the pin is snapped to the closest wiretrack on the pre-
ferred layer during pin placement.
When the location of a pin is set by this option, its layer must
also be set by using the -layers option.
You must use the set_fp_pin_constraints -hard_constraints loca-
tion command to place on-edge pins away from the preferred layer
tracks.
For off-edge pins, you must use this option together with the
-off_edge location option.
This option and the -offset option are mutually exclusive, you
can specify only one.
DESCRIPTION
This command sets physical constraints, such as layer and width, on the
specified pins. The constraints you specify are saved when the design
is saved.
If you want the constraints to be honored during pin placement, use the
set_fp_pin_constraints -use_physical_constraints on option.
Pin placement only honors the physical constraints that are set on
clock and signal pins. The initialize_floorplan command does not honor
the constraints that are set on power and ground pins.
Multicorner-Multimode Support
This command has no dependency on scenario-specific information.
EXAMPLES
The following example specifies physical constraints on a pin.
prompt> set_pin_physical_constraints -pin_name "Reset" \
-layers {M2 M3 M4 M5} \
-width 0.28 -depth 0.28 -side 1 -offset 5
