• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC Design
  3. How to set the model parameter STIMOD in simulation?

Stats

  • Locked Locked
  • Replies 11
  • Subscribers 125
  • Views 20114
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How to set the model parameter STIMOD in simulation?

Alex Liao
Alex Liao over 12 years ago
Hi

The STIMOD is the LOD stress effect model selector. I can view this after any simulation by printing the model parameter in virtuoso ADE. But I have checked the modelfile.scs which is included in any simulation. It is BSIM4.5 and no such selector found in it. Is there anybody who knows how to set this STIMOD? If it is in print MODEL parameter, it should come from somewhere. Anyone who has knowledge and presents here is highly appreciated.

Thanks,

Alex
  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    OK, I tried replying just now, but my connection timed out. I'll try again and combine everything into one post.

    First of all, apologies for the missing file - I'd forgotten that the forum site only supports certain suffixes on files, and .scs is not one of them. However, the file is identical to the indented piece of text in this earlier post of mine in this thread. So cut and paste that text into a file called teststimod.scs and then run spectre on it. Run it first without the pipe and grep, and if it works by all means pipe the output into grep to spot the stimod output.

    Secondly, your attempt to run it failed because you had library and section statements in the file, and as I'd said before you can't run that directly with spectre. They only work if you include the file, using something like include "thefile.scs" section=blah.

    Thirdly, stimod=0 is using the Berkeley model, and stimod=1 or 2 means using the TSMC LOD model. So that's different from what your friend said. That said, 4.3 was so long ago, I think it's always worked this way (and stimod has only been supported in spectre since MMSIM61 (2005). Maybe it was an HSPICE-specific extension at some point and then they changed the behaviour to match the standard? That said, some of the changes in behaviour have been at the behest of certain foundries.

    The way that you've modified your file in your final post append is fine, but it won't output anything about stimod on the output because presumably you didn't add:

      models info what=models where=screen

    which is running an info analysis but directing the output to the screen, rather than to a rawfile (the binary database usually used in ADE). So it's not surprising it doesn't print anything.

    And all that ".scs" indicates is that the file is in spectre syntax. The default is that any file that spectre reads is in SPICE syntax, unless the file ends with a .scs suffix - and avoids you having to use the "simulator lang=spectre" construct to switch to spectre's more regular syntax (SPICE is quite archaic and rather irregular).

    Next, MMSIM72 is quite old - and the version you're using is almost 4 years old. I somehow doubt that's got anything to do with the issue - maybe you modified the models in the wrong section. TSMC models are quite complex as they have a complex nesting of includes. For example, you include in your netlist the section=tt, but within the definition of the file you're including, in the tt section, it will go on to include other sections (e.g. the mos section) from a named file. So did you update the includes in the tt section to include your modified teststimodModel.scs or is it including the original model file? If so, it will be completely missing your modifications because it goes on to include the original file. Be careful because there are lots of includes in TSMC models of various sections. This is the most likely explanation as to why you don't see the stimod parameter change having an effect, in my opinion.

    Finally, why are you modifying a foundry's carefully characterized models anyway?

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    OK, I tried replying just now, but my connection timed out. I'll try again and combine everything into one post.

    First of all, apologies for the missing file - I'd forgotten that the forum site only supports certain suffixes on files, and .scs is not one of them. However, the file is identical to the indented piece of text in this earlier post of mine in this thread. So cut and paste that text into a file called teststimod.scs and then run spectre on it. Run it first without the pipe and grep, and if it works by all means pipe the output into grep to spot the stimod output.

    Secondly, your attempt to run it failed because you had library and section statements in the file, and as I'd said before you can't run that directly with spectre. They only work if you include the file, using something like include "thefile.scs" section=blah.

    Thirdly, stimod=0 is using the Berkeley model, and stimod=1 or 2 means using the TSMC LOD model. So that's different from what your friend said. That said, 4.3 was so long ago, I think it's always worked this way (and stimod has only been supported in spectre since MMSIM61 (2005). Maybe it was an HSPICE-specific extension at some point and then they changed the behaviour to match the standard? That said, some of the changes in behaviour have been at the behest of certain foundries.

    The way that you've modified your file in your final post append is fine, but it won't output anything about stimod on the output because presumably you didn't add:

      models info what=models where=screen

    which is running an info analysis but directing the output to the screen, rather than to a rawfile (the binary database usually used in ADE). So it's not surprising it doesn't print anything.

    And all that ".scs" indicates is that the file is in spectre syntax. The default is that any file that spectre reads is in SPICE syntax, unless the file ends with a .scs suffix - and avoids you having to use the "simulator lang=spectre" construct to switch to spectre's more regular syntax (SPICE is quite archaic and rather irregular).

    Next, MMSIM72 is quite old - and the version you're using is almost 4 years old. I somehow doubt that's got anything to do with the issue - maybe you modified the models in the wrong section. TSMC models are quite complex as they have a complex nesting of includes. For example, you include in your netlist the section=tt, but within the definition of the file you're including, in the tt section, it will go on to include other sections (e.g. the mos section) from a named file. So did you update the includes in the tt section to include your modified teststimodModel.scs or is it including the original model file? If so, it will be completely missing your modifications because it goes on to include the original file. Be careful because there are lots of includes in TSMC models of various sections. This is the most likely explanation as to why you don't see the stimod parameter change having an effect, in my opinion.

    Finally, why are you modifying a foundry's carefully characterized models anyway?

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information