A cell name can be selected by clicking on the name. Only one name can be selected at once, and it will be highlighted.
A number of buttons appear along the left edge of the panel. Without a selection, these buttons are grayed. Selected names are acted on by buttons of the panel, which become active when a selection is made. The buttons enable functionality described below.
This button will clear top-level cells (those not used as a subcell by any other cell in memory, and marked with an asterisk in the list) or all cells from memory. If a top-level cell is selected in the text area, that cell and its descendents which are not referenced outside of the hierarchy are removed from memory, after confirmation. There is no ``undo'' of this operation. If the cell is not top-level in both electrical and physical modes, the command exits with a warning message. If no cell is selected, the entire symbol table will be cleared (after confirmation). The user is first given a chance to save any unsaved work. The current editing cell becomes the next cell given on the command line, or the default ``noname'' cell if no other cell was specified. This command can not be undone, and anything cleared is very definitely gone.
The Tree button is used to bring up the Cell Hierarchy Tree pop-up, which can also be initiated with the Show Tree button in the Cell Menu (for the current cell). From the Tree button in the Cells Listing panel, the Cell Hierarchy Tree pop-up will display the hierarchy of the selected cell.
Pressing the Open button will load the selected cell into the main window, for display or editing. Cells can also be dragged from the listing and dropped into drawing windows, with a similar effect.
Pressing the Place button will cause the selected cell to become the current master cell, and the Cell Placement Control panel will appear. Instances of the master can be created by pressing the Place button in the Cell Placement Control panel, then clicking on locations in a drawing window.
The Copy button allows an existing cell to be duplicated under a new name. The user must explicitly save the copied cell to disk if the new cell is not placed in a hierarchy saved as an archive file, otherwise the copied cell will be lost when the program is exited, though the new cell is marked as ``modified'' so the user will be prompted to save it when exiting. Pressing Copy will cause a dialog box to appear asking for a new name for the cell. A copy will be made if the user enters a valid new name, which must not already be in use. The new name will become highlighted in the cell listing.
Any cell can be copied. Copies will always be created with the IMMUTABLE and LIBRARY flags (see below) unset.
The button allows replacement is cell instances selected in a drawing window to be replaced with instances of the selected cell. Pressing the button brings up a confirmation pop-up. A `yes' response will initiate the replacement. The current transform is ignored when replacing cells from this panel, which is different from the Replace function in the Cell Placement Control panel from the side menu.
When a cell is replaced, the placement of the new cell is determined in physical mode by the setting of the Origin/Lower Left buttons in the Cell Placement Control panel (though it may not be visible). When Lower Left is active, the lower left corner of the replacing cell corresponds to the lower left corner of the replaced cell, otherwise the cell's origins are used. In electrical mode, the reference terminal (the first connection point) is always placed at the same location as the reference terminal of the replaced cell.
The Rename button allows a cell in memory to be given a new name. All references to the cell throughout the symbol table will be changed to call the new name. This is useful to avoid name clashes in designs intended to be merged with other designs. Note that the newly named cell should be explicitly saved as a file if in native format, or it may be lost when the user exits. The cell will be saved in the hierarchy if an ancestor cell is written to an archive file. The user must remember to save any cells which call the renamed cell (the MODIFIED flag is set for these cells, so that the user is warned at program exit).
Pressing the Rename button brings up a dialog box asking for the new name. The renaming is effective if a valid new name, which must not already be in use, is given.
Leading and trailing white space is stripped from the name, and any non-empty name is accepted, though a warning is issued if the name contains a character that may cause trouble. The GDSII specification allows alpha-numerics plus `$' (dollar sign), `_' (underscore), and `?' (question mark). A character not in this list will trigger the warning. The user should stick to valid cell names when possible.
Cells with the IMMUTABLE flag (see below) set can not be renamed. Cells with the LIBRARY flag set can be renamed, which will unset the LIBRARY flag.
In normal display mode, when the Search button is pressed, the listing will initially contain only cells in the hierarchy of the current cell, selections in the listing are ignored. If the user clicks in a drawing window displaying the current cell, the listing will then contain only cells with instances that appear under the click location. If the user drags button 1 to define a rectangle in a drawing window displaying the current cell, only cells that have instances that appear in the drag rectangle will be listed. These operations can be repeated, the listing will be updated after each operation. Pressing the Search button again to deactivate it will revert to listing all cells in the current symbol table.
In CHD display mode, when the Search button is pressed, the listing will contain cells found in the CHD, including and under the cell currently being displayed in the main window. Clicking or dragging in the window will restrict the cell listing as in the normal display mode.
The label at the top of the Cells Listing will show the search area coordinates in microns, unless the InfoInternal variable is set, in which case internal units are given.
Cells in the main database have two flags which can be modified by the user. The IMMUTABLE flag indicates that the cell is read-only, and can not be modified or renamed. The LIBRARY flag indicates that the cell was read through the library mechanism. Cells with the LIBRARY flag set are not included when writing output, unless the Include Library Cells check box in the Export Control panel is active, or equivalently the WriteAllCells variable is set.
Cells read into the database through the library mechanism will have both the IMMUTABLE and LIBRARY flags set. The panel that appears when the Flags button is pressed allows the user to change the flag states, and corresponding cell behavior.
If no cell name is selected, all of the cells listed in the Cells Listing will be displayed in the Set Cell Flags panel, along with colored indicators of the status of the two flags. If a cell name is selected, only the selected cell will be listed in the Set Cell Flags panel upon pressing Flags. Clicking on the indicators will toggle the indicators. The indicators can also be set globally with the buttons above the listing. The Apply button must be pressed to actually change the flags in the cells.
Cell flags can also be listed and set/unset with the !setflag command.
If the IMMUTABLE flag of the current cell is set, user interface editing features are disabled. The Enable Editing button in the Edit Menu can also be used to set the state of the IMMUTABLE flag of the current cell.
Setting the LIBRARY flag is a means to prevent cell definitions from appearing in the output file when the hierarchy is written. It is occasionally necessary to use this feature to enforce resolution of cells from another source in a subsequent read, perhaps from a different library or another layout.
It is also useful on occasion to create a customized library cell, which will become part of the user's cell collection. In this case, the LIBRARY and IMMUTABLE flags for the library cell would be unset, and the cell modified to the user's needs, and the user's cell hierarchy written to disk. On subsequent reads, the user's version of the cell, which will exist in the file, will satisfy the references, rather than the version from the library.
Another way to accomplish this, perhaps somewhat safer, would be to copy the library cell to a new name (using Copy), and reference instances of the copy instead of the library cell. Copies do not have the flags set (unless reset by the user).
In normal display mode, the Info button produces a pop-up that provides information about subcells and other objects, as from the Info button in the View Menu. If a cell name has been selected in the listing, the Cell Hierarchy Tree pop-up, or in a drawing window, pressing the Info button will display a window containing information about the cell. This information includes the size, number of objects and subcells, and cells for which the selected cell is a subcell. If this button is pressed when there is no selected cell name, the info window will also appear, but contain no data. In any case, when the info window is visible, clicking on objects in drawing windows will reload the window with information about the object.
In CHD display mode, information contained in the CHD is shown, for a selected cell or the displayed top-level cell if there are no selections. The information in the CGD is dependent upon the parameters used when the CHD was created.
The Show button enables a mode where cell instances are highlighted in the main drawing window. If a cell name has been selected in the listing, all instances of the cell will be outlined in the highlighting color. The outlines apply to all instances of the cell, regardless of the level in the hierarchy or expansion status. This facilitates finding instances of a cell in a complex hierarchy. The display will track the currently selected cell name in the listing. If no selection, no highlighting is shown, until a selection is made. Only one cell can be highlighted at once. The number of instances found of the selected cell will be printed in the prompt area.