• 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. How to? Blocking call to sevRun (or similar)

Stats

  • Locked Locked
  • Replies 3
  • Subscribers 143
  • Views 13560
  • 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? Blocking call to sevRun (or similar)

KevinWarren
KevinWarren over 5 years ago

Is there a way to make sevRun or one of its siblings blocking and if not what's the most reasonable polling method to implement? I am wanting to perform a large number of Spectre simulations sequentially. The results (e.g., psf file) of each execution overwrites the previous (that is to say I don't need to save any of the results). I am basically grabbing an internal verilog model state after each run and sending it to a file/display so the flow is more or less:

foreach(item mylist

   configsim(item)

   sevRun(mySession) ; needs to block or implement sane polling solution

   getResultAndDisplay() ; get the output of the previous simulation, store or display it

)

Also, somewhat in parallel, is there a way to query as to whether ADE or whatever the managing entity is thinks there is still a simulation running? Originally when I did this I assumed that sevRun was blocking but obvious it isn't. So, I tried to immediately call sevRun for a dozen simulations which caused things to go berserk. ADE was sure there was a simulation running in the background but there was no process and no lock file and I didn't know where else to look. My only solution was to kill ADE altogether and start over. 

Thanks! 

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 5 years ago

    This can be done either with ADE Explorer/Assembler (using some of the mae functions if you really want to script it, although in many cases you might be able to do it with the UI), or you could use the OCEAN functions (the run() function supports having a blocking simulation or not - it's up to you). The sev functions aren't really intended for a scripted approach to simulation - they're there from the ADE L interface.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • KevinWarren
    KevinWarren over 5 years ago in reply to Andrew Beckett

    Thanks, I was able to make this work using Explorer environment (mae) and OCEAN. I'm not quite sure how I could make what I'm doing work within the UI itself and I'm afraid getting into the nuts and bolts would potentially consume a lot of your time.  

    In the same general category of running a large number of sequential simulations, I'm trying to minimize wasted time. Is there a method (or resource) you could outline for checking out and holding a license? In some cases and configurations it can end up being the longest part of a simulation step. 

    Thanks again 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • KevinWarren
    KevinWarren over 5 years ago in reply to Andrew Beckett

    Thanks, I was able to make this work using Explorer environment (mae) and OCEAN. I'm not quite sure how I could make what I'm doing work within the UI itself and I'm afraid getting into the nuts and bolts would potentially consume a lot of your time.  

    In the same general category of running a large number of sequential simulations, I'm trying to minimize wasted time. Is there a method (or resource) you could outline for checking out and holding a license? In some cases and configurations it can end up being the longest part of a simulation step. 

    Thanks again 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
  • Andrew Beckett
    Andrew Beckett over 4 years ago in reply to KevinWarren

    Sorry for not replying to your secondary question. There's no mechanism for checking out and holding onto a license. There are various things you can do to minimise license checkout time - I would suggest contacting customer support as we can then help you optimise the licensing setup.

    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