Device instance recognition by Calibre identifies sets of interacting device seed and pin shapes that match the specifications in a DEVICE statement.
The process proceeds as follows:
- It scans each layer that appears as a device layer in one or more DEVICE statements, together with all relevant auxiliary and pin layers.
- For each seed shape, identify an initial set of auxiliary shapes (if any), signatures (if any), and pins to which the seed shape is connected.
- Then it classifies the device if the resulting pattern of auxiliary shapes and instance pins matches one of the DEVICE statements; otherwise, it attempts to fill in missing pins from initial pins to obtain a unique match.
- Calibre considers the device ill-formed (bad), if the pin-fill algorithm fails to find a match.
The DEVICE BY NET keyword (the default) tries to
replicate a single net attached to one of these pins when not enough independent nets were found using the pin-fill algorithm.
In case that this pin shares a layer with an existent pin, the algorithm is successful. However, if the missing pin has a unique layer, the fill in algorithm fails, and the device is considered bad
In the case of the source and drain pins for MOSFET devices, this allows the recognition of devices with shorted source and drain pins, even though only one unique net is present for the device.
For more information regarding this matter please follow this link: Recognition Logic
As for the property calculations, the behavior is explained under this section " Property Distribution for Shorted Device Pins "