Solder Paste Optimization (SPO) is a read-write DFM action
designed to create a new Solder Paste layer or modify an existing one, derived
from an external copper layer.
The purpose is to modify SMD/Test Vias/ Ground pads according to
user-defined parameters so that the modified pads will act as the input for the
creation of a solder paste application stencil.
A pad can be modified (resized) by an absolute value, a factor,
or a specified distance. Separate rules apply to different pads.
SMD pads can be resized proportionately or disproportionately
(that is, their heights can be changed by a ratio different from their widths).
They can be resized disproportionately only when their symbols are standard
system symbols that have width and height, such as rectangles and ellipses.
Since pad sizes can be modified only when SMD pad sizes fall within the SMD
Size ranges, separate paste pads can be created for different size ranges of
SMD pads. By adding attributes to components in the component layers, you can
control the way and amount by which their paste pads are reduced, and even
control the paste pad shape.
When special predefined arrangements of solder paste on pads are
required to be retained without change, the appropriate ERF variable modify_non_centered
should be No. All other criteria are applied to all other pads, including
staggered and/or cross-hatched.
Ground pads are round pads that are not defined as SMD or Test
Point pads that were either user-selected or their diameters match the
user-specified diameters. Paste pads for ground pads are created as
user-definable thermal pads.
Affected layers can also be paste layers, or signal/mixed outer
layers (with all the SMD pads).
When a solder paste layer exists before the initialization of
Solder Paste Optimization, a backup layer will be created with the name
<layer_name>+++. For example, if the existing solder paste layer is
named: sp1 , the
backup layer will be sp1+++.
The rules that apply to each type of pad is explained in the
following sections: SMD Pads, Test Via Pads, Ground Pads.
Paste pads for SMD pads can be created only when an SMD pad fits
within the ranges defined in the SMD Ranges parameters. The paste pad
characteristics will be derived from the SMD shape and size, and shrunk by the
values specified in the relevant parameter. Shrinkage can be by an absolute
value, a distance, or by a factor.
SMD pads can be shrunk proportionately or disproportionately,
that is, width can be shrunk differently than height shrinkage. Of course, the
shape has to have a width and height, such as a rectangle or an ellipse. Only
standard system symbols can be shrunk disproportionately. A pad that does not
have width and height, such as a round pad, or is not derived from a standard
system symbol, will be shrunk proportionately only. Non-system symbols
(user-defined) will be converted to standard system symbols if they are
similar. If they are not similar, they will not be resized.
Attributes may be applied by the user to a component and thus to
all SMD pads belonging to the component toeprints. These attributes override
the values specified in the parameters. The attributes are as follows:
Attribute |
Description |
.spo_w_mode,
.spo_w_fact, .spo_w_val |
To shrink pad widths by values other than those specified
in the parameters. |
.spo_h_mode,
.spo_h_fact, .spo_h_val |
To shrink pad heights by values other than those specified
in the parameters. |
.spo_s_mode,
.spo_s_fact, .spo_s_val |
To shrink pads proportionately by values other than those
specified in the parameters. |
.spo_shape
|
This attribute is the name of an Genesis 2000 standard
symbol. The SPO DFM action will create a paste pad in the given symbol, and
base its width and height on the SMD pad's width and height (only their
order, and not their size). The SPO DFM action will not shrink these paste
pads. If the given paste pad is not fully contained by the SMD pad, it will
be reported as a measurement. |
.spo_move_center |
To move the paste pad from the SMD pad center. A positive value will move the paste from the component
center out. A negative value will move the paste towards the component
center. |
Note:
When
specifying a .spo_*_mode attribute, you must also specify either a .spo_*_fact or a .spo_*_val attribute (as
required), otherwise it will be ignored. Specification of only a .spo_*_fact or a .spo_*_val attribute without a .spo_*_mode attribute will also be
ignored.
Paste pads shapes and sizes are derived directly from Test Via
points shapes and sizes. Size reduction is proportionate, according to
user-specified parameter values. If the Test Via Mode parameter is specified as
None, the paste pads will not be modified. Test Via pads will be identified by
their .test_point
attributes.
Paste pads derived from ground pads are in the shape of round
thermal pads, whose characteristics are user-specified in the ERF variables.
Ground pads can be selected individually in the Graphic Editor,
or by specifying up to three pad diameters. In all cases, ground pads must be
round and their attributes must not be .smd or .test_point
If user-specified parameters do not succeed in creating a valid
thermal pad, a message will be recorded in the log, and the ground pad will
reported as missing or un-modified.
These attributes are produced once for each layer:
Result Attribute |
Description |
<layer_name>_<category_name>
= number |
Where: layer_name
= the layer to which this attribute belongs category_name
= name of category measurement. number
= number of occurrences of this measurement. |
<category_name>
|
Total number of occurrences of this measurement in all the
layers together. |
It is not recommended to change the ranges on this DFM Action.
The categories are divided to two groups, categories that are reported in the
red range (e.g., paste_center_not_moved
or smd_missing_paste
) and the categories that are reported in the green range (e.g., smd_added_paste , centered_paste or gnd_modified_paste ).