start => gnetlist_ug

« Hierarchy | gEDA gnetlist User Guide | Implicit pins »

## Slots and slotting

Some integrated circuits provide several identical and interchangeable devices in a single package. The classic “4000” series of logic devices is a good example of this; for example, each 4001 package contains four 2-input NOR gates. gschem and gnetlist provide support for working with these by using slots.

Check the “4001-1.sym” symbol in the “4000-series logic” symbol library for an example of how to use slotting and implicit pins.

Detailed information on slotting attributes can be found in the Master Attributes List.

gnetlist uses several symbol attributes to enable slotting. All must be present for gnetlist to process a slotted component correctly.

1. Every pin must have a “`pinseq=`” attribute and a “`pinnumber=`” attribute.
2. The “`numslots=`” attribute indicates how many slots a component has.
3. There must be one “`slotdef=`” attribute for each slot. This contains information about the pin numbers of the pins associated with each slot.
4. A “`slot=`” attribute attached to each component in the schematic indicates which particular slot to use.

When processing a slotted component, gnetlist first looks for a “`slotdef=`” attribute matching the value of the “`slot=`” attribute. It uses the value of the “`slotdef=`” attribute to renumber the pins for the correct slot. It then merges the component with other components with the same “refdes”.

gnetlist does not currently support slotting across hierarchy. The slots in a package cannot be split between different subcircuits.