The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl
Simulators >> Circuit Simulators >> simulator option 'scale' for spectre
https://designers-guide.org/forum/YaBB.pl?num=1269354994

Message started by Evgenii on Mar 23rd, 2010, 7:36am

Title: simulator option 'scale' for spectre
Post by Evgenii on Mar 23rd, 2010, 7:36am

Hi, friends!
For  spectremdl simulation I prepare three type of input files (simulation from terminal window)
1)      netlist.scs – circuitry and simulator options
2)      corners.scs – altergroups
3)      netlist.mdl – measurement procedures and altergroups, which will be run
Examples:
1)
simulator lang=spectre
global 0 vcc! vdd!
include "/space/home/eboyarinov/TSL018_IO/Models/models.scs"  section=tt_18
include "/space/home/eboyarinov/TSL018_IO/Corners/corners.scs"

parameters C_load=32p vcca=2.3 vccb=2.3 PERIOD=100n TFRONT=1n DELAY=20n  
    ……………………………
M2 (D G S B) nhv w=1.6 l=0.35 as=0.768 ad=0.768 ps=4.16 pd=4.16 m=32
……………………………
V0 (G 0) vsource type=pulse val0=0 val1=vcca period=PERIOD \
delay=DELAY rise=TFRONT fall=TFRONT width=PERIOD/2-TFRONT
………………………………….
tran tran stop=3*PERIOD errpreset=moderate write="spectre.ic"

simulatorOptions options reltol=1e-3 vabstol=1e-6 iabstol=1e-12 temp=125.0 \
tnom=27 scalem=1.0  scale=1e-06 gmin=1e-12 rforce=1 maxnotes=5 maxwarns=5 \
digits=5 cols=80 pivrel=1e-3
2)
slow_1 altergroup {
include "/space/home/eboyarinov/TSL018_IO/Models/models.scs" section=ss_hv
include "/space/home/eboyarinov/TSL018_IO/Models/models.scs" section=res3t_high
include "/space/home/eboyarinov/TSL018_IO/Models/models.scs" section=diodes
include "/space/home/eboyarinov/TSL018_IO/Models/models.scs" section=res2t_high

parameters vcca=1.4 vccb=1.4 C_load=17p R_load=2k
}

In this netlist I have absolute value of width and length! And scale=1e-06!
Simulation command $spectre netlist.scs passing w/o error.
But when I run $spectremdl netlist.mdl i see error:

Instance length or width does not fit the given lmax-lmin or
       wmax-wmin range for any model in the `I43.I35.M0.nhvstat'

why for spectremdl scale=1e-06 doesn’t work?
why simOpt "scale" don't work for altergroup when models was changed  >:(
Thanks! :)

Title: Re: simulator option 'scale' for spectre
Post by Andrew Beckett on Apr 7th, 2010, 6:59am

I just tried reproducing this, and can't. In the attached example (completely made up), if I do:

spectremdl testscalemdl.mdl

it works fine. I was using 7.1.1.371.isr22 or 7.2.0.194.isr4 version of spectre. I even tried using a really old version (spectre from IC5141) but didn't see a problem.

I can't find any reports of such a problem.

What subversion are you using? Can you check with the data I've attached to see if you still see it?

Probably your best bet is to contact Cadence Customer Support with a testcase that shows the problem. You didn't give your MDL file here, so not sure what you're doing there (or even if that has an influence).

Regards,

Andrew.


Title: Re: simulator option 'scale' for spectre
Post by cmos.analogvala on Apr 8th, 2010, 9:34pm

Hey Andrew,

Could this be due to wrong or no value assigned to CDS_Netlisting_Mode variable?

-CA

Title: Re: simulator option 'scale' for spectre
Post by Andrew Beckett on Apr 11th, 2010, 2:37am

No. That doesn't influence running spectre standalone or spectremdl standalone. It just influences netlisting from ADE.

Regards,

Andrew.

Title: Re: simulator option 'scale' for spectre
Post by Evgenii on Apr 14th, 2010, 2:48am

Thanks guys, thanks Andrew!
Andrew, sometime I read your posts on  http://www.cadence.com/Community/forums/
with tags “ocean”  ;)
I run test which you prepare, simulation  finished successfully
I think spectremdl goes crazy when alter or use file “montetest.scs” (Probably I am not right, before I spoke about the sizes
of transistors, but manipulation with models may give and others errs ).
Earlier i tried to write corner analyses for ADE and has problem with syntax:
corAddModelFileAndSectionChoices( "018um" "TSL018_IO/Models/montetest.scs" '( "mont" )
)  
;i change file “montetest.scs”  to concluded all content in one section "mont",  but this don’t help me :)


montetest.scs contains:
-----------------------------------------------------------------
simulator lang=spectre insensitive=yes
parameters rmatch=0  cmimmatch=0 vtnlvmatch=0 vtplvmatch=0 vtnhvmatch=0 vtphvmatch=0 vtnhvmatch5v=0 vtphvmatch5v=0  accapmatch=0 mfcmatch=0

statistics {
     mismatch {
           vary rmatch dist=gauss std=1
           vary accapmatch dist=gauss std=1
           vary mfcmatch dist=gauss std=1
           vary vtnlvmatch dist=gauss std=1
           vary vtplvmatch dist=gauss std=1
           vary vtnhvmatch dist=gauss std=1
           vary vtphvmatch dist=gauss std=1
           vary vtnhvmatch5v dist=gauss std=1
           vary vtphvmatch5v dist=gauss std=1
           vary cmimmatch dist=gauss std=1
           }
     }  

----------------------------------------------------------------------
For decision this problem I change models only in *.scs file and change parameters in *corners.scs file.
anyway Thanks! :)

Title: Re: simulator option 'scale' for spectre
Post by Andrew Beckett on Apr 14th, 2010, 4:53pm

There was an issue with statistics blocks inside sections (inside libraries) which were switched out with an altergroup - this threw an error. Now it produces a warning (in builds of spectre since something like June 2009). Not sure if that's it? You didn't say which subversion of spectre you're using...

Best thing would be to contact Cadence Customer Support with your issue - it's rather hard to debug without the full picture.

Regards,

Andrew.

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