• 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. Re-run Monte Carlo failures for Two-Step trim simulatio...

Stats

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

Re-run Monte Carlo failures for Two-Step trim simulations

TempViator
TempViator over 1 year ago

Hello,

I have a 2-step trim simulation set in a Run Plan. In the first test, the circuit trim codes are set to find the best correction. It is a Transient sim at each code and the final value is the evaluated measurement. In the second test, the circuit is simulated over temperatures at the correct trim code for each Monte Carlo run. This works correctly.

The problem: some of the initial Transient sims fail, which creates failures in the second test also. If I go to the first test results where it indicates "fail", I do not get a menu to run Troubleshoot to re-run the point.  If I go to the second test results where it indicates "sim err", I get a menu that includes a Troubleshoot option, but then the information from the trimming seems to have been lost. I get a warning about that after I let the Troubleshoot run.

Is there a way to get the 2-test sequence both to re-run and retry these failure points?

It seems if I highlight all the failed sims, it will rerun all of them...is that true?

If so, will the re-run data get merged back into the original sim so I don't have missing points?

I am using IC6.1.8 ISR18.

Thanks.

  • Cancel
Parents
  • TempViator
    TempViator over 1 year ago

    After some experimenting, the issue here boils down to a Normal vs. Troubleshooting run and how calcVal passes information.

    For the bulk of operating sims, I use the calcVal function in a way that passes data assuming that the trimming and post-trimming tests occur in the same run and sequentially:

    calcVal("Trim_VBG_best" "VBG_Trim" ?cornerName "Trim" ?defaultVal 0)

    But what I really need is for calcVal to pull info from the successful VBG_Trim test and pass it to the Troubleshooting rerun of the next test.  The only way I see to do that is to separate the rimming run into a stand-alone simulation that writes its data, and then set up the calcVal reference to an already-completed test results, perhaps like this:

    calcVal("Trim_VBG_best" "VBG_Trim" ?cornerName "Trim" ?historyName "VBG_Trim_Only" ?defaultVal 0)

    where VBG_Trim_Only is the name of a stand-alone sim that only trims, but does not run post-trim sims.

    I have not yet searched for it, but I think there is some detail to making sure the Monte Carlo run sequence is the same for two separate simulations...this is necessary to make sure the trims correlate to the right post-trim sims.

    Is there a simpler way to make the Troubleshooting reruns pick up the calcVal info?

    And am I missing a step in getting this to work, as described above?

    Thanks for any useful replies!

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • TempViator
    TempViator over 1 year ago

    After some experimenting, the issue here boils down to a Normal vs. Troubleshooting run and how calcVal passes information.

    For the bulk of operating sims, I use the calcVal function in a way that passes data assuming that the trimming and post-trimming tests occur in the same run and sequentially:

    calcVal("Trim_VBG_best" "VBG_Trim" ?cornerName "Trim" ?defaultVal 0)

    But what I really need is for calcVal to pull info from the successful VBG_Trim test and pass it to the Troubleshooting rerun of the next test.  The only way I see to do that is to separate the rimming run into a stand-alone simulation that writes its data, and then set up the calcVal reference to an already-completed test results, perhaps like this:

    calcVal("Trim_VBG_best" "VBG_Trim" ?cornerName "Trim" ?historyName "VBG_Trim_Only" ?defaultVal 0)

    where VBG_Trim_Only is the name of a stand-alone sim that only trims, but does not run post-trim sims.

    I have not yet searched for it, but I think there is some detail to making sure the Monte Carlo run sequence is the same for two separate simulations...this is necessary to make sure the trims correlate to the right post-trim sims.

    Is there a simpler way to make the Troubleshooting reruns pick up the calcVal info?

    And am I missing a step in getting this to work, as described above?

    Thanks for any useful replies!

    • 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