Mail Archives: geda-user/2015/07/18/19:44:43
On Sun, Jul 19, 2015 at 12:09:52AM +0200, Roland Lutz wrote:
> On Thu, 16 Jul 2015, Girvin R. Herr (gherr375 AT sbcglobal DOT net) [via geda-user AT delorie DOT com] wrote:
> >I have been doing some symbol work in gschem and I got confused
> >again about attached attributes vs detached attributes. The
> >manuals do not go into detail about usage. Hint, hint. Can
> >someone tell me what is the difference between them and where I
> >should apply one vs the other?
>
> An attribute is a specially formatted text object which can be
> attached to a component, net, bus, or pin, or not be attached at
> all.
>
> An attribute which is not attached to an object is called a "floating" or
> "toplevel" attribute. Floating attributes are used for two purposes: in a
> symbol, they contain default attribute values. In a schematic, they
> contain information global to that schematic page; for example, the VHDL
> backend searches for a toplevel "module-name" attribute in the schematic,
> and John Doty's spice-noqsi backend searches for "spice-prolog" and
> "spice-epilog".
>
> An attribute which is attached to a component overrides the value from the
> symbol's floating attribute. (There are some exceptions to this like the
> "graphical=1" attribute which can't be properly unset by attaching an
> attribute to the component.) You can delete an inherited attribute by
> attaching an attribute with the value "unknown" to the component.
>
> You can't attach an attribute to a specific pin of a component's
> symbol, so you can't override pin attributes when you instantiate a
> symbol in a schematic. There is a special slotting mechanism,
> though, which allows you to select one of a set of pre-defined pin
> numbering schemes.
>
> It is important to understand that the attributes inherited from the
> symbol (both floating and attached to a pin) live in the symbol file,
> whereas the attributes attached to the component live in the instantiating
> schematic file. You don't have a way to change the symbol from the
> instantiating schematic; the way to change inherited attributes is to
> attach an attribute with the same name and another value to the component.
> (You could obviously change the symbol by embedding it and hacking the
> schematic file, but AFAIK, there is no way to do this in gschem.)
>
> When creating a component, some floating attributes from the symbol are
> usually copied to the schematic and automatically attached to the symbol,
> hiding the inherited attributes. This is called "attribute promotion".
> The default set of promoted attributes is: footprint, device, value,
> model-name, and symversion.
>
> The menu items "Attributes/Attach" and "Attributes/Detach" are used
> to attach floating attributes to components, nets, buses, and pins,
> and to convert attached attributes back to floating attributes. You
> don't need these for normal gschem usage. (If you still want to try
> them, take extra care not to accidentally lose invisible attributes.
> You can type "e n" to make invisible text temporarily visible.)
"e n" is a big hammer and often results in an extremely cluttered
display: if you select a component, typing "t t" will toggle the visibility
of the attributes of the component which is much less invasive. Typing
"t t" again obviously reverts the operation.
Gabriel
- Raw text -