The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl
Simulators >> Circuit Simulators >> MOSFET models
https://designers-guide.org/forum/YaBB.pl?num=1257894844

Message started by bjlobby1 on Nov 10th, 2009, 3:14pm

Title: MOSFET models
Post by bjlobby1 on Nov 10th, 2009, 3:14pm

Hi everyone

I have a question. I've been trying to find a clear answer for many days but I can't. So, I would like to know how Spectre ( or Spice ) interprets a MosFet model. Let's say that we have the BSIM4 model. I know it's a physical model. I know all its parameters and what they represent. What I do not understand is how Spice understands this model. As a subcircuit? Or as something else?

Regards

Title: Re: MOSFET models
Post by loose-electron on Nov 10th, 2009, 5:47pm

Simply stated its a math model.

At the primitive level its purely a set of equations.

A simple illustration - a resistor can be defined as relationship between voltage and current  (V/I = R)

a capacitor? I = C dv/dt

And so on for all the primitive devices.

A "compact model" is a set of math equations (often written these days in C code, IIRC fopr the BSIM models) that relates the V, I, C, R, L, and Q (charge) characteristics of the device.

A composite model takes a set of compact models and uses them to define a more complex model of a device. For example, modeling the  parasitic capacitance of a resistor is often simply done with two resistors in series and a capacitor to ground between them to model a resistor with parasitic capacitance.

Take a look at:
http://www-device.eecs.berkeley.edu/~bsim3/bsim4_intro.html




Title: Re: MOSFET models
Post by bjlobby1 on Nov 11th, 2009, 4:24am

Thank you for your answer. I have a few more questions.

So, I can download the C file from Berkeley's Device Group, read the documentation and use it even in my own Spice-like program, right?

And one more thing. Spice utilizes numerical methods to solve the equations of the circuit. The picture of the Mosfet model in my mind was a subcircuit of basic elements ( R, L, C, V, I ). And I thought that spice formulates one equation for each of these elements and plugs it in a matrix which is then used as an input to a numerical method function. Do you have an idea, at the primitive level, of how spice uses this C file of the mosfet model in its numerical methods?

Thanks

Title: Re: MOSFET models
Post by loose-electron on Nov 11th, 2009, 8:14am

Hmmm Ken (The Spectre in this forum) is the guru of gurus on simulator design (he is the father of Spectre after all)

Yes you can download the model algorithm code for integration into the simulator system if you are savvy at doing that sort of thing, (and have source code access to a simulator) but most circuit designers just download transistor models to be run on the simulator algorithm.

As for how the simulator uses this structure in its simulation? That's not a 3 sentence answer, but the handwaving super simple answer is a defined  circuit (R, L, C, dependent current and voltage sources, etc, etc) which is then solved for by KVL, KCL rules as a matrix of simultaneous equations.

That is super simplified of an answer.

Every person on this forum should have a copy of "The Designers Guide To Spice and Spectre" on their shelf. (Kluwer Academic Press, author Ken Kundert) - A better answer to the question is formulated there in the first several chapters.

Title: Re: MOSFET models
Post by Geoffrey_Coram on Jan 21st, 2010, 12:31pm


bjlobby1 wrote on Nov 11th, 2009, 4:24am:
And one more thing. Spice utilizes numerical methods to solve the equations of the circuit. The picture of the Mosfet model in my mind was a subcircuit of basic elements ( R, L, C, V, I ). And I thought that spice formulates one equation for each of these elements and plugs it in a matrix which is then used as an input to a numerical method function. Do you have an idea, at the primitive level, of how spice uses this C file of the mosfet model in its numerical methods?


Your picture should be of few dependent current sources and some charge storage elements (the channel charge is non-linear, 4-terminal capacitor, and then there are the gate-overlap and diode caps also).  The simulator sends the node voltages to the model, the model evaluates charges and currents (and the derivatives with respect to voltages, which are what go in the matrix) and sends them back to the simulator; the simulator then attempts to enforce KCL (and KVL) and uses the matrix of derivatives to solve for new voltages.  Repeat until convergence.

Spice will have one row for each unknown, which is usually a node voltage (BSIM4 has some internal nodes).  KCL is then checked by computing and adding up the currents from all the elements connected to the node.

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