The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl
Simulators >> Circuit Simulators >> MDL can't recognize 'ln' function?
https://designers-guide.org/forum/YaBB.pl?num=1170941392

Message started by topquark on Feb 8th, 2007, 5:29am

Title: MDL can't recognize 'ln' function?
Post by topquark on Feb 8th, 2007, 5:29am

Hello MDL users,

I encountered another strange error running MDL
Here's the error message:

Error found by spectre in `nmoscap', during circuit read-in.
   "/home/tsmc/cadappl/iclibs/CLN65LP_1p9m/1.1a/tsmcN65lo/../models/CLN65LP_2d5_lk_v1d1.scs" 43424: Function `ln' is undefined or is used
       recursively.

spectre terminated prematurely due to fatal error.
Job ended with error status: 2


So, I went and check in the model file section -

cg (ng nds) bsource q=(cgmin+dcg)*v(ng,nds)+vgnorm*dcg*ln(cosh((v(ng,nds)-dvgs)/vgnorm))


Strangely, this error is not seen when I run the sim under Analog Design Environment.

Pass on your thoughts about this.

Regards,
Gau

Title: Re: MDL can't recognize 'ln' function?
Post by Andrew Beckett on Feb 8th, 2007, 10:41am

Doesn't look like this should have anything to do with MDL - it's a normal spectre error message.

What version of spectre are you using (type "spectre -W")?

I just put together an example using a similar PDK model file, which uses ln(). When I'm using MMSIM61 spectre it works fine. When using IC5141, it doesn't - I get the error you did. In that version, you had to use log(). MMSIM60 works OK too. In fact IC5141 works if you use "spectre +csfe netlistfile.scs".

Regards,

Andrew.

Title: Re: MDL can't recognize 'ln' function?
Post by Scott Flinchbaugh on Feb 8th, 2007, 7:34pm

Gau,

Andrew is correct here.  The functions defined in the netlist are not MDL related in any way, with the notable exceptions of the assert statement ( for device OP pt checking ) and any expressions that are associated with
a Spectre "print" command.  In addition, when using a spice netlist, the .measure/.probe/.print statements also use MDL.  

Other than these instances any function or expression contained in the netlist is evaluated by the spectre expression
handler and not evaluated by MDL, so this is indeed a Spectre error.

Thanks,
-scott

The Designer's Guide Community Forum » Powered by YaBB 2.2.2!
YaBB © 2000-2008. All Rights Reserved.