[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

gEDA: Dumb (g)netlist question.




Hi All,

	This may be a really dumb question, but here it is anyways. :-)


	Suppose you have a circuit which looks like this:

v 19990829
C 17900 22900 1 0 0 7404-1.sym
{
T 17800 23800 5 10 1 1 0
uref=U100
}
N 17400 23400 17400 24500 4
{
T 17500 24100 5 10 1 1 0
label=NETNAME
}
C 17200 24500 1 0 0 vcc-1.sym
N 17400 23400 17900 23400 4



	Here's a textual description:

		You place an inverter gate and the symbol for VCC on a
		schematic sheet.  You connect one of the pins (input)
		of the hex inverter to say the VCC symbol.  You are
		connecting Vcc (or whatever) to the input of the
		inverter gate.  

		So far that's a valid thing to do.  Maybe a bit odd, but
		valid never the less.  Then you:
	
		You label the connection between Vcc and the input pin
		as NETNAME. (using the label= attribute)

	I've been working on the power/gnd mechanism in gnetlist (the net=
	attribute) and when you do the above you are in fact creating
	a net called +5V (this net is defined in the VCC symbol as:
	net=+5V:1) and connecting it to the input pin of the hex inverter.
	So far so good.

	However you have also named that particular net NETNAME.
	So, you have effectively equated NETNAME to the +5V net.  
	How should this be handled?  Right now here's the gnetlist output
	for the above schematic:

START components

U100 device=7404

END components

START nets

+5V : U100 1, U100 14 
GND : U100 7 
NETNAME : U100 1 

END nets


	As you can see, the +5V net consists of U100 14 (the power pin on 
a hex inverter) and the +5V connection caused by the VCC symbol/net.  
And you can also see the NETNAME net which just consists of U100 1.  The
above output doesn't equate +5V to NETNAME otherwise it would say:

NETNAME: U100 1 U100 14


The the grand question really is:

	So how should gnetlist handle the assigning of net names to nets
	which are explicity assigned and those which are created by the
	net= attribute?  (Assuming you connect these nets together).
	Or another way to look at it is assigning two different net
	names to the same net.  Should this be allowed?  


	Blah, I have no idea if that made any sense; I've been coding for 
5 hours straight now and my mind has gone to total mush.

								-Ales