nesting iPar?

S

Sam

Guest
Hi all,

I am trying to determine why I am having problems netlisting using
Spectre when iPar is involved in a nested function.

For instance nrs=int(iPar("foo")) does not resovle and so shows up as
nrs=int(iPar("foo")) in the netlist and thus creates an error:
Function 'iPar' is undefined or is used recursively. when the
simulation is started.

Are there any hints for resolving this issue? Anything I should ensure
is set? For instance the netlisting mode is set for analog.

Unfortunately CDSDOC is of little help with regard to this issue :( or
I am not looking in the right place.

Regards,
sam
 
Make sure you have the "parseAsCEL/parseAsNumber" set properly in the
CDF at each level the parameter is being passed. iPar/pPar are CEL
expressions.

-Brad

Sam wrote:
Hi all,

I am trying to determine why I am having problems netlisting using
Spectre when iPar is involved in a nested function.

For instance nrs=int(iPar("foo")) does not resovle and so shows up as
nrs=int(iPar("foo")) in the netlist and thus creates an error:
Function 'iPar' is undefined or is used recursively. when the
simulation is started.

Are there any hints for resolving this issue? Anything I should
ensure
is set? For instance the netlisting mode is set for analog.

Unfortunately CDSDOC is of little help with regard to this issue :(
or
I am not looking in the right place.

Regards,
sam
 
Thanks Guenther,

The int function is used in the spectre Netlisting, so I believe it is
ok. It is documented under the Spectre Circuit Simulator Reference
section in the CDSDOC.

sam
 
Hi Brad,

THANKS,

That was it! I set parseAsNumber to yes and it worked, parseAsCEL was
already set to yes. I was confused because other parameters with
iPar()s evaluated fine despite parseAsNumber being set to NO. Seems
that if iPar() was nested, as another example 1/iPar("foo"), it did not
evaluate unless parseAsNumber was set to yes. Kind of odd. Any ideas
why this is?

FYI, the iPar()s that evaluated with parseAsNumber set to now are
simple expressions like: iPar("foo1") * iPar("foo2")

Regards,

Sam
 
Andrew,

There is scarce descriptions of the available function in spectre,
although the majority of the functions are recognizable, it would be
great if there was a place to confirm them.

For instance, I am assuming that fmod() is the same as the mod() in
skill. Am I correct?

Best Regards,
Sam
 

Welcome to EDABoard.com

Sponsor

Back
Top