Solder Mask Repair

Summary of Features

This DFM action includes the following features.

*     Two values for Bridge size: minimal and optimal.

*     New Range types

14 range types were introduced in this version. A range type was created for each possible combination of a specific Pad type and it's neighbors type (13 altogether) and a new, generic, range type.

*     Separate settings for shaving coverage and bridge according to the Pad type. You can disable coverage and bridge shaves according to the Pad type.

*     Clearance vs. Bridge compromise

Similar to the ability to define a compromise between clearance and coverage in cases where there is no room for both minimal clearance and minimal coverage, you can now define a compromise between minimal clearance and minimal bridge in places where there is no room for both.

*     A new algorithm enables replacing all individual clearances in a row of SMD Pads into one large, continuous clearance.

*     Placing bridge shaves in locations other than in the middle between two Pads

You can specify the location of bridge shaves. They do not have to be placed only in the middle between two pads.

*     Ability to define Pad types to be ignored by the system

You can define a list of Pad types to be ignored during processing. You can also define a list of attributes to be ignored.

A Pad will be ignored if it is on either list.

Glossary

smcc

Current Solder Mask Optimization DFM action

smo

New Solder Mask Optimization (Solder Mask Repair) DFM action

Pad Type

There are four (4) pad types in the action.

*    SMD Pad: Pad with attribute .smd

*    PTH Pad: Pad which is drilled by a drill hole with attribute
.drill = pth

*    Via Pad: Pad which is drilled by a drill hole with attribute
.drill = via

*    NPTH Pad: Pad which is drilled by a drill hole with attribute
.drill = npth

Small Clearance

SM clearance that is smaller than its corresponding Pad.

Huge Clearance

SM clearance that is larger in any one direction than its corresponding Pad. The clearance must be larger by a value larger than v_max_oversized_clearance .

Ranges ERF Variables

What are the Ranges ERF variables?

In the Solder Mask Optimization action, you could define a special set of optimization values as a percentage of the Pad type and the distance to its neighbors. These user-defined values overwrote the parameters defined in the action screen. (For more details please look in Doc. 0602, Solder Mask Optimization .)

In the Solder Mask Repair action, the ability to define ranges was expanded. You can now define 14 different types of range variables. Each range is defined according to the possible paring of a Pad's type and its neighbor's pad type.

Following are the new range prefixes.

*     SMD Pad ranges: SMD2SMD, SMD2PTH, SMD2VIA, SMD2OTHER

*     PTH Pad ranges: PTH2PTH, PTH2VIA, PTH2SMD, PTH2OTHER

*     Via Pad ranges: VIA2PTH, VIA2VIA, VIA2SMD, VIA2OTHER

*     NPTH Pad range: NPTH

*     Generic range: GENERIC

How is the Generic range used?

The Generic range, if defined, will be used if there is no specific range that fits the current distance.

What is the format of a range?

A range is a set of 3 variables, arranged in the following format.

*         Each Range set can include up to 10 different sets of variables for each type of variable: 10 border variables, 10 partition variables, and 10 bridge variables.

The border variable
Format

 

<Range Name>_<Numeric counter>_< BORDERS> =
<Lower limit>:<Upper Limit>

Lower limit and Upper limit are real numbers. They can be in mils or in microns, depending on the unit of the model.

Usage

 

The border variable defines the distance that this range refers to.
There should be no overlap between two border variables of the same Range sets.

The partitions variable
Format

 

<Range Name>_<Numeric counter>_<PARTITION> = <Min_Clearance>:<Opt_Clearance>
<Min_Coverage>:<Opt_ Coverage >

These numbers ( Min_Clearance, Opt_Clearance, Min_Coverage, Opt_ Coverage ) are expressed in percentage.

Usage

 

This variable defines the minimal/optimal clearance and the
minimal/optimal coverage values as a percentage of the distance between two copper features.

The bridge variable
Format

 

<Range Name>_<Numeric counter>_< BRIDGE> = <Min_Bridge>:<Opt_Bridge>

Usage

 

Like the partition variable, this variable defines the minimal/optimal bridge values as a percentage of the distance between two copper features.

How the action uses these ranges
Clearance

When the action checks a Pad for optimization, it find its closet neighbor. Then, based on the distance between the two pads, the action looks for the relevant range that applies to this pair of pads. and gets the minimal/optimal clearance values from the selected range.

