The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl
Modeling >> Semiconductor Devices >> HSPICE and Spectre Noise Model Compatibility
https://designers-guide.org/forum/YaBB.pl?num=1134498092

Message started by cktman on Dec 13th, 2005, 10:21am

Title: HSPICE and Spectre Noise Model Compatibility
Post by cktman on Dec 13th, 2005, 10:21am


I am simulating a ring oscillator with SpectreRF and the 1/f noise seems unreasonably high (extends into 100's of MHz offset frequency) and the noise is about 40db higher than expected!.

The model is BSIM3V3 version 3.1. Noise models use AF, KF and flkmod defaults to 0 (Id model). I also have the HSPICE models for the same process which use the identical AF and FK parameters with NLEV=3 (gm model). I do not have acces to an HSPICE simulator so I cannot compare phase noise. However, if I change flkmod=1 to match the HSPICE model then the phase noise is much more reasonable.

Shouldn't flkmod=1 to make the HSPICE and Spectre models consistent? I have another set of models from a different foundry  where this is true. Since the process I am using is considered mature the foundry is not helping me on this issue.

Title: Re: HSPICE and Spectre Noise Model Compatibility
Post by Geoffrey_Coram on Dec 15th, 2005, 8:42am

The AF and KF parameters mean different things for flkmod=0 and flkmod=1.  In particular, for flkmod=0, I think the noise goes as Id^AF/ f^EF, whereas in flkmod=1, the noise is gm^2/f^AF -- that is, AF is the frequency exponent, not the current exponent!  Also, the prefactors are different.  You can't just change flkmod.

flkmod=0 is known to be poor in subthreshold; probably this is your problem.

Title: Re: HSPICE and Spectre Noise Model Compatibility
Post by cktman on Dec 15th, 2005, 9:39am

Thank you for the response. What I am thinking is that flkmod=0 is incorrect for the Spectre model and that that it should be equal to 1. This is based on the fact that another foundry also has HSPICE/Spectre models for a different process with the same AF/KF parameters but uses NLEV=3 and flkmod=1. My understanding is that flkmod=1 is equivalent to NLEV=3 and my guess is that the the foundry in question fit to HSPICE but did no refit to Spectre to verify that the flkmod value was correct.

BTW I am far away from sub-threshold so this is not the issue.

Title: Re: HSPICE and Spectre Noise Model Compatibility
Post by Geoffrey_Coram on Dec 21st, 2005, 7:45am

In BSIM3v3 standard, there are two flicker models, selected with the NOIMOD parameter.  One is the old "spice2" model, KF Id^AF / f^EF.  The other is the "unified 1/f model" which uses NOIA, NOIB, and NOIC.

HSpice added the NLEV=3 (gm) model, and apparently Spectre has added it as well.

I'm not sure what happens if you specify flkmod=1 without nlev=3, or under what conditions these settings override the NOIMOD from the standard BSIM3v3.  

But it does seem to me that if NLEV=3 is specified, flkmod=1 should be as well. (One could argue that specifying NLEV should automatically change the default for flkmod, perhaps this is true in the version of Spectre used by the foundry.)

Title: Re: HSPICE and Spectre Noise Model Compatibility
Post by Andrew Beckett on Dec 22nd, 2005, 1:39pm

I'm saying this from memory, but I think nlev is an HSPICE parameter, whereas when this non-bsim3v3 extension was added in spectre, the parameter flkmod was used to control that.

More recently, parameters have been added to give compatibility with the HSPICE level 49 model - including nlev. You'll see a number of these parameters indicated in spectre -h bsim3v3 as "49" parameters.

I don't think it enables flkmod automatically, but I think nlev=3 and flkmod=1 would in essence do the same thing. However, you would need to be using a version recent enough to support nlev=3. This appears to have been added in IC5033.

Regards,

Andrew.



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