The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl
Modeling >> Semiconductor Devices >> Fundamental problem with flicker-noise modeling in commercial simulators
https://designers-guide.org/forum/YaBB.pl?num=1579133686

Message started by Ken Kundert on Jan 15th, 2020, 4:14pm

Title: Fundamental problem with flicker-noise modeling in commercial simulators
Post by Ken Kundert on Jan 15th, 2020, 4:14pm

Geoffrey Coram, Colin McAndrew, Kiran Gullapalli, and Ken Kundert (me) have written a paper that describes a fundamental problem with the implementation of flicker noise in the models, both built-in and Verilog-A, of most commercial simulators.  It has been accepted for publication in TCAD, and is currently available as a preprint. Everything you need to duplicate their results is given in the Semiconductor Models section of Verilog-AMS.

The problem is illustrated in the attached figure. A correct model should have one peak at 131kHz. With an incorrect implementation you will see peaks at frequencies that are multiples of 262kHz.

-Ken

Title: Re: Fundamental problem with flicker-noise modeling in commercial simulators
Post by Ken Kundert on Jan 15th, 2020, 4:22pm

You get similar results if you implement a flicker-noise model yourself in Verilog-A and you do it improperly.

Title: Re: Fundamental problem with flicker-noise modeling in commercial simulators
Post by Ken Kundert on Jan 15th, 2020, 4:28pm

The above results were generated by Spectre 15.1.0. You can see that the built-in resistor model and the BSIM4 fnoimod1 models are correct, but the BSIM4 fnoimod0 is not.  Also, you can get correct results with Verilog-A if you write your model properly. I encourage you to try your own simulator and report the results here.

-Ken

Title: Re: Fundamental problem with flicker-noise modeling in commercial simulators
Post by Geoffrey_Coram on Jan 16th, 2020, 6:36am

I can get a similar picture for BSIM3 from the simulator I use. I had to increase the gate voltage because the default threshold voltage in BSIM3 is a little higher, and we want to be sure that the device is in the linear region - you can actually see a bit of a bump at 2 f0 in the noimod=1 results, which I believe is due to the device going slightly out of the linear region.

Title: Re: Fundamental problem with flicker-noise modeling in commercial simulators
Post by Geoffrey_Coram on Jan 16th, 2020, 6:44am

I think it's odd that in BSIM3, the "old" noimod=1 (just using kf and af) gives the correct results. The new unified flicker noise model[1] (using noia, noib, noic) is noimod=2 (or 3) in BSIM3, and has incorrect results.

This is flipped from BSIM4, where the new unified flicker noise model, fnoimod=1, gives the correct spectrum.

[1] K.K. Hung, P.K. Ko, and C. Hu, "A unified model for the flicker noise in metal-oxide-semiconductor field-effect transistors." IEEE Transactions on Electron Devices 37.3 (1990): 654-665.

Title: Re: Fundamental problem with flicker-noise modeling in commercial simulators
Post by Frank Wiedmann on Jan 17th, 2020, 5:02am

I downloaded the archive from the link given in the "What's New" section of https://designers-guide.org/ and ran the simulations with the most recent Spectre release. The result for BSIM4 is exactly the same as in your original post, so the problem still exists there. This is not very surprising because according to the paper, the error is already in the original C code from Berkeley. Nobody seems to have been aware of this issue up to now; if I'm not mistaken, the error also seems to be present in the R3 resistor model by co-author Colin McAndrew from 2014 (http://dx.doi.org/10.4231/D3QB9V64G).

Title: Re: Fundamental problem with flicker-noise modeling in commercial simulators
Post by Geoffrey_Coram on Jan 20th, 2020, 5:12am

I'm not sure it's entirely fair to say the error is in the original C code from Berkeley, since Spice doesn't support Pnoise and thus the model has no way of communicating the sign of the modulation.

The R3 code on nanoHub does have this error, as do the R2_CMC and R3_CMC models from the Compact Model Coalition (http://www.si2.org/cmc). I have update those latter two models and the beta code is being tested by other CMC member companies.

Title: Re: Fundamental problem with flicker-noise modeling in commercial simulators
Post by Frank Wiedmann on Jan 20th, 2020, 5:52am


Geoffrey_Coram wrote on Jan 20th, 2020, 5:12am:
I'm not sure it's entirely fair to say the error is in the original C code from Berkeley, since Spice doesn't support Pnoise and thus the model has no way of communicating the sign of the modulation.

You are probably right that it's not entirely fair. I had not been thinking of the fact that the BSIM4 code is only targeted at the original SPICE from Berkeley, which does not have any of the analyses that are affected by this problem.

Title: Re: Fundamental problem with flicker-noise modeling in commercial simulators
Post by Frank Wiedmann on Jan 20th, 2020, 6:01am


Geoffrey_Coram wrote on Jan 16th, 2020, 6:36am:
I can get a similar picture for BSIM3 from the simulator I use. I had to increase the gate voltage because the default threshold voltage in BSIM3 is a little higher, and we want to be sure that the device is in the linear region - you can actually see a bit of a bump at 2 f0 in the noimod=1 results, which I believe is due to the device going slightly out of the linear region.

Thank you for sending me your BSIM3 testcase. I can exactly reproduce your plot with the most recent Spectre version 19.1.0.237.isr3.

Title: Re: Fundamental problem with flicker-noise modeling in commercial simulators
Post by Frank Wiedmann on Jan 20th, 2020, 6:11am


Geoffrey_Coram wrote on Jan 20th, 2020, 5:12am:
The R3 code on nanoHub does have this error, as do the R2_CMC and R3_CMC models from the Compact Model Coalition (http://www.si2.org/cmc). I have update those latter two models and the beta code is being tested by other CMC member companies.

Thank you for the confirmation. As all the major simulator vendors for IC design seem to be participating in CMC (http://www.si2.org/standard-models/), these models will hopefully be fixed very soon.

Title: Re: Fundamental problem with flicker-noise modeling in commercial simulators
Post by Ken Kundert on Jan 20th, 2020, 11:15pm


Quote:
Nobody seems to have been aware of this issue up to now

Actually this problem was identified and resolved by the initial SpectreRF developers (Ricardo Telichevesky, Jacob White, and myself) before SpectreRF was first released.  We did not think much of it at the time and the idea seemed to have been lost after we all moved on to other things. It was Geoffrey that resurrected the idea while trying to resolve anomalies he was seeing in the flicker noise of various models and simulators.  He then recruited Colin and Kiran to work through all the details, verify the results, and write the paper.

-Ken

Title: Re: Fundamental problem with flicker-noise modeling in commercial simulators
Post by Frank Wiedmann on May 18th, 2020, 5:33am

Here are the results for BSIM4 from the current Spectre Version 19.1.0.348.isr6:

Title: Re: Fundamental problem with flicker-noise modeling in commercial simulators
Post by Frank Wiedmann on May 18th, 2020, 5:34am

Here are the results for BSIM3 from the current Spectre Version 19.1.0.348.isr6:

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