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

Re: gEDA-user: passing parameters to a subckt



Hi Al,

I sapose that you could pass an argument to gnet-spice-sdb (or set a variable) to clue it in on which spice variant to target.

In the long term maybe an XML like standard language would be a way to modernize it.

Either way I think it might be better to put the parameters in another attribute like say, params so that value is not overloaded and you can choose to handle them differently if you like. Eg, I would like to keep someting like 10k in value just to keep the schematic looking clean.

Just my 2c

	Thanks,
	Clif

 On Sun, 24 Oct 2010, al davis wrote:

On Sunday 24 October 2010, clif@xxxxxxxxxxxxx wrote:
and have gnetlist spit out a line like this:

XU3 10 9 0 POT VALUE=10k SET=0.5

and pot.mod could be something like:

.SUBCKT POT 1 T 2 PARAMS: VALUE=1K SET=0.5
RT 1 T {0.999 * VALUE * (1-SET) + 0.0005 * VALUE}
RB T 2 {0.999 * VALUE * SET + 0.0005 * VALUE}
.ENDS

I've googled hither and yon, looked at gnet-spice-sdb.scm but
couldn't  find anything definitive. Is there some other
attribute that you might put a list of parameters in?

The situation is less than ideal, but workable.  When netlisting
to a spice format, the "value" attribute contains a string which
is copied directly.

So, for XU3, you should set the "value" to the string
"VALUE=10k SET=0.5" .

What is less than ideal is that you must use the simulator's
syntax there, which means you may need a different schematic for
different simulators.  This is workable with variants of the
spice format, but unworkable for non-spice formats.  For
example, the Verilog netlister does not do attributes at all.

For example, of those using spice variants, the "PARAMS:"
keyword is required on some, optional on some, and illegal on
some.  It is optional for gnucap (recent snapshots, it is
illegal for 0.35).  As I recall, it is required for Pspice,
illegal for NGspice, but I could be wrong here, or it could have
changed recently.  Regardless, when you make the schematic, it
is part of the "value" string.

Another syntax nuisance is that some simulators using spice
netlists use ticks ' ' instead of curly's to enclose an
expression.  I believe Hspice uses ticks, Pspice uses curly's.
Gnucap takes either.  I don't know what NGspice accepts.


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



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