• 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. Getting more data after MC run directly in the Results table...

Stats

  • Replies 1
  • Subscribers 130
  • Views 44
  • Members are here 0

Getting more data after MC run directly in the Results table?

StephanWeber
StephanWeber 5 hours ago

Hi,

the ViVA calculator has some nice statistical functions, like average, stddev, skewness, kurtosis, and building more like Cpk or Jarque-Bera JB is not so difficult. But I struggle to get this not only in the calculator but really as output, e.g. to define a spec! E.g. we want Cpk>1.67 or  e.g. JB<3 for check for Gaussian data.

What works so far is this: 

I switch to Detailed table mode, select an output like Rsense or VoutDC, do a "plot across points", then I go to Viva and make "Send to Calculator", then I get an expression like swapSweep(Rsense "Design Points" "nom"), next I simply set x=swapSweep(Rsense "Design Points" "nom"). So it is no easy to get the mean and stddev and then to plot the Gaussian PDF of that fit.

However, I struggle to make that not only manually every time after the MC run but as output expression which would give a much higher automation. E.g. I want to see:

- The PDF plot for a fit for each MC analysis and my key outputs (I run MC vs VT corners)

- Also look for 5-sigma values

- Check if data is Gaussian, e.g. do also other fits like lognormal fit of JB is too large

- Or check at which corner the 5-sigma value is worst, etc.

This way I also do not need to plot Histograms etc. manually after each run.
His anybody done this before?

e.g. stddev(Rsense ?overall t) (with sweeps selected) works but skewness(Rsense ?overall t) (works in CIW!!) is changed to (skewness Rsense ?overall t)
same issue for kurtosis.

Are these Cadence-functions not registered in ADE?

Bye Stephan

  • Cancel
  • Sign in to reply
Parents
  • Andrew Beckett
    Andrew Beckett 4 hours ago

    Stephan,

    You should just need to set the evalType column for the measurement to be "sweeps". Then it will make the measurement across the sweep (i.e. the Monte Carlo sweep), rather than the default eval type which is "point" - that's only evaluated per individual Monte Carlo point and so cannot compute results across the whole set of mc iterations.

    If you've built your post-processing functions properly, they should work across the sweep data too. 

    Personally I've not created the functions you're asking for in SKILL (I have for many others, of course), but I have used the ADE MATLAB integration to do the same thing... see this video: Using the Enhanced Virtuoso ADE Product Suite and MATLAB Integration: A Practical Guide (Video [cc])

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett 4 hours ago

    Stephan,

    You should just need to set the evalType column for the measurement to be "sweeps". Then it will make the measurement across the sweep (i.e. the Monte Carlo sweep), rather than the default eval type which is "point" - that's only evaluated per individual Monte Carlo point and so cannot compute results across the whole set of mc iterations.

    If you've built your post-processing functions properly, they should work across the sweep data too. 

    Personally I've not created the functions you're asking for in SKILL (I have for many others, of course), but I have used the ADE MATLAB integration to do the same thing... see this video: Using the Enhanced Virtuoso ADE Product Suite and MATLAB Integration: A Practical Guide (Video [cc])

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • 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.

© 2026 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information