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
