BSIM3 and technology related question

Guest
Hi all,

I would be working on designing circuits at sub-threshold logic level.
Before I start designing and simulating small little circuits I have
to know a couple of things.

I understand that BSIM3 models are modelled quite well in sub-
threshold region. But I am not sure if there are other models which
are good compared to that. The questions that I have are related to
this basically.

1) Are there models which I could possibly use which are better than
BSIM3? If yes, what are they?

2) How do I know that the models that I am using currently belong to
BSIM3 or something else? How do I change those models in Cadence?

3) How do I get parameters like gamma, k, mu, Vth etc for a particular
technology. Every one says that it is in the technology file. But my
question is where is that technology file?

I understand that most of the questions are not Cadence related but
please :).

Thanks and Regards,
Naveen.
 
Dear Naveen,

There are two main questions you have to ask yourself in order to find
the best model for your application :
1. What is your application ? what do you want to model or simulate ?
What is the more accurate model for your design needs ?
You've already answered this question => MOS subthreshold region,
which is a good start.
2. Is your foundry, Model or PDK provider can supply you the model you
need ? That's important as well !

back to your questions :

1. BSIM3v3 is the industry standard nowadays, it has a very good
modeling of the Sub-threshold region and it is supported and provided
by almost all the foundries.
BSIM4 is getting more popular among the nano technologies world since
it is solving many missing items from the BSIM3, such as the Well
Proximity Effect (WPE), the Shallow Trench Isolation stress (STI),
Halo/Pocket modeling, Gate direct Tunneling, GIDL ... Except these new
silicon side effects at small geometries, i don't think BSIM4 has
improved anything directly related to the sub-threshold region. So do
you really need the modeling of these new stuffs ? what is your
technology node ? If you're in 0.13u and below, I would say BSIM3 is
fair enough.
Apart from BSIM3, PSP has been selected as a standard for nano
technologies by the Compact Modeling Council group, but do you really
need it ? This is a report from TI about sub-Threshold modeling in
PSP ...
http://www.eigroup.org/CMC/next_gen_cmos/phase3/ti.pdf
PSP is getting more power among the semiconductor wold but only few
foundries are supporting it now ...
Well, there are other modeling standards but my knowledge of EKV,
HiSIM and stuff is very very weak.
If you fancy reading about modeling, I would advice :
1. The CMC's (Compact Modeling Council) web site:
http://www.geia.org/index.asp?bid=597
2. The BSIM's web site
http://www-device.eecs.berkeley.edu/~bsim/
3. The following books:
3.1 Device Modeling for Analog and RF CMOS Circuit Design (Book)
3.2 Operation and Modeling of the MOS Transistor MOSFET
3.3 Models for SPICE Simulation, Including BSIM3v3 and BSIM4

2. I entirely commit with Stefan, you've to be a bit nosy ... File
searching in Unix is not harmful. search your PDK for .scs
(spectre), .lib (Eldo, Hspice), .gem (ADS) ...

3. These parameters are in your Spice Model Cards, and sometimes
supplied in foundry's documentation (few set of them).
For your question : "But my question is where is that technology
file", my answer is : give me the IP address of your machine, your
username and your password, shut down all the firewalls and other
security stuffs. I'll then log on and give you the answer. You will be
certainly fired for this ;-) Nobody can answer this question my
buddy ! it depends on your PDK provider. Some BAD foundries even
change the locations from a pdk version to another ...
Well I'm not that bad and I can say that your simulator can dump these
parameters for you. You just need to make a test bench with one single
transistor, biased with DC voltage sources and run a DC OP simulation.
Go to the ADE -> Results -> Print -> Model Parameters and then select
your MOS !! This is what I propose to begin with. There are other ways
to do it if requested.

Hope this is helping you !

Riad.
 
Thanks a lot for the reply's Stefan and Riad. It was very very
helpful.

I now understand that I could go with BSIM3 since I am using 0.13u
technology node and as you have said (also from my research during the
past 2 days).

Also I was able to find the parameter values (like k, mu, vth etc.) by
the procedure suggested by Riad. I have also made a unix search for
*.scs and *.lib files and found that some of those parameters that the
simulator has dumped come from those files infact. It would be really
interesting to know other ways of getting those parameter values.
Please Riad :).

Also I have one more nagging question. Suppose I have two different
models for 0.13u provided by my foundry, I would like to know how can
we change the models using Cadence or someother means. Just to see the
performace of one over the other. Lets say I would like to see the
performance of one model over the other for an inverter in the
subthreshold region or in a region of transition from subthreshold to
strong inversion.

Thank you all once again,

Naveen.




On May 15, 3:55 am, Riad KACED <riad.ka...@gmail.com> wrote:
Dear Naveen,

