• 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. Monte-Carlo mean included in expressions

Stats

  • Locked Locked
  • Replies 7
  • Subscribers 125
  • Views 6358
  • 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

Monte-Carlo mean included in expressions

Svilen64
Svilen64 over 1 year ago

Hi,

I was wondering if there was a way to extract the mean out of MC simulations and include it in an expression to be calculated after the MC run (say 100 MC iterations) is over.

Thanks
Svilen

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 1 year ago

    Svilen,

    Assuming you have an existing expression for the particular measurement you want, say called existing_measurement, you can add another output and set the evalType column to "sweeps" (this will measure across the Monte Carlo sweep). The expression can then be:

    average(existing_measurement ?continuous nil ?overall t)

    The ?overall t should get added automatically to the expression when you change the evalType to sweeps.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Svilen64
    Svilen64 over 1 year ago in reply to Andrew Beckett

    Andrew, thanks for replying. Let's see if I understood what you are saying.

    I have defined an expression Gain for which I want to obtain the mean value out of MC simulation.
    If I understood well, you are saying I should define another expression, say Gain_avg, for which I set the evalType to sweep and define that Gain_avg as

    average(Gain ?continuous nil ?overall t)

    Have I got it right?

    Svilen

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 1 year ago in reply to Svilen64
    Svilen64 said:
    Have I got it right?

    Yes, spot on.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 1 year ago in reply to Svilen64
    Svilen64 said:
    Have I got it right?

    Yes, spot on.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
  • Andrew Beckett
    Andrew Beckett over 1 year ago in reply to Andrew Beckett

    Svilen64 I assume you spotted the typo (I was about to point it out) and then deleted the post - presumably you got it working.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Svilen64
    Svilen64 over 1 year ago in reply to Andrew Beckett

    Yes, I spotted the typo and deleted the message because of that, thinking that was the reason it was not working. But even after correcting it, I still couldn't get it to work. Simulations go fine, it just doesn't evaluate that specific expression at the end.

    Svilen

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Svilen64
    Svilen64 over 1 year ago in reply to Andrew Beckett

    I need to correct myself. It works but the result is not displayed in the yield summary. I have to switch to detail view to see it.
    Now comes another question. Can I combine in a new expression that average result with any of the other expressions' results that are not of the sweep evalType? For example to calculate the percentage variation wrt average.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 1 year ago in reply to Svilen64

    At the moment, all you can do is add another "sweeps" expression and compute (say) Gain-Gain_Avg (or some similar computation). If you do this, you'll get a waveform you can plot which will plot the computation versus the Monte Carlo iteration; you just can't get the numbers into the output table (in other words, you can't have a Point expression that refers to a Sweeps result - it just doesn't work properly if you do this - I just get 0 for the difference in all points). I even tried a few newer approaches using Measure Across Any - but this didn't work either.

    I can see this would be useful from time to time, so if you want this you should contact customer support and request an enhancement (if you do so, please let me know the case number as I'd be interested in tracking it and encouraging R&D to implement it).

    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