• 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 change simulator options as dynamic parameter?

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 129
  • Views 18771
  • 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 change simulator options as dynamic parameter?

fomin
fomin over 15 years ago

Is there any method to change simulator options as dynamic parameters?

For example I want to start simulation with errpreset="conservative" and after some simulation time change it to "liberal".

Another question how can I set simulation time to be stopped after some event?

For example if I run parametric or corner analysis for POR until POR event happened the simulation running very fast because internal oscillator is stopped. But after POR event the oscillator is ON and simulation runs much slower. I need to get only POR delay time, but it's change very wide for different corners, so I have to set the maximum simulation time and wait very long time to finish my corner analysis.

  • Cancel
  • fomin
    fomin over 15 years ago

    I tried the way with paramset file like Andrew recommended /forums/p/10265/414454.aspx#414454

    with time and reltol change only but got error message:

    ERROR: (SFE-1703) : "/user/fomin/pset1" 1. Wrong number of nodes. Port instance has 2 or 3 terminals.

    ERROR: (SFE-874) : "/user/fomin/pset1"  2. Unexpected end of line. Expected equals sign, numeric value or string value.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 15 years ago

    Because your filename does not have the ".scs" suffix, it's assuming it is in SPICE rather than spectre syntax. So either change the filename to be called "pset1.scs" or add a line:

    simulator lang=spectre

    before the paramset definition

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • fomin
    fomin over 15 years ago

    Thank you Andrew!

    Now it works.

    But I changed 2 parameter "reltol" and "strobeperiod". But spectre changes only "reltol". For "strobeperiod" it gives warning that

    "... The parameter 'strobeperiod' defined in 'pset1' paramset is not found inthe netlist and will be ignored."

    In the netlist I see that "reltol" is declared as simulator option but 'strobeperiod' is transient analysis parameter. 

    If there any other way to set different 'strobeperiod' for different time slot? I noticed that for larger 'strobeperiod' simulation is much faster and CPU usage is higher. 

    Now I have to use combination of 'skipstart/stop/count' and 'strobeperiod' setting to speed up my simulation.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • fomin
    fomin over 15 years ago

    I thought I used combination of 'skipstart/stop/count' and 'strobeperiod' setting to speed up my simulation. And as I remember it worked, but now spectre responded with  error message that SkipCount and StrobePeriod cannot be specified simultaneously. Actually I didn't use them simulataneously. I set 'strobedelay' after 'skipstop'

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • fomin
    fomin over 15 years ago

    I tried another way.

    In paramset I set reltol=0.01, vabstol=1e-5, iabstol=1e-11 for time from 0 to 300mS,

    then they2 should be changed to 0.0001, 1e-7 and 1e-12 from 300mS.

    Spectre responded:

    First it inform me about option setting to reltol=0.01, vabstol=1e-5 and iabstol=1e-11 and than

     

    "FATAL (CMI-2002). Insufficient memory available. To reduce memory for rf analyses, please refer "aps -h rfmemory""

    When I changed these options to default 0.001, 1e-6 and 1e-12 simulation start running without any error message.

    I am confused. I thought just opposite: more tough options  need more memory

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 15 years ago

    If I remember rightly, reltol is handled specially by the dynamic parameter stuff - it knows about a few global options which can be changed this way. I'm not sure you can change any old parameter throughout the simulation. You might be able to do it by making the strobeperiod set to "mystrobeperiod" and then varying that, but I think that may not work too - give it a try. Otherwise you'll probably need to contact customer support (support.cadence.com) so it can be investigated properly and an enhancement request filed.

    You should be able to use skipstart and strobeperiod (this allows control over when the strobing starts). However, I suspect the other combinations may make spectre think that both strobing and skipping are in operation together. Anyway, if this is not behaving properly, I think customer support is the best bet so we can get it to R&D.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

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