• 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 different accuracy settings for different time...

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 126
  • Views 23865
  • 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 different accuracy settings for different time periods in transient simulation.

vamshiky
vamshiky over 11 years ago

Hi,

 

I have a circuit which takes some 10us for the initial transients to settle and reach a steady state.

Just wondering if can reduce the simulation accuracy to 'moderate'  during the initial times and later make it 'conservative' after reaching the steady state.


Is it doable using spectre simulator?

 

Thanks,

Vamshi

 

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 11 years ago

    Vamshi,

    This can be done easily. Use the "Dynamic Parameter" checkbox on the transient analysis form. Then set the Parameter Name to "errpreset" and  choose Parameter vector. Add time 0 and value moderate and also 10u and value conservative. This will then do exactly what you want.

    Regards,

    Andrew.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • vamshiky
    vamshiky over 11 years ago
    Thanks Andrew, it works.
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • HHashempour
    HHashempour over 8 years ago

    Hi Andrew,

    I am trying to do exactly above but in the tstab of a PSS analysis (not a normal TRAN). It complains with the following error that keyword conservative has issue:

     ERROR (SFE-51): Name conflict: value `conservative' of type `scalar string' encountered. Expected value is of type `vector real pair'

    Any idea/hint?

    Thanks for your help!

    Regards,

    Hamid

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

    Hamid,

    This appears to be a bug. You must have tried "conservative" (with quotes) to get that error - that wouldn't work anyway - but without the quotes it fails too:

        ERROR (SFE-1997): "input.scs" 59: pss: parameter `param_vec': Cannot run the simulation because an unknown parameter `conservative' has been specified in expression `conservative'. Correct the expression and rerun the simulation.

    Instead, use the value 2. Since errpreset is an enumerated value, you can use 0 instead of liberal, 1 instead of moderate, and 2 instead of conservative. I've tried this and it works fine - the log file tells you it's switching to conservative.

    I'll file a CCR for this issue.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • HHashempour
    HHashempour over 8 years ago
    Hi Andrew,

    Thanks for your feedback. I had tried both lower case and capital 'c' in conservative as well as single and double quotes. Neither worked. I will try to use it with integer indexes (0, 1, and 2).

    Is there a way I can dynamically vary 'maxsteps'?

    Regards,

    Hamid
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 8 years ago

    Hamid,

    Using uppercase in the name wouldn't have worked anyway because spectre is case-sensitive. 

    To control the maximum timestep, you'd just use maxstep (not maxsteps) as the parameter. This works in both tran and pss analyses (I tested it).

    However, in general I can't see too many reasons to change this dynamically. The primary use of maxstep is to set it tightly to force time steps to get an oscillator to start more rapidly; once the oscillator is up and running it would probably take those time steps anyway. It is rather a blunt instrument to control accuracy, if that was your intent, and there are better ways to perform that than forcing the maximum timestep.

    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