HSpice and Spectre Model differences

M

mayank

Guest
Hi Folks,
I was wondering if some would know more about the differences between
the model in HSPICE and Spectre.
Here is what I know:
As far as the MOSFET models are concerned except for some level changes
almost all the parameters are the same.
And the simulated behavior is also the same.
The Diode models are distinctly different and they implement different
equations. You have to recreate the entire SPECTRE model even if you
have a HSPICE model.

Are there standard converter from HSPICE to Spectre?

Thanks for your feedback.
Mayank

---------------
CMOS Research Lab UCLA
http://www.icsl.ucla.edu/~mayank
 
Since no one bothered to reply back to my post, or probably since there
were already some posts on this issue, I read thru all of them and
complied this summary as of Oct 2005.
Here is what I could dig about the difference between HSPICE and
SPECTRE differences and conversion issues.
And if you really want correct answers, some how, get hold of the
gentleman by the name of Andrew Beckett (Senior Technical Leader Custom
IC Solutions Cadence Design Systems Ltd).

---------------------------------------------
HSPICE level 13 (bsim1) MOS model to a Spectre model.
Two approaches to consider:
1) If level 13 is really a bsim1, spectre has an equivalent called
"bsim1". One can find out more about Spectre's model, or any other
Spectre info by typing "spectre -h bsim1" or "spectre -h". If your
model also includes the Hspice-specific special model parameter called
ACM (Advanced Capacitive Modeling? e.g., model has "acm=..."
parameter), you will have to consider that this may cause differences
in results from
Hspice to Spectre. There is a document you can obtain from Cadence
regarding differences between Hspice level 49 and Spectre bsim3v3
models that also discusses some strategies for handling for the ACM
parameter.
2) You can use the Spice to Spectre translator called "spp" to perform
the translation. SPP can work automatically from within the Analog
Artist environment, or you can use spp from a command line to
"hand-translate" specific files like the model in question. Try "spp
-help" for more options.

Other than line continuation, a model card or Spice instance card is
pretty much the same across all Spice-like simulators. That is, if it's
a bsim1 device, the parameters and values should be identical because
the equations are in the Berkeley models.. Or if it's a resistor, it
looks pretty similar across all Spice-like simulators. Every simulator
has its own "special extras", like temperature dependence, or the
Hspice ACM= parameter, so you would have to look out for those extras.
However, almost everything else should work as-is after you accounted
for line continuation.

From: Andrew Beckett (Senior Technical Leader Custom IC Solutions
Cadence Design Systems Ltd)
<andrewb@cadence.com>
Subject: Converting Hspice tech file to spectre tech file

From IC5141 spectre (with the new front end) can read SPICE models
natively quite effectively. You need to use the +csfe command line
option, or the spectre.envOpts useCsfe boolean t option in the .cdsenv
(I think that's what it is called, from memory). Before then there is a
tool called "spp" which can be used to convert the model files.

Solutions
1) set the path correctly
2) spp -h
3) might need some more options to spp

Some issues that other people had

We found a SIGNIFICANT difference. Hspice and Pspice matched very well
but for Spectre simulations were very different. After a few days of
conversations with Cadence and some experiments, we discovered that
Spectre does not use the same units for three parameters. After
adjusting the numbers all three simulators gave the same results - a
good thing.
The parameters that have different units that I know about are:
Nsub, Npeak: Hspice, Pspice: unit = /m(3) (meters cubed)
Spectre: unit = /cm(3) (centimeters cubed)
Vsat: Hspice, Pspice: unit = cm/s
Spectre: unit = m/s
******************************************
I also got the following information from Cadence: Also, there is a
parameter in spectre called "LITL" for current path depth. In the
manual it says that if you do not specify this parameter, spectre will
calculate it based on physical parameters (an equation is provided in
Spectre Reference Manual Appendix B page B-63). However, in release
4.3.2 and 4.3.3 this is NOT the case! You may get incorrect results if
you do not explicitly specify LITL for subthreshold operation region.
So please calculate LITL using the equation provided on page B-63 and
explicitly specify it in your device models.
******************************************



Some issues with parameters values being zero, which are shown as
Notices in Spectre.
They can be suppressed by typing : spectre -note netlist.scs

From: "S. Badel" <stephane.ba...@epfl.ch>
Date: Tue, 28 Oct 2003 10:44:58 +0100
Subject: spectre vs hspice : different simulation results

I noticed spectre and hspice give different simulation results, even
though the models are both bsim3v3 and the parameters are identical.
dc simulation is ok, but transient is not.

This could be due to differences in the simulators, or the settings.

From: Jan-Hendrik Jentzsch <jentz...@nst.ing.tu-bs.de> -
Date: 1998/07/16
Subject: Spectre vs. HSPICE

