• 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. How to set conditional tests in ADEXL to avoid running tests...

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 125
  • Views 14471
  • 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 set conditional tests in ADEXL to avoid running tests not needed in a sequence of tests.

angcol
angcol over 7 years ago

Hello All,

I am currently executing a pre-trim and pos-trim checks for an oscillator using ADEXL and Montecarlo sampling with the PSS tool. In the initial pre-trim I ran the simulation bench at 27degC and find a gross code approximation. Then in several post-trim simulations I refined the search to obtain the best code. I used a combination of "calcVal" and "VAR" to share information between the consecutive tests. The problem is that I am spending like 5 tests to find the best code even if in my first test I already found the best code. I would like to find a way to not enable the next tests if I already found the code in the first tests. Something like a conditional that if the error is less than half the LSB I would not run the next post-trim tests and I would run just the last two tests, that are actually at a different temperature sharing just the best code found in the first tests.

The sequence I follow is:

1) Run test at 27 degC and find the approximated code to center the frequency of the oscillator.

2) Run same test at 27degC with the code found in 1). Measure frequency and find a better code than in 1).

3) Run same test at 27degC with the code found in 2). Measure frequency and find a better code than in 2).

4) Run same test at 27degC with the code found in 3). Measure frequency and find a better code than in 3).

5) Run same test at 27degC with the code found in 4). Measure frequency and find a better code than in 4).

6) Run same test at 27degC with the code found in 5).

7) Run same test at -40degC with the code found in 5).

8) Run same test at 125degC with the code found in 5).

If the error during any of the steps 2) to 5) is less than the desired accuracy do not execute more tests at 27degC and jump directly to tests 7) and 8) saving the best code found in that specific test.

I already have this sequence working from 1) to 8) but I would like to save tests if they are not needed.

Thanks a lot for any help you can give me.

angel

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

    Hi Angel,

    This can be done in ADE Assembler (the new product which is the next generation from ADE XL) in IC617. In essence you can create what are called "Run Plans" - and these can have conditions as to whether they run or not. You may need a little bit of a script associated with the run plan to get the right code (i.e. from the right run plan test) but I can see how it would be done.

    If you've got access to ADE Assembler, contact customer support to talk this through in more details. If you haven't got access to ADE Assembler, you probably should talk to your account team.

    Kind Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • angcol
    angcol over 7 years ago in reply to Andrew Beckett

    Thanks a lot Andrew for your prompt answer. I will contact my Account team. I was thinking also if there is a trick to speed up the PSS simulation cheating the tool to run quickly (I tried this but without success) or if I can instantiate some verilogA block that based on error being low in the previous test, it can terminate the test quickly and just share the best code found in the previous test to just the last two tests.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • angcol
    angcol over 7 years ago in reply to Andrew Beckett

    Thanks a lot Andrew for your prompt answer. I will contact my Account team. I was thinking also if there is a trick to speed up the PSS simulation cheating the tool to run quickly (I tried this but without success) or if I can instantiate some verilogA block that based on error being low in the previous test, it can terminate the test quickly and just share the best code found in the previous test to just the last two tests.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
  • Andrew Beckett
    Andrew Beckett over 7 years ago in reply to angcol

    That might be possible, but I suspect it's quite difficult to implement (if at all). Could also potentially implement this using a loop in a pre-run script (right mouse button over the test in ADE XL) which keeps looping until a good result is achieved (or it gives up). Again, customer support can give you some help with that - that might be simpler still.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • angcol
    angcol over 7 years ago in reply to Andrew Beckett

    Thanks again Andrew for the reply and the suggestion. Have a great day.

    • 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