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@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user