Using Electric 12-3: The Facets Menu

Chapter 12: MENU SUMMARY

| ## 12-3: The Facets Menu |

Cell facets are collections of circuitry. Each facet of a cell has a view type (layout, schematic, etc.) and a version number. Because facet instances may be placed inside of other facets, the facet notion defines hierarchy in Electric.

### Edit Facet... [3-2]

This command displays an existing facet or creates a new facet in the current window. You are prompted for its name and view type. Use the "New Facet" button to create a new one. |

### Delete Facets... [3-2]

This command deletes facets. You will be given a list of facets, and can select the ones that you wish to delete.

### Cross-Library Copy... [3-10]

This command presents a dialog that shows facets in two different libraries, and indicating which ones are newer. You can select a facets in either library and copy or move them to the other. In addition, if the facet has subfacets or associated views that are newer, they can also be copied. The "Examine Contents" button compares the contents facets whose dates are different and displays an indication of whether they are actually different or just out of date. The "Examine Contents Quietly" button does the same thing, but it does not explain which differences have been found. |

### Duplicate Current Facet [3-2]

This command makes a copy of the facet in the current window and gives it a new name. You will be prompted for the new name. The new facet is placed in the same library as the old one.

### Rename Cell [3-1]

This command allows you to rename a cell in the current library. All facets with that cell name are renamed.

### Project Management [6-11]

| This set of commands controls the interactions of multiple users working together on a single library. Subcommands are available for checking facets in and out, for updating your personal copy of the library from a master library, and other features.

| Check In and Out... |
Presents a dialog showing all facets in the library, and allowing you to check them in and out of the project management system. |
| Update | Updates the current library from the master library.
| Check Out This Facet | Checks out a facet from the master library.
| Check In This Facet | Checks the current facet into the master library.
| Add This Facet | Adds the current facet to the master library (if it is not part of the project management system).
| Delete This Facet | Deletes a facet from the master library.
| Old Version of This Facet | Access old versions of a facet.
| Set User... | Sets user identification for project management.
| Build Project | Converts the current library into a master library for subsequent sharing.

### Facet Options... [3-7]

This command presents a dialog that allows options to be set for facets in a specified library. The check box "Disallow modification of anything in this facet" prevents any change to the selected facet (this prevents accidental changes to a facet during examination). The check box "Disallow modification of instances in this facet" prevents changes to instances inside of the selected facet (this prevents accidental changes to a facet during wiring). The check box "Part of a cell-library" indicates that this facet is from a library of standard cells and should be treated accordingly (these facets can be filtered out of facet lists in many dialogs). Buttons on the right can set or clear these bits for all facets. New instances can be expanded or unexpanded (expansion determines whether the node is drawn as a black-box or with its contents visible). The "Characteristic Spacing" is the spacing of this facet when arrayed (see the Array... command of the Edit menu).

The bottom half of the dialog has options that apply to all facets. The check box "Check facet dates during creation" causes creation and modification information to be used to ensure that the hierarchy has been built in the proper order. The check box "Switch technology to match current facet" causes the current technology to change whenever the current facet changes so that it is appropriate to that facet. The check box "Place Facet-Center in new facets" requests that all newly created facets have a Facet-Center node placed at the origin (see Section 3-3 for more on Facet centers). The check box "Tiny facet instances hashed out" causes the contents of facet instances to be a gray hash area when zoomed too far out to be distinguishable. You can control the number of lambda per pixel that triggers the hashing-out of facets.

### Facet Explorer... [3-7]

This command splits the current window, and shows a hierarchical "explorer" window in the left half. A recursively indented list of facets-within-facets is listed, and you can explore your circuit's hierarchy.

### Show Facets Graphically [3-7]

| These commands display a graph showing the hierarchy of facets in the current library. The graph is actually a new facet that contains Artwork components. Thus, it will be stored with the library and may be edited, printed, etc.

| Entire Library | Creates a graph of every facet in the library.
| From Current Facet | Creates a graph showing the current facet at the top, and all subfacets below it.

### Facet Information

| This set of commands gives information about facets.

