[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: gEDA-user: Solving the light/heavy symbol problem
> Yes, any annotation to just one instance of a package in a layout
> would back annotate to an instance attrib attached to a symbol
> instance in a schematic,
Or to an instance attrib on the *parent* schematic, that says "when
you descend here, use these attributes"
IMHO this goes back to my observation that "a layout knows frmo which
schematics it came, but a schematic does not know to which layout you
refer". In a heirarchy, only the "higher" level schematics know what
the heirarchy is, the sub-schematics don't, so the higher ones need to
retain the instance-specific data.
Otherwise, the first time you re-use that sub-schematic in a different
project, the instance data will be horribly misplaced.
> A way to netlist hierarchy with respect to instances without
> flattening-renaming-flat first is needed to do back and forth
> annotation and cross probing.
You just need a way to store a "path" to the symbol in the element.
It doesn't have to be the refdes, it just has to be something
gschem/gnetlist can use to refer to the symbol in the hierarchy. It
*could* be a refdes, or it could be an array of GUIDs encoding the
path through the hierarchy.
However, consider a slotted part: you'd need one path *per slot*. So
if you use two quad NAND gates for one gate in each of eight instances
of a subcircuit, and you change the package for one of those quads,
you need to know which four of the eight subcircuits are affected.
And if you gate-swap between packages, you then need to know which two
subcircuits get their gates swapped.
And since I don't use heirarchy, I can only assume it's even more
complicated than that ;-)
_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user