HSpice and Spectre Model differences

Discussion in 'Cadence' started by mayank, Oct 5, 2005.

  1. mayank

    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
     
    mayank, Oct 5, 2005
    #1
  2. mayank

    mayank Guest

    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)
    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" <>
    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 <-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.
     
    mayank, Oct 6, 2005
    #2
  3. 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
     
    Bernd Fischer, Oct 7, 2005
    #3
  4. mayank

    mayank Guest

    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.
     
    mayank, Oct 7, 2005
    #4
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.