| Describe this Facet [3-7] | This command displays information about the facet in the current window.
| Describe all Facets [3-7] | This command displays a list of all facets in the current library, with their creation and modification dates shown.
| Describe all Facets to File... [3-7] | This command creates a disk file with a list of all facets in the current library, with their creation and modification dates shown. The information in this file is tab-separated, for ease of reading into spreadsheets.
| List Nodes in this Facet [3-7] | This command displays a list of all nodes in the current facet.
| List Facet Instances [3-7] | This command displays a list of facet instances contained in the current facet.
| List Facet Usage... [3-7] | This command prompts for a facet and displays a list of places where the it exists as an instance.
| List Placeholder Facets [3-9] | This command lists all facets that were created because of inconsistencies found in cross-library references. Such facets are created when a library is read that makes reference to another library, but the facet in that other library is no longer consistent with the original (this happens if libraries are edited in an inconsistent fashion). Placeholder facets are created to keep a consistent circuit.

### Down Hierarchy [3-5]

This command changes the current edit window so that the facet whose instance is currently highlighted is now the editable facet. When an icon is selected, its contents (schematic) is edited. If the icon is inside of its own schematic (a documentation feature) then going down does edit the icon.

### Down Hierarchy in Place [3-5]

This command changes the current edit window so that the facet whose instance is currently highlighted is now the editable facet. However, if the instance is transformed (rotated or mirrored), it is edited in that orientation.

### Up Hierarchy [3-5]

This command returns editing to the higher level of hierarchy in which the current facet is instantiated. It thus travels back up the hierarchy that was descended with the Down Hierarchy command. If an export is highlighted, that network is highlighted in the outer facet. If there was no Down Hierarchy, and the higher level facet cannot be determined, a list of possible facets will be presented. Arbitrary depth of hierarchy can be traversed with these two commands by repeating them.

### Expand Facet Instances [3-4]

| These commands cause the highlighted facet instances to be expanded, which means that their contents will be displayed.

If their contents is already being displayed, this will cause the contents of any subfacets to be displayed, repeatedly down the hierarchy. Once expanded, these facet instances will always display their contents until the Unexpand Facet Instances commands are issued. For a temporary view of the contents of an instance, use Look Inside Highlighted. Note that the expansion information can also be set in the Get Info dialog of the Info menu.

| One Level Down | The next level of unexpanded facets is made visible.
| All the Way | All facets from here to the bottom of the hierarchy are made visible.
| Specified Amount... | You are prompted for a number of levels of hierarchy, and that many levels of depth are made visible.

### Unexpand Facet Instances [3-4]

| These commands cause the highlighted facet instances to be unexpanded, which means that they will be displayed as black boxes.

If there are expanded subfacets, these are closed first and subsequent commands will unexpand up the hierarchy. Note that the expansion information can also be set in the Get Info dialog of the Info menu.

| One Level Up | The next level of expanded facets, from the bottom of the hierarchy, is unexpanded.
| All the Way | All facets from here to the bottom of the hierarchy are closed.
| Specified Amount... | You are prompted for a number of levels of hierarchy, and that many levels of depth are closed.

### Look Inside Highlighted [3-4]

This command displays all layout in the currently highlighted area, all the way down the hierarchy. This "peek" into the facet instances is temporary and will not be shown again if the window is redrawn in any way. To get a permanent view into a facet, use the Expand Facet Instances command above or set the "Expand" option in the Get Info command of the Info menu.

### Package into Facet... [3-8]

This command creates a new facet, possibly in a new cell, that contains all of the circuitry in the currently highlighted area. You will be prompted for the new facet name. The highlighted area is defined as the bounding rectangle of everything that is highlighted. Arcs that cross outside of the bounds will not be copied. A more precise way of defining a highlighted area is to use the rectangle select button.

### Extract Facet Instance [3-8]

This command takes the currently highlighted facet instance and replaces it with its contents. This is conceptually the opposite of Package into Facet... as it removes a level of hierarchy. If multiple facet instances are highlighted, all of them are extracted.

### New Version of Current Facet [3-2]

This command makes a copy of the facet in the current window. Version numbers appear in the facet name as a semicolon followed by a number (except for the most recent facet which has no version notation). For example, after the duplication of facet MyCircuit, there will be the facets MyCircuit and MyCircuit;1. The current facet, which has no explicit version number in its name, actually is version 2 (smaller version numbers are older).

### Delete Unused Old Versions [3-2]

This command deletes all facets in the current library that are not the most recent version and are not being used as instances in some other facet. It essentially cleans up the library when too many versions have been created. As with all commands, this can be undone with the Undo command of the Edit menu.

### Read Text Facet... [4-10]

This command reads a disk file into the current text window. It replaces the existing contents.

### Write Text Facet... [4-10]

This command saves the current text window to disk.

| Previous |  |  | Table of Contents |  | Next |