[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: gEDA-user: wishful UI
Hi John Doty,
On Aug 14, 2010; 02:45pm; John Doty wrote:
> No. It can happen whenever you have multiple
> symbols with the same refdes, regardless of
> the back end. Slotting is a particular case
> of this, but not the only one. It's a pure
> gnetlist problem, having nothing to do with
> pcb.
That is the problem, "whenever you have multiple
symbols with the same refdes", as I suspected
and mentioned in my previous post.
You might already know, other backends such
as Verilog, VHDL, etc do not have this
problem, because they all expect unique
"refdes" value for each symbol instance.
Gnetlist frontend algorithm expects unique
"refdes" from the schematic file to give you
the correct result. This is reasonable,
because the Gnetlist frontend treats "refdes"
attribute value in .sch file as unique ID
for "LOGICAL_SYMBOL"; instead of for
"PCB_PACKAGE" which may contain variable
numbers of "LOGICAL_SYMBOL"s.
The final PCB netlist wants to see "PACKAGE_refdes"
instead of "LOGICAL_SYBOL_refdes". So one of the
solution is (as I stated before and expalin
here):
1) Assign unique "refdes" value to all netlistable
logical symbols in the schematic. If the
logical symbol is one of several in a
"PHYSICAL_package", then assgined "refdes"
to each logical symbol such as "Uxx_yy";
where yy is the value to identify
a particular "LOGICAL_SYMBOL" among several
within a "PCB_PACKAGE"; and xx value is the
ID to differentiate among all "PCB_PACKAGE"
for your design. Uxx is what you want to
see in your PCB netlist.
2) Your backend Scheme code should strip the
"_yy" from "Uxx_yy" when outputing your
PCB's "PACKAGE_refdes" Uxx.
If this solution is not what you want, there
are others I can suggest. Yes, ofcourse, you
can fix it at the Gnetlist frontend, in which
case, that fix should not affect other backends
which require unique "refdes" for symbol instance.
Best Regards,
Paul Tan
_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user