There are two main questions you have to ask yourself in order to find
the best model for your application :
1. What is your application ? what do you want to model or simulate ?
What is the more accurate model for your design needs ?
You've already answered this question => MOS subthreshold region,
which is a good start.
2. Is your foundry, Model or PDK provider can supply you the model you
need ? That's important as well !

back to your questions :

1. BSIM3v3 is the industry standard nowadays, it has a very good
modeling of the Sub-threshold region and it is supported and provided
by almost all the foundries.
BSIM4 is getting more popular among the nano technologies world since
it is solving many missing items from the BSIM3, such as the Well
Proximity Effect (WPE), the Shallow Trench Isolation stress (STI),
Halo/Pocket modeling, Gate direct Tunneling, GIDL ... Except these new
silicon side effects at small geometries, i don't think BSIM4 has
improved anything directly related to the sub-threshold region. So do
you really need the modeling of these new stuffs ? what is your
technology node ? If you're in 0.13u and below, I would say BSIM3 is
fair enough.
Apart from BSIM3, PSP has been selected as a standard for nano
technologies by the Compact Modeling Council group, but do you really
need it ? This is a report from TI about sub-Threshold modeling in
PSP ...http://www.eigroup.org/CMC/next_gen_cmos/phase3/ti.pdf
PSP is getting more power among the semiconductor wold but only few
foundries are supporting it now ...
Well, there are other modeling standards but my knowledge of EKV,
HiSIM and stuff is very very weak.
If you fancy reading about modeling, I would advice :
1. The CMC's (Compact Modeling Council) web site:http://www.geia.org/index.asp?bid=597
2. The BSIM's web sitehttp://www-device.eecs.berkeley.edu/~bsim/
3. The following books:
3.1 Device Modeling for Analog and RF CMOS Circuit Design (Book)
3.2 Operation and Modeling of the MOS Transistor MOSFET
3.3 Models for SPICE Simulation, Including BSIM3v3 and BSIM4

2. I entirely commit with Stefan, you've to be a bit nosy ... File
searching in Unix is not harmful. search your PDK for .scs
(spectre), .lib (Eldo, Hspice), .gem (ADS) ...

3. These parameters are in your Spice Model Cards, and sometimes
supplied in foundry's documentation (few set of them).
For your question : "But my question is where is that technology
file", my answer is : give me the IP address of your machine, your
username and your password, shut down all the firewalls and other
security stuffs. I'll then log on and give you the answer. You will be
certainly fired for this ;-) Nobody can answer this question my
buddy ! it depends on your PDK provider. Some BAD foundries even
change the locations from a pdk version to another ...
Well I'm not that bad and I can say that your simulator can dump these
parameters for you. You just need to make a test bench with one single
transistor, biased with DC voltage sources and run a DC OP simulation.
Go to the ADE -> Results -> Print -> Model Parameters and then select
your MOS !! This is what I propose to begin with. There are other ways
to do it if requested.

Hope this is helping you !

Riad.
 
Dear Naveen,

You could have helped me in telling me which simulator you're
using :)
I assume spectre for the rest.
Before going into details, my solution is not going to help you if you
ar a GUIsh guy who is scared by the unix terminals ...

When you launch a spectre simulation, Cds creates a set of files into
your unix sim working dir y've defined in ADE. these files include:
1. input.scs, which is your main spectre netlist
2. runSimulation which is the shell script that runs spectre.

Assuming a dcOp simulation. if you open the input.scs, you will see
the following lines at some point :
dcOpInfo info what=oppoint where=rawfile
modelParameter info what=models where=rawfile
.....
Means that Spectre will dump the DC OP information (models, outputs,
subckts, opPoint ...) into a rawfile that ou can open with the Cds
resultBrowser from your psf dir. I'm usually hacking this netlist
changing rawfile to file in order for spectre to dump the results in
an ASCII file rather than a raw one.

Once the netlist hacked, I run Spectre either from ADE (!! DO NOT RE-
NETLIST) or by running the runSimulation shell script from unix.
A bench of 'input.info.X' files is then created, including :

