[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: How to deal with single/dual parts?



Peter Clifton wrote:
> Lets say I have a symbol:
>     ____
> ---|    \____
> ---|____/
>
>
> That might have 4 slots - IE.. I expect 4 of those nand gates in the
> chip.
>   

... and I think that might be where the problem suddenly creeps in.

The _component_ defines how many and what kinds of circuits it
contains.  It also defines what packages the component is available in,
and how to map the pins of its composing circuits to the pins on the
package.

The _symbol_, on the other hand, just expresses the designer's
_requirement_ for a circuit.  The symbol itself doesn't care which
_component_ satisfies that requirement, it's the developer's job to at
some point identify which circuit of which component will satisfy that
requirement.

To give a concrete example, let's say my schematic diagram contains
three nand symbols, which specifies a requirement for three nand
circuits.  Some other document would record that I will provide two
74ls00 components, which supplies the design with a bucket of eight nand
circuits plus two power circuits.  A tool that tries to correlate the
two documents can detect that my requirements are being over-supplied,
which means that my schematic diagram is missing symbols that correspond
to the actual number of circuits I'm providing.  Better fix that,
because some of those circuits are the power supplies for the components
and the other circuits won't work without them!  I add the appropriate
symbols to my schematic diagram until everything balances.

So then I change my mind, and provide just one 74ls00 component.  The
same tool can detect that now there's an imbalance in the other
direction, meaning that I need to get rid of one of the power symbols
and a few of the unused nand symbols that I added previously.  But
otherwise, the schematic diagram is the same as it was before--- as I
think it should be.

Now I'm beginning to see the problems with slotting and symbols the way
we're doing them now: they unnecessarily tie the concept of a symbol to
the concept of a component, because the pin numbers that we currently
record in our symbols are also the pin numbers that the component maps
to the pins of the component's package.  We have munged together the
concepts of symbol and component in our "symbol" files, but can't seem
to admit to that.

That's the breakage, methinks.



b.g.

-- 
Bill Gatliff
bgat@xxxxxxxxxxxxxxx



_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user