• 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. Get Monte Carlo Nominal Data in ADE XL

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 126
  • Views 15598
  • 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

Get Monte Carlo Nominal Data in ADE XL

phill1127
phill1127 over 9 years ago

in ADE XL I am running monte carlo and would like to make measurements against the nominal simulation. That is, I want to do something like f(current_iteration)-f(nominal). How can I access the nominal data in ADE XL for use in a measurement? I can get the data with something like v("/netname" ?result "nom_dc-dc" ?resultsDir <path_to_nom_psf>) but this requires hard coding the results directory. I want to have something I can put in an expression in the Outputs Setup tab that automatically picks up the current monte carlo's nominal data.

There appears to be a separate psf for the nominal data that is different than the main psf that includes all of the mc iterations. Currently, I'm trying an OCEAN script type output to get the current run path and from that build the path to the nominal data for use in v() function. My OCEAN uses axlAddOutputs and axlOutputResult to get the waveform in the ADE XL outputs list. The body of the OCEAN gives the desired result when copied into the CIW but ADE XL Results tab gives "eval err." My best guess at this point is that re-running outputs from the Results tab doesn't like axlGetCurrentHistory.

ADE XL appears to only use the nominal simulation to determine if there's an error before continuing with the monte carlo run. There doesn't seem to be any way to get the nominal data back into ADE XL. The OCEAN script method above is just what seemed like it would work and is my latest attempt. It feels like there should be something simpler and more convenient... as in, ADE XL should actually be aware somehow of the nominal data.

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

    I'm not sure this is necessarily a good idea as it removes the ability for multiple monte carlo to run within the same simulator invocation - for short simulations it would be noticeably slower.

    In fact to answer Phill's original question, I've had a request in for a while (which is is going to be implemented soon) which is to either provide access to the nominal results in Monte Carlo (based on that checkbox) or to remove it altogether. The infrastructure has been changed so the use of the nominal run to check expressions doesn't really work any more and it just ends up being a wasted simulation. Changing the environment to display the nominal results and the monte carlo points together would be quite complex, so we have taken the decision to remove the option to run the nominal run altogether. Having carefully reviewed the option, this is a sensible approach in terms of simplification and not wasting simulation time on something you can't use.

    Now, to come to Phill's request. There is some work to extend the calcVal function to access a named history, but it's not ready yet (there's also the whole challenge of ensuring it does the right thing when you are running different corners, and different sweeps between runs). I'd thought of writing a function myself to allow you to reference results from previous histories in a calculation, but that would potentially suffer from the same problem - handling all cases where you have different sweeps and corners between one run and the next is non-trivial and requires careful thought.

    There are some potential workarounds using preRunScripts to populate an output based on the result of a previous history, but that would suffer from similar limitations that I mentioned in the first paragraph.

    So overall, this is not so straightforward as it might appear. I would suggest you contact customer support to ensure that a duplicate enhancement request (I'm sure there's one already asking for this) can be filed to ensure we capture your requirements and need for such a feature.

    Kind Regards,

    Andrew.

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

    I'm not sure this is necessarily a good idea as it removes the ability for multiple monte carlo to run within the same simulator invocation - for short simulations it would be noticeably slower.

    In fact to answer Phill's original question, I've had a request in for a while (which is is going to be implemented soon) which is to either provide access to the nominal results in Monte Carlo (based on that checkbox) or to remove it altogether. The infrastructure has been changed so the use of the nominal run to check expressions doesn't really work any more and it just ends up being a wasted simulation. Changing the environment to display the nominal results and the monte carlo points together would be quite complex, so we have taken the decision to remove the option to run the nominal run altogether. Having carefully reviewed the option, this is a sensible approach in terms of simplification and not wasting simulation time on something you can't use.

    Now, to come to Phill's request. There is some work to extend the calcVal function to access a named history, but it's not ready yet (there's also the whole challenge of ensuring it does the right thing when you are running different corners, and different sweeps between runs). I'd thought of writing a function myself to allow you to reference results from previous histories in a calculation, but that would potentially suffer from the same problem - handling all cases where you have different sweeps and corners between one run and the next is non-trivial and requires careful thought.

    There are some potential workarounds using preRunScripts to populate an output based on the result of a previous history, but that would suffer from similar limitations that I mentioned in the first paragraph.

    So overall, this is not so straightforward as it might appear. I would suggest you contact customer support to ensure that a duplicate enhancement request (I'm sure there's one already asking for this) can be filed to ensure we capture your requirements and need for such a feature.

    Kind Regards,

    Andrew.

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

    Hi Andrew, I wonder if this is already solved or implemented.

    Thank you.

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

    This has been implemented in ADE Assembler (and Explorer to some extent) from IC617 ISR4 (I think that was the ISR) onwards. In both, you no longer have the option of running the nominal run as part of the Monte Carlo (which was a bit pointless, since you couldn't access the results). In ADE Assembler, you can create what are called "Run Plans" which means you can define to run a nominal simulation (or a set of corners) first and then a Monte Carlo, and then both sets of results are fully available. You can reference the results of one run plan in another using calcVal.

    ADE XL is in "Sunset" mode, which means that no non-critical fixes are being made to it; ADE Explorer and Assembler  are the next generation ADE tools.

    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