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

Re: gEDA-user: finding shorts with gschem



>>> I did "grep -Ri vdd *" in the base directory of symbols.
>>>
>>> I noticed the "net=Vdd" thing, but in connection with something weird in
>>> 4000/.  All of these symbols include a "net=VDD:??" statement.
>>
>> Does anybody use 4000 series CMOS anymore?
>
> They're the 4016 (Quad analogue switch) and the 4052 (Dual 1/4 CMOS MUX).
> Can you can suggest suitable 74xx series equivalents?  I'm working from a
> 10-15 year old schematic.

I see that several others who are more knowledgable than I have made
suggestions about this.  It's interesting also to see how much usage
the old 4000 stuff gets, even now.

>> But no matter.....  these net= callouts are attaching the net VDD to
>> pin ??? IIRC.  I'm not sure what this would do to your netlist if you
>> put one of these in your schematic and tried to netlist it.  Nothing
>> good, I suppose...
>>
>> Your best bet is to fix this callout if you are using a 4000 series
>> part.
>
> "fix this callout"?  What do you mean?

The "net=VDD:??" attribute in the .sym file should be
replaced by something like "net=<netname>:<pinname>.  Here's the
documentation describing how the net attribute is supposed to be set
up in .sym files:

http://geda.seul.org/wiki/geda:na_howto

Therefore, you need to update the .sym file to work in accordance with
the way the net attribute is described.

I'll go out on a limb here and suggest you do the following:

1.  Edit the .sym file so the attribute looks like
"net=?:<pinnumber>".  The ? is a placeholder, and <pinnumber> should
be the number of the pin which is attached to the power net.

2.  Place the new symbol in your design.

3.  Double click on the symbol and bring up the attribute editor
window.  You should see net and ?:<pinnumber> in the attribute list.

4.  Set the value of the net attribute to VCC:<pinnumber>.  (Or
whatever power net you want.)

5.  Now netlist your design using whatever netlister you want.  If
you're making a PCB, then use gsch2pcb.

6.  Inspect the netlist file generated (.net file).  Open the netlist
file up in a text editor, and verify that your part has pin
<pinnumber> attached to your preferred power net.

>>> This created an interesting problem with power/vdd-1.sym which has
>>> "net=Vdd:1". These statements are not case-insensitive.
>>
>> If you are using the vdd-1.sym symbol in your design, then this
>> attribute is creating a global net called Vdd, whether you want it or
>> not.   If you want this, that's fine.  If not, then you need to change
>> the name of the net to your desired netname, e.g. "net=mynetname:1".
>
> Right, but there was the bizarre effect of some object containing
> net=Vcc:? and net=Vdd:? somewhere, but disappearing when the Vcc and Vdd
> symbols were not used.  That made me suspect there's a problem in the
> interpretation of the symbol files, not in the symbols themselves.

Naw, the net=VDD:?? is bad syntax in the .sym file.  It doesn't call
out the pinnumber to which to attach VDD.  The netlister is probably
being confused by this, and is then attaching VDD to something random.

>>> Now, in retrospect regarding the request for manual critique, I think
>>> there ought to be a chapter specifically on the proper use of symbols in
>>> power/.
>>
>> You're likely doing it right.  The problem is that some of the symbols
>> have junk in them which doesn't belong.  This is an issue with heavy
>> symbols.  Caveat Emptor.
>
> Ah...  So perhaps I should ask for write access to the CVS to go through
> and fix this?  There are loads of other goofs I keep stumbling over in the
> standard symbol set, which is part of the reason why I started making my
> own.

Right now the best thing to do is submit patches to SF.net, or get
your own git repo and then start making your corrections there &
notifying geda-devel about what's there.  Then one of the more active
developers could look at your stuff and pull your updates out of
there.

Stuart


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