next up previous contents index
Next: Via Detection Up: The Misc Config Button: Previous: The Views and Operations   Contents   Index

The Net Config Page

This page provides control over aspects of net identification and naming.

At the top of the page is an input area and four check boxes. These relate to the net naming capability (see 16.5) using text labels in physical mode.

Net label purpose name
This group provides a text entry area and an Apply button. The Apply button must be active for the control to have any effect.

The text entered is the name of the purpose to be assumed for net naming labels. This tracks the PinPurpose variable. Pressing Apply will set the variable to the text name provided, which can be empty. Pressing Apply again will unset the variable reverting to the default purpose name of ``pin'', but the text in the entry area will be retained.

If the purpose name is set to an empty string, the ``drawing'' purpose is assumed. One could equivalently give the name explicitly. This is not really recommended as it can be inefficient. In this case, the label, and presumably its metal, would both reside on the same layer with the default purpose. For example, a label on a routing layer named ``M2'' placed over an object on M2 would name the net containing the object. For efficiency, it is better to use a separate purpose. In the default case, the label would be on a layer purpose pair named ``M2:pin in this example.

Net label layer
This works similarly to Net label purpose name, though sets the PinLayer variable. This is set to a layer name (or layer-purpose pair name) on which all net labels must reside. When set, the purpose mechanism is not used. This is for compatibility with older cell libraries, and is otherwise not recommended.

Ignore net name labels
If this check box is checked, existing net name labels will be ignored. This is probably only useful for debugging. The IgnoreNetLabels variable tracks the state (set or not set) of this check box.

Find old-style net (term name) labels
Earlier releases of Xic recognized ``term labels'' in the layout as identifying the conductor groups associated with cell terminals. These are labels, optionally created by the user. They must be created on a conducting layer, and placed over an object on the same layer.

If this box is checked, Xic will search for these labels, and treat them as net labels. These labels are formally identical to net labels if the Net label purpose name is applied as an empty string, or the purpose name ``drawing''. In this case, the search for term labels, which is a separate search from the search for net labels, would be redundant.

This check box links to the set/unset status of the FindOldTermLabels variable.

Update net name labels after association
When checked, net name labels will be updated, and new net name labels possibly created, after association completes. The label text is obtained from corresponding electrical net names.

WARNING: don't use this feature unless you understand the potential consequences. It is essential that association be correct when labels are created or updated. Incorrect labels in a layout will prevent correct association and will cause LVS errors. These would probably need to be removed or corrected by hand.

To use this, once LVS passes for a cell, one can clear extraction with the Clear Extraction button, check this check box, then press Do Extraction. The layout will now contain the new and updated labels. Uncheck this check box, and save the cell. This should only be done as a final step when creating a new cell, not while the cell is likely to change.

The presence of the net labels should reduce the time needed to associate the cell. Otherwise the added labels are redundant.

The UpdateNetLabels variable tracks the state (set or not set) of this check box.

Merge groups with matching net names
If two physically unconnected conductor groups have the same logical net name (see 16.5), if this box is checked the groups will be logically merged and treated as a single group. This allows successful top-level LVS of cells containing split nets. Below the top level, split nets are detected by other means so checking this box is not required for successful LVS if the top-level contains no split nets.

The group names that apply are obtained from net name labels, or from cell terminals that have been placed by the user. By default, net name matching is case-insensitive, though this can be changed with the NetNamesCaseSens variable. The name matching also treats as equivalent various subscripting delimiters, as listed in the description of the Subscripting variable.

The MergeMatchingNamed variable tracks the state of this check box.

next up previous contents index
Next: Via Detection Up: The Misc Config Button: Previous: The Views and Operations   Contents   Index
Stephen R. Whiteley 2022-05-28