• 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 SKILL
  3. Cadence SKILL/Ocean loading and saving dc operating point...

Stats

  • Locked Locked
  • Replies 7
  • Subscribers 143
  • Views 4892
  • 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

Cadence SKILL/Ocean loading and saving dc operating point in dc sweep simulation

MatthewT
MatthewT over 10 years ago

Hi,

I looked into web and cadence manuals, but I cannot find the answer to my question. I think I saw it some time ago on our forum here, but I cannot find it right now.

I'm running dc simulation:

analysis('dc ?dev "/voltage_dc_source"  ?param "dc"  ?start "value_low" ?stop "value_high"  ?step "1m" )
envOption(
          'analysisOrder  list("dc")
); envOption
run()


I would like to have faster convergence. I found following commands:
- write
- writefinal
- readns

I can run .tran simulation with "?writefinal" attribute pointing to the file where .op of the circuit will be saved and then load it for dc simulation:

analysis('tran ?stop "500n" ?writefinal "tran.fc")
envOption(
    'analysisOrder  list("tran")
); envOption
run()

(...)

analysis('dc ?dev "/voltage_dc_source"  ?param "dc"  ?start "value_low" ?stop "value_high"  ?step "1m" ?readns "tran.fc" )
envOption(
    'analysisOrder  list("dc")
); envOption
run()    


however in such a case, every dc simulation uses the same input tran.fc file. The question is, is it possible to:
1. run 1st dc sweep
2. save calculated dc operating point
3. start 2nd sweep
4. load dc operating point from the 1st sweep
5. run 2nd sweep
6. save dc operating point of 2nd sweep
7. and so on ...

?

  • Cancel
Parents
  • MatthewT
    MatthewT over 10 years ago

    Hi,

    Thank you both for your suggestions. However, I think I was not clear in my first post. Want I would like to achieve is to save dc operating point for every step of dc simulation, where a voltage source is swept from one value to another with a given step. Not for every dc sweep.

    For example, if we have a dc simulation where voltage_dc_source is swept from 0 V to 1 V with step of 1m:

    analysis('dc ?dev "/voltage_dc_source"  ?param "dc"  ?start "0" ?stop "1"  ?step "1m" )


    is it possible to save a dc operating point for 0 V, then load it for 0.01 V, save dc op point for 0.01 V and load it for 0.02 V and so on?

    I did simulations and I see that when dc operating point is saved for tran simulation (using "writefinal") and then is read by "readns" in dc simulation it helps to run the analysis faster. However, the same dc operating point is used for every dc step. While we calculate new dc operating point for every dc step we could use them one after another for following dc steps as in the example above. DC operating point for one step is closer to the ideal for following dc step, while initial tran operating point may not. Hence, the simulation should run even faster.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • MatthewT
    MatthewT over 10 years ago

    Hi,

    Thank you both for your suggestions. However, I think I was not clear in my first post. Want I would like to achieve is to save dc operating point for every step of dc simulation, where a voltage source is swept from one value to another with a given step. Not for every dc sweep.

    For example, if we have a dc simulation where voltage_dc_source is swept from 0 V to 1 V with step of 1m:

    analysis('dc ?dev "/voltage_dc_source"  ?param "dc"  ?start "0" ?stop "1"  ?step "1m" )


    is it possible to save a dc operating point for 0 V, then load it for 0.01 V, save dc op point for 0.01 V and load it for 0.02 V and so on?

    I did simulations and I see that when dc operating point is saved for tran simulation (using "writefinal") and then is read by "readns" in dc simulation it helps to run the analysis faster. However, the same dc operating point is used for every dc step. While we calculate new dc operating point for every dc step we could use them one after another for following dc steps as in the example above. DC operating point for one step is closer to the ideal for following dc step, while initial tran operating point may not. Hence, the simulation should run even faster.

    • 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