If this check box is set, this operation will be somewhat different. Only the selected cell will be brought into main memory, and any subcells will become reference cells in main memory. Reference cells use virtually no memory, and serve as pointers to the originating CHD. When the cell is written to disk, the reference cells will be expanded and the complete hierarchy written. However, their contents can not be edited.
The default cell name conflict behavior can also be set with three boolean variables: AutoRename, NoOverwritePhys and NoOverwriteElec. If AutoRename is set (with the !set command or otherwise), the other two variables are ignored, and the auto-rename mode is enabled. If none of these variables is set, then the default action is Overwrite All.
When a cell is encountered while reading an archive file or native cell into memory with the same name as a cell already in memory, and we are overwriting cells in memory, the new cell will overwrite the existing cell in memory in most cases. The exception is for existing cells that were read through the library mechanism. These cells have the IMMUTABLE (read-only) and LIBRARY flags set.
The IMMUTABLE flag has no bearing on whether or not a cell can be overwritten in memory. The overwritten cell will no longer be IMMUTABLE. In releases prior to 3.0.11, IMMUTABLE cells would not be overwritten.
If the existing cell has the LIBRARY flag set, it will be overwritten, unless the NoOverwriteLibCells variable is set. A warning message will be included in the log file in this case, but the read will be successful, with the result being as if overwriting was not enabled. If overwritten, the cell will no longer have the LIBRARY flag set. In releases prior to 3.0.11, LIBRARY cells would always be oversritten, unless IMMUTABLE was also set, which is the default for library cells.
This state can also be enabled by setting the boolean variable NoAskOverwrite with the !set command.
This mode applies when reading input from a layout file, and is separate and unrelated to the Merge Boxes, Polys button in the Edit Menu and the NoMergeObjects variable, which have ne effect when reading layout data.
However, on layers where the NoMerge technology file keyword is set, box (or any object) merging is inhibited, in all cases.
This mode can also be enabled by setting the boolean variable NoPolyCheck with the !set command.
This menu tracks the status of the DupCheckMode variable.
This mode can also be enabled by setting the boolean variable NoCheckEmpties with the !set command.
Unlike other controls in this panel, this mode applies not only when reading a layout file into the database, but also when reading a file during translation, such as with the Conversion panel.
In Xic, text labels are included when the bounding box of a cell is computed. If a text label actually determines the boundary of a cell, the bounding box of the cell may report differently from other tools. The effective size of a text label is not well defined, and other tools will probably make different assumptions about font size, etc., or may not include text labels in bounding box computations.
The state of this check box tracks the status of the NoReadLabels variable.
This mode can also be enabled by setting the boolean variable NoMapDatatypes with the !set command.
The layer directive has the syntax
L token;
If the token is an integer, it might indicate the name of a layer with the name being the same integer string, or it might be an index into the layer table. The choices in the menu enforce these two behaviors.
The default resolution method (Try Both) works as follows: The parser reads ``L token;''. If token matches an existing layer name (as string comparison), that layer is accepted. If there is no matching layer, and the token is an integer in the range of 1 through a maximum number, and there is no leading 0, the token is tested as an index. if a layer exists with that 1-based index, that layer is chosen. If the layer still has not been resolved, a new layer is created in the layer table, with the given (numerical) name.
The option menu gives two additional choices. The By Name choice will skip the index test. If the string match fails with all existing layers, a new layer will be created. If the By Index choice is selected, the layer tokens are assumed to be integers. The string match test is skipped. If the index test fails, an error is reported and the operation aborts. New layers are never created in this mode. The layer tokens must be positive integers with no leading zeros that have a corresponding layer table entry.
The CifLayerMode variable corresponds to this set of options, where its value of 0-2 corresponds to the three choices.