The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl
Simulators >> Circuit Simulators >> Monte carlo simulation types with corners using spectre,ADEXL options
https://designers-guide.org/forum/YaBB.pl?num=1363726002

Message started by yvkrishna on Mar 19th, 2013, 1:46pm

Title: Monte carlo simulation types with corners using spectre,ADEXL options
Post by yvkrishna on Mar 19th, 2013, 1:46pm

Hi,

From the earlier posts about monte carlo and statistical models I have understood that all the inter-die(lot,wafer,die) variations can be observed using Process option of monte-carlo simulation. And intra-die (device to device) variations through mismatch option of monte-carlo.

And these are my queries and confusions.
1.) Taking a pair of resistors when simulated with Montecarlo Process option(at typ corner)) I get a distribution with mean,min, max,sigma.  So here does it mean that these min/max has to be close to the values of fast/slow corner sim. (assuming large num of monte iterations)

ex: If its 3sigma model should the results of my distribution for monte with process option look like this?
mean= res value in typ corner,
mean+3*sigma = res value in slow corner
mean-3*sigma  = res value in fast corner.

Incase if it is so then the running a large num of iterations of monte with process is an alternate of capturing all inter-die variattions?
And this particular sim has to be run at typ corner only  as it already covers all the process spread.
Does running monte carlo with process option in another corner(fast/slow) makes sense? if so then it should also have exactly the same info/result ?
(question comes because this kind of combination/setting is allowed in ADEXL while running monte-carlo)


2) Montecarlo with mismatch option:
should we run this in typ corner only or at all corners??
I have seen a result where the sigma in all corners is not same for a resistor(why is it so?)
since this is a  local distribution within a die it should only depend on the area of the device and distance b/w the devices of interest.(according to pelgrom model)

Please clarify as I am totally confused which option to use when and which is the best setting to cover all variations.

Thanks,
yvkrishna


Title: Re: Monte carlo simulation types with corners using spectre,ADEXL options
Post by Lex on Mar 21st, 2013, 1:40am

I think in general it is 3sigma (min max for SS, FF). But check the foundry's PDK to be certain (I've seen also foundries that use 2sigma for SS/FF, and 3sigma for SSA/FFA).

Normally, there is lot deviation and device deviation in the device model, so you don't need to run it a different process corners (it's already in there).

So I'd just do a large number of MC and check the distribution. Please note that it does not have to be a Gaussian result, as discussed in this thread.

Title: Re: Monte carlo simulation types with corners using spectre,ADEXL options
Post by yvkrishna on Mar 21st, 2013, 2:45am

Thanks for the comments Lex,

Atleast itseems  correct that MC with process option does cover all the range from SS to FF (let it be 2sigma or 3sigma )

My doubt of running MC  process option with another corner set(FF or SS) arises because its supported by the mode files and ADEXL tools  (so it should have some sense for that option OR else they would have disabled it)

And that too the result for MC process options in TT. SS, FF are completely differnt(for my resistor case)
TT gives spread of abt +/-3sigma around it mean and FF/SS also does give similar spreads.

essentially Min/Max result obtained in FF/SS(MC process option) is 6sigma away mean of TT

And I know that these are 3sigma model files.


Thanks,
yvkrishna



Title: Re: Monte carlo simulation types with corners using spectre,ADEXL options
Post by Mike on Apr 2nd, 2013, 2:47pm


yvkrishna wrote on Mar 21st, 2013, 2:45am:
Thanks for the comments Lex,

My doubt of running MC  process option with another corner set(FF or SS) arises because its supported by the mode files and ADEXL tools  (so it should have some sense for that option OR else they would have disabled it)



The fact that the model files are accepted by ADEXL does not imply that this is a technically reasonable thing to do.
For a resistor, this may still give physically reasonable results because it's only one variable. But for a MOS transistor, you cannot assume that the Monte Carlo samples around the SS/FF show how transistors in silicon would behave. The MOS SS/FF corners are often created only with the purpose of digital delay simulation in mind. They are usually not checked to show reasonable small signal behavior.

Title: Re: Monte carlo simulation types with corners using spectre,ADEXL options
Post by ywguo on Apr 2nd, 2013, 4:31pm

Hi yvkrishna,

As what Mike said, ADE-XL runs Monte Carlo simulaton only if the model comply with the basic syntax. I mean the statistic varation is defined in model, including process variation and mismatch variation.

Sometimes ADE-XL runs Monte Carlo with process+mismatch option even if only mismatch variation is defined in the model. It stops with error if neither process nor mismatch is defined in the model.

Please check if there is the key words statistics, process, and [b]mismatch[/] in your spectre model, and where are them? Is there process variation or mismatch variation when you run Monte Carlo process option at typical, fast, and slow corner?

As of what simulation you should run, you need to contact the foundry. Sometimes the foundry thought process+mismatch is too pessimistic, but their model supports process+mismatch.

Best Regards,
Yawei

Title: Re: Monte carlo simulation types with corners using spectre,ADEXL options
Post by yvkrishna on Apr 27th, 2013, 11:06am

Hi ywugo,

Thanks for your comments. I will check with my foundry about which type of setting to use for MC runs.

However my queries are more generic, what does each type of setting signify physically? ( ignoring the process/fab conditions which I used here)

And atleast for the simple case of resistor I would expect that sigma obtained in MC results of TT or FF or SS to be same.

and FYI the  process variatons are modeled in my case ( I could see different results when MC is run with only process or only mismatch  and both) . Not sure how model file is written here.

Thanks,
yvkrishna

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