input.info.models ==>
****************************************
Model parameter values `modelParameter':
****************************************
Model: M0.nmos.1
Primitive: bsim3v3
type = n
vtho = 775.197 mV
vfb = -1 V
k1 = 500.736 msqrt(V)
k2 = 73.1886e-03
k3 = 0
k3b = 0 1/V
..........

input.info.oppoint ==>

Instance: M0 of nmosSubckt
Model: M0.nmos.1
Primitive: bsim3v3
d : V(net5) = 2 V
g : V(net11) = 1 V
s : V(net2) = 0 V
b : V(net2) = 0 V
type = n
region = sat
reversed = no
ids = 407.12 uA
isub = 424.076 nA
vgs = 1 V
vds = 2 V
vbs = 0 V
vgb = 1 V
vdb = 2 V
vgd = -1 V
vth = 524.033 mV
vdsat = 250.463 mV
.................

Well, you get everything you want with this.

If you are interested in some specific parameters only, I would advice
to use ocean : There are some examples I've written over christmas I
think ...

selectResults('tranOp)
report(?output "myReport" ?type "bsim3v3" ?param "vth")

Will print :

Type : bsim3v3

/I0/M0 : vth = 1.004
/I0/M1 : vth = 1.014
/I0/M2 : vth = 836.7m
/I0/M3 : vth = 836.7m

dataTypes()
("bsim3v3" "capacitor" "inductor" "isource" "resistor" "vsource")

M0Vth = pv( "/I0/M0" "vth" ?result "tranOp")
printf("The value of VTH for M0 is %L\n" M0Vth)
==> The value of VTH for M0 is 1.004222

outPort = outfile("./MyRkResults.txt")
selectResults('model)
report(?output outPort ?type "bsim3v3" ?name "I0.M1.nmosmod" ?param
'("vtho" "k2" "w0" "dvt0" "dvt0w") )

==> Give a try ;-)

Riad.
 
Ouups, for the other question: How to change model file.
These are my comments from a previous post (You should have searched a
bit ;-) )

Well, when you include inculde your file into your simulation
environment using : ADE -> Setup -> Model Libraries, you have to :
1. fill the "Model library file" field with the path to your .scs
file
2. In your case since you've many sections in your file, you have to
put the target section into the 'Section (opt.)' filed at the right
as
mentioned by Stéphane.


The same subckts/models are defined in the different sections but
with
different technology sets.
the naming convention for your sections is :
T = Typical
F = Fast
S = Slow


A section 'FF' means the date put into it are measured in the
conditions of a 'Fast' NMOS and 'Fast' PMOS.


If you want to MANUALLY run multiple simulation with TT, then FF,
then
SS, then whatever section ..., one way to it is then :
. Include your .scs and specify TT as the desired section and then
click the 'add', this will insert a new line
Back to your section name and replace TT by FF, click add ... And so
on. You will then have as many lines as sections.
The last step, is to make only one 'ACTIVE' by selecting the line you
want and click the Enable/Disable buttons on the right hand side.
A '#' sign is added in front of each disabled line. Ensure than one
section only is enabled. You can than switch vack and forth between
your sections as your work evolves.
That's the manual way to do it ...

Riad.
 
Thanks a lot for that Riad. I have tried both of them (hacking the
netlist and changing the model files) and they work like a charm. I
have some working experience with OCEAN and SKILL and I love the
command line :). So, it was not a problem to understand what you
said. I am infinitely indebted to you :). Thanks once again.

Naveen.
 
Le vendredi 16 mai 2008 12:43:43 UTC+1, solidre...@gmail.com a écrit :
Thanks a lot for that Riad. I have tried both of them (hacking the
netlist and changing the model files) and they work like a charm. I
have some working experience with OCEAN and SKILL and I love the
command line :). So, it was not a problem to understand what you
said. I am infinitely indebted to you :). Thanks once again.

Naveen.
Dear Naveen
Hi
I need some ideas on Models of Berkley, this dir is what is the difference between Models and Models of gpdk CADENCE?
 
On 04/08/13 10:08, salmiazzouz@gmail.com wrote:
Le vendredi 16 mai 2008 12:43:43 UTC+1, solidre...@gmail.com a écrit :
Thanks a lot for that Riad. I have tried both of them (hacking the
netlist and changing the model files) and they work like a charm. I
have some working experience with OCEAN and SKILL and I love the
command line :). So, it was not a problem to understand what you
said. I am infinitely indebted to you :). Thanks once again.

Naveen.
Dear Naveen
Hi
I need some ideas on Models of Berkley, this dir is what is the difference between Models and Models of gpdk CADENCE?

Asking a follow up question to a post 5 years ago is probably a bit hopeful.

Anyway, the Berkeley models, e.g. bsim3v3, bsim4 etc are the set of code
and equations that model the behaviour of certain classes of
transistors. More information can be found at:

http://www-device.eecs.berkeley.edu/bsim/

These are industry standard ways of modelling transistors.

The models in various gpdk (Generic PDK) libraries use these models. In
common with real foundries (gpdk is an artificial process to represent
typical behaviour without revealing proprietary process information),
there are spectre models provided which use these bsim (and other)
models; they provide a set of model coefficients for the device models.

You can also see more information in the Model documentation in the
MMSIM releases:

<MMSIMinstDir>/doc/spectremod/spectremod.pdf

Regards,

Andrew.
 

Welcome to EDABoard.com

Sponsor

Back
Top