Does anyone know how to make Spectre (4.4.2) compatible with HSPICE?
My problems are:
- different noise models for Mosfets (Level 1-3, no BSIM)
- different MOS-Capacitance-Models: HSPICE = meyer (capop=0) and
modified meyer model (capop=1)
Spectre = modified meyer
(charge conserving!)

"Model_name": "Parameter_Name" is not a valid parameter for
"SpectreModel_from_HSPICE" models.

Might show when there are syntactical errors in the Spectre model file.

If a file is not in spectre format. Spectre format can be generated as
follows:
1. create model.l and copy your model into it
2. make sure the first line is empty
3. change nmos: to .model nmos nmos
4. spp -convert <model.l> model.scs

The resulting file is:
//
simulator lang=spectre insensitive=yes
model nmos mos3 type=n
+ nsub=7.16e+16 tox=200 uo=511
+ xj=0.5u rsh=236 theta=61.28m
+ lmlt=1 xl=-0.05u ld=0.1u
+ wmlt=1 xw=0.8u wo=0.45u
+ vto=0.815 delta=1.24 gamma=0.681
+ eta=19.25m wic=1 nfs=3.10e+11
+ vmax=160K kappa=0 tlev=1
+ bex=-1.6 tcv=-1.2m capop=2
+ acm=2 cj=350u mj=0.43
+ cjsw=450p mjsw=0.43 pb=0.675
+ cgdo=310p cgso=310p js=2u


This will still give the messages as the parameters mentioned in the
warnings are not valid spectre MOS3 parameters. From what I can tell,
they are valid bsim3 parameters minus acm which is a hspice parameter.
Please do a search for device models on sourcelink.cadence.com. I
think you have an hspice bsim3 model. Please do a search for hspice
level 49 also. There is a compatibility page on hspice 49 to spectre
bsim3.
 
I didn't go through all of you mail, because honestly it is to
long!

Most of the people who reply seriously and qualified in this newsgroup
are no students the have some work to do for that they get payed.
So they are looking more or less frequently quick in this group and
post something if they are aware of a topic without doing any research
on it, so do I, hope you understand.

I replied, but not into the forum, but direct to your above email
address because I send you an older, but maybe useful document on this
topic.

If your email here is just a spam collector and you didn't read
direct replies, I'm sorry.

Bernd

mayank wrote:
> Since no one bothered to reply back to my post
 
Hi Bernd,
Thanks for replying back and attempting to help. Although I am not sure
why I did not get your email, as the address that I used is a genuine,
daily accessed email id. Any way. If you still have the summary I would
be quite obliged if you can send it over to the same address that is
firstname[dot]lastname[at]gmail.com
I greatly appreciate the help.
Regards
mayank gupta
ps. Also I do understand that professionals are more information
centric, I still think that the summary post was a genuine attempt to
help any one on this topic.

Bernd Fischer wrote:
I didn't go through all of you mail, because honestly it is to
long!

Most of the people who reply seriously and qualified in this newsgroup
are no students the have some work to do for that they get payed.
So they are looking more or less frequently quick in this group and
post something if they are aware of a topic without doing any research
on it, so do I, hope you understand.

I replied, but not into the forum, but direct to your above email
address because I send you an older, but maybe useful document on this
topic.

If your email here is just a spam collector and you didn't read
direct replies, I'm sorry.

Bernd

mayank wrote:
Since no one bothered to reply back to my post
 
mayank wrote:
Hi Bernd,
Thanks for replying back and attempting to help. Although I am not sure
why I did not get your email, as the address that I used is a genuine,
daily accessed email id. Any way. If you still have the summary I would
be quite obliged if you can send it over to the same address that is
firstname[dot]lastname[at]gmail.com
I greatly appreciate the help.
Regards
mayank gupta
ps. Also I do understand that professionals are more information
centric, I still think that the summary post was a genuine attempt to
help any one on this topic.

Bernd Fischer wrote:

I didn't go through all of you mail, because honestly it is to
long!

Most of the people who reply seriously and qualified in this newsgroup
are no students the have some work to do for that they get payed.
So they are looking more or less frequently quick in this group and
post something if they are aware of a topic without doing any research
on it, so do I, hope you understand.

I replied, but not into the forum, but direct to your above email
address because I send you an older, but maybe useful document on this
topic.

If your email here is just a spam collector and you didn't read
direct replies, I'm sorry.

Bernd

mayank wrote:

Since no one bothered to reply back to my post
The agilent ADS documentation for the netlist/model library translator (to
import hspice or spectre ) has a good overview of this.
 

Welcome to EDABoard.com

Sponsor

Back
Top