Cells in memory contain a number of flags. Most of these are used internally and can not be set by the user. All set flags can be seen in the Info windows when cell data are shown.
The table below lists all flags, with a brief description.
Flag Name | User Set | Set When, or Description |
---|---|---|
BBVALID | N | Cell bounding box is valid |
BBSUBNG | N | A subcell has unknown bounding box |
ELECTR | N | Cell contains electrical data |
SYMBOLIC | N | Cell has active symbolic representation |
CONNECT | N | Connectivity info is current |
GPINV | N | Inverted ground plane current |
DSEXT | N | Devices and subcircuits extracted |
DUALS | N | Physical/electrical duality established |
UNREAD | N | Created to satisfy unsatisfied reference |
COMPRESSED | N | Save hierarchy in compressed form |
SAVNTV | N | Save in native format before exit |
ALTERED | N | Cell data were altered when read |
CHDREF | N | Cell is a reference |
DEVICE | N | Cell represents a device symbol |
LIBRARY | Y | Cell is from a user library |
IMMUTABLE | Y | Cell is read-only |
OPAQUE | Y | Cell content is ignored in extraction |
CONNECTOR | Y | Cell is a connector |
SPCONNECT | Y | SPICE connectivity info is current |
USER0 | Y | User flag 0 |
USER1 | Y | User flag 1 |
PCELL | N | Cell is a PCell sub- or super-master |
PCSUPR | N | Cell is a PCell super-master |
PCOA | N | Cell is a PCell sub-master from OpenAccess |
PCKEEP | N | PCell sub-master read from file |
STDVIA | N | Cell is a standard via sub-master |
The flags with a Y in the second column can be set by the user, with the SetCellFlag script function and in other places, depending on the flag.
The first two user-modifiable flags are normally controlled by Xic, however it is possible for the user to change their state through the Flags button in the Cells Listing panel, and through the SetCellFlag script function.
The remaining flags are completely under control of the user, they are not set by Xic. These are set via the properties mechanism, from the Cell Property Editor (Flags property) or with the SetCellFlag script function. Using a property to control these flags provides persistence when saved to disk.