This rule defines the minimum clearance allowed between any two primitive objects on a copper layer. Either a single value for clearance can be specified, or different clearances for different object pairings, through use of a dedicated Minimum Clearance Matrix. The latter, in combination with rule-scoping, provides the flexibility to build a concise and targeted set of clearance rules to meet even the most stringent of clearance needs.
Default constraints for the Clearance rule.
Connective Checking– the scope of the rule with respect to the nets in the design. Can be set to one of the following:
Different Nets Only – constraint is applied between any two primitive objects belonging to different nets (e.g. two tracks on two different nets).
Same Net Only – constraint is applied between any two primitive objects belonging to the same net (e.g. between a via and pad on the same net, or within the same track of a differential pair).
Any Net – constraint is applied between any two primitive objects belonging to any net in the design. This is the most comprehensive of the three options and covers the possibility of the objects belonging to the same net or different nets.
Different Differential Pair - constraint is applied between any two primitive objects belonging to different nets of different differential pairs (e.g. a track in TX_P and a track in RX_P).
Same Differential Pair - constraint is applied between any two primitive objects belonging to different nets of the same differential pair (e.g. a track in TX_P and a track in TX_N).
For a defined Same-Net Clearance rule, the general approach is that if two objects are touching (i.e. connected), then they are not deemed to be in violation of the rule. The exception to this is when checking the clearance between via and SMD pad objects in the same net. When a via and SMD pad have soldermask clearance, and the two are too close together, the soldermask bridge between the two objects can disappear and solder paste will flow down into the via during the soldering process, creating a bad solder joint on the SMD pad. If they are closer than the standard via-smd pad clearance, even if they are connected with a trace or overlapping, then they are deemed to be in violation. However, if the SMD pad allows a via-in-pad, then we the violation is ignored.
Minimum Clearance – the value for the minimum clearance required. A value entered here will be replicated across all cells in the Minimum Clearance Matrix. Conversely, when a different clearance value is entered for one or more object pairings in the matrix, the Minimum Clearance constraint will change to N/A, to reflect that a single clearance value is not being applied across the board.
Minimum Clearance Matrix – provides the ability to fine tune clearances between the various object-to-object clearance combinations in the design.
The default Clearance rule for a new PCB document will default to use 10mil for all object-to-object clearance combinations. When creating a subsequent new clearance rule, the matrix will be populated with the values currently defined for the lowest priority Clearance rule.
Working with the Clearance Matrix
Definition of clearance values in the matrix can be performed in the following ways:
Single cell editing - to change the minimum clearance for a specific object pairing. Simply click on a cell to select it for editing.
Multi-cell editing - to change the minimum clearance for multiple object pairings:
Use Ctrl+click, Shift+click, and click&drag to select multiple cells in a column.
Use Shift+click, and click&drag to select multiple contiguous cells in a row.
Use click&drag to select multiple contiguous cells across multiple rows and columns
Click on a row header to quickly select all cells in that row.
Click on a column header to quickly select all cells in that column.
To set a single clearance value for all possible object pairings, simply set the required value for the Minimum Clearance constraint. On clicking Enter, this value will be replicated across all applicable cells of the matrix. Alternatively, click the blank grey cell at the top-left of the matrix, or use the Ctrl+A shortcut. This selects all cells in the matrix, ready to accommodate a newly-entered value.
With the required selection made (either a single cell or multiple cells), making a change to the current value is simply a case of typing the new value required. To submit the newly entered value, either click away on another cell, or press Enter. All cells in the selection will be updated with the new value.
Example multi-cell editing. Notice that as different values for clearance now exist for one or more object pairings, the Minimum Clearance
constraint has changed to N/A, to reflect that a single clearance value is no longer being applied for all object-to-object clearance combinations.
How Duplicate Rule Contentions are Resolved
All rules are resolved by the priority setting. The system goes through the rules from highest to lowest priority and picks the first one whose scope expressions match the objects being checked.
Online DRC, Batch DRC, interactive routing, autorouting and during polygon placement.
When defining the constraints for the rule, the Connective Checking option would typically be set to Different Nets Only. An example of when Same Net Only or Any Net could be used is to test for vias being placed too close to pads or other vias on the same net, or any other net.
The minimum clearance matrix applies irrespective of the connective checking method specified. If different clearances are required between objects on the same net, to those defined for objects on different nets, be sure to define separate clearance rules as required to suit.
The applicable use of the clearance matrix depends on the rule scoping. For example with scoping of ALL-ALL, all cells in the matrix are applicable (i.e. all possible object pairings). However, if scoping were set to IsVia-IsTrack, then only the single cell for the Via-Track object pairing would be applicable, and all other cells in the matrix left unused.
When defining a clearance rule for a polygon, it is the primitives of the polygon that the rule is actually applied to, rather than the polygon itself. The keyword entry InPolygon (or InPoly) should be included in the Full Query in this case, instead of IsPolygon (or IsPoly). The specific polygon clearance rule must also be given a higher priority than any general clearance rule, if it is to have any effect.