If a proper range is not found, the action uses the relevant parameters from the Action GUI Screen.

Coverage

The SM Repair action runs a separate scan to locate coverage problems. When the action finds a coverage problem, it looks for the relevant range that applies to the distance between the selected pad and the feature that is causing the coverage problem. If a suitable range is found, its values for the coverage variables are used.

Bridge

The bridge values are set according to the range that was chosen for the clearance operation.

Example of a Range sets group

Here is an example of one Range sets group, SMD2SMD, with 3 sets of Ranges variables.

SMD2SMD_1_BORDERS

=

5.0:5.5

SMD2SMD_1_PARTITION

=

0.51:0.51 0.60:0.72

SMD2SMD_1_BRIDGE

=

0 0

SMD2SMD_2_BORDERS

=

5.5:6.0

SMD2SMD_2_PARTITION

=

0.51:0.51 0.55:0.66

SMD2SMD_2_BRIDGE

=

0.3 0.35

SMD2SMD_3_BORDERS

=

6.0:6.5

SMD2SMD_3_PARTITION

=

0.51:0.51 0.50:0.60

SMD2SMD_3_BRIDGE

=

0.31 0.37

 

 

Solder Mask Optimization ERF variables retained in Solder Mask Repair DFM Action

 

Solder Mask Optimization ERF variable

Retained in Solder Mask Repair

Remarks

v_pad_proximity

v_pad_proximity

 

v_enlarge_pth

v_enlarge_pth

 

v_enlarge_pth

v_enlarge_pth

 

v_enlarge_npth

v_enlarge_npth

 

v_enlarge_smd

v_enlarge_smd

 

v_enlarge_smd

Deleted.

 

v_npth_clear_always

v_npth_clear_always

 

v_compromise

Became parameter:pp_clear_coverage_comp

 

v_divide_line_into

Deleted.

For dense shaves use v_use_surface_shaves.

v_overlap

v_overlap

 

v_sym_res

v_sym_res

 

v_divide_same_net_pads

Deleted

See v_same_net_bridge_mode

v_bridge_check_net_inter

Deleted

See v_same_net_bridge_mode

v_bridge_crt_if_sm_inter

Deleted

See v_same_net_bridge_mode

v_shave_same_net

v_shave_same_net

 

v_shave_too_tight

Deleted.

Dense shave will be only reported in Too Dense category, and not be placed.

For dense shaves use v_use_surface_shaves.

v_sm_top_layer_name

v_sm_top_layer_name

 

v_sm_bottom_layer_name

v_sm_bottom_layer_name

 

v_join_clearances

Deleted

See v_same_net_bridge_mode

v_replace_oversized

Deleted

See v_max_oversized_clearance

v_max_oversized_clearance

v_max_oversized_clearance

 

v_test_for_partial_cover

Became parameter:pp_partial

 

v_use_original_shape

v_use_orig_pad_shape

 

v_supply_smcc_alternative

Deleted

 

v_no_rounded_corners

v_use_rounded_corners

Opposite options meaning.

v_keep_clearance_shape

v_use_orig_sm_clearance

 

v_do_small_clearances

v_do_small_clearances

 

v_grow_small_pads_pth

v_grow_small_clearance_pth

 

v_grow_small_pads_via

v_grow_small_clearance_via

 

v_grow_small_pads_npth

v_grow_small_clearance_npth

 

v_grow_small_pads_smd

v_grow_small_clearace_smd

See also new ERF variable:v_small_smd_clearance_handle_mode

v_shave_clear_below_min

Deleted

See parameter pp_clear_bridge_comp

v_max_shaves_to_surface

v_max_shaves_to_surface

 

v_use_mask_layer

v_use_mask_layer

 

v_keep_nonstandard

Deleted

It always keeps non-standard Pads as non-standard.

v_ignore_attrs

Became parameter:pp_ignore_attrs

 

v_use_mask_layer

v_use_mask_layer

 

v_shave_via

Deleted

Functionality was split to two parameters: pp_fix_coverage,pp_fix_bridge

v_shave_smd

Deleted

Functionality was split to two parameters: pp_fix_coverage,pp_fix_bridge

v_reduce_same_net_shaves

Deleted

Algorithm is always used to delete reduce same net shaves.