Chapter VIII: CREATING NEW ENVIRONMENTS

icon

The Node Facets

icon


Nodes are the components in a technology, and they are constructed from pieces of geometry on the layers.

To edit an existing node, use the Edit Primitive Node command of the Technology menu, and to create a new node use the New Primitive Node subcommand of the New Primitive command. Once a node is being edited, the next one in sequence can be edited with the Edit Next Primitive command. The current node can be deleted with Delete this Primitive. Also, you can rename a node with the Rename Object command of the Info menu, but remember to use the name "node-" in front (i.e. the old name is "node-metal1-metal2-contact" and the new name is "node-via"). Finally, you can rearrange the order in which the nodes will be listed by using the Reorder Primitive Nodes subcommand of the Reorder Primitives command.

Figure 8.12

There are a few pieces of textual information on the right side of the facet which can be updated by highlighting them and using the technology edit button.

Figure 8.13
The "Function" entry describes the node's function, which is a different set than the arc and layer functions. The menu of possible node functions is shown here.

The "Serpentine transistor" entry indicates that this is a MOS transistor and it can take arbitrary trace information to describe its geometry.

The "Square" entry forces the node to always have the same X and Y dimension when scaled.

The "Invisible with 1 or 2 arcs" entry indicates that the node will not be drawn if it is connected to exactly one or two arcs. This is useful in schematic pins, which are only visible when unconnected or forming a junction of 3 or more wires.

The "Lockable" entry indicates that this node can be made unchangeable along with other lockable primitives, when the lock is turned during editing.

For nodes, it is common to sketch four different examples of the node in varying scales, so that X and Y scaling rules can be derived (square nodes only need two examples). If only one example is specified, default scaling rules will be presumed.

The smallest example, called the main example, is used as the default size and also contains all of the special port information. Needless to say, it is important to keep the geometry of each example well apart from the others so that the technology editor can distinguish them.

Each example must contain the same geometric layers (only stretched). As in the Arc facets, pieces of geometry can be created by selecting from the component menu on the left, creating the geometry, and then using the technology edit button to assign a layer to the geometry. If any polygonal geometry is used (for example, the Filled polygon entry, sixth from the top), they require trace information to be assigned with the Polygon Edit command of the Edit menu. If the Opened circle arc entry is selected (second from the bottom), you can specify the number of degrees of the circle with the Get Info command of the Info menu.

Each example must also contain a highlight layer to indicate the correct highlighting on the display. Select the "HIGH" entry in the menu on the left to create this special type of layer.

Each example must also contain port information. Select the "PORT" entry in the component menu to create this special type of layer. You will have to provide a name for each port, and the name must be the same on each example. Ports on the main example must also have connectivity information (which arcs can connect to them) and range information (the permissible angle of connected arcs). Use the technology edit button to set this (see the sample menu on the left). Each possible arc listed can have its connectivity set by typing "y" or "n" when pointing to its name in the menu. The range consists of two numbers: a main angle (in degrees counterclockwise from 3 O'clock) and a variance about that angle. For example, a port angle of 90 with a port angle range of 45 describes a port that points upward and can connect at angles up to 45 degrees off from this direction. The range will be graphically depicted.
Figure 8.14

The ports on the main example must also indicate any internal electrical connectivity by actually connecting them together. For example, the two polysilicon ports on a MOS transistor should be connected in the main example. Use the selection and toggle select buttons on the two ports, then use the creation button to join the ports with a universal arc. Do not put this internal connection on any example other than the main one. To see the location of all ports on the main example, use the Identify Ports command.

Although the "grab point" is usually defined to be the lower-left corner of the highlight area, this can be overridden by placing a Facet-Center at the appropriate location in the main example. Placing this mark in the center will cause instances of the node to be placed by their center location rather than the corner of the highlight area. To get this node, use the Facet Center subcommand of the New Special Object command of the Edit menu.

As with arcs, use the Identify Primitive Layers command to label each piece of geometry in the main example.

There are some special cases available in node descriptions. A piece of geometry in the main example may be changed (with the technology edit button) to SET-MINIMUM-SIZE. This indicates that the current size is the smallest possible, and it cannot scale any smaller (this is used by the "mocmos" technology for the metal layer in contacts). The restriction can be removed with the CLEAR-MINIMUM-SIZE description.

Another special case in node description is the ability to specify multiple cut layers. If the larger examples have more cut layers, rules are derived for cut size and spacing so that an arbitrary numbers of cuts can be inserted as the contact scales.

Although serpentine MOS transistors are a special case, they cannot be automatically identified, but must be explicitly indicated with a textual field on the right. Besides this explicit indication, the transistor node must contain four ports: two on the gate layer (polysilicon) and two on the gated layer (diffusion, active). A standard geometry must be used that shows polysilicon and diffusion crossing in a central transistor area. Any deviation from this format may cause the technology editor to be unable to derive serpentine rules for the node.

Besides the standard nodes for transistors, contacts, and other circuit elements, it is necessary to build pin and pure-layer nodes. There should be one pin for every arc, so that the arc can connect to others of its type. The pin should be constructed of pseudo-layers (i.e. it has no real geometry), should have the "pin" function, and should have one port in the center that connects to one arc. The technology editor will issue a warning if there is no pin node associated with an arc.

The pure-layer nodes should also be built, one for each layer. They should have only one piece of geometry and have the "pure-layer" function. The technology editor will issue a warning if there is no pure-layer node associated with a layer.


Prev Previous     Contents Table of Contents     Next Next