• 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. ocean measure success stories or guide?

Stats

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

ocean measure success stories or guide?

drdanmc
drdanmc over 3 years ago

Is anyone aware of a good guide on using ocean measures in ADE Explorer or Assembler that includes all the weird quirks and limitations and maybe highlights some success stories?  I've tried several times over several years (since the introduction of ADE-XL) and have had a universally bad experience.  In fact it has been frustrating enough that I wonder if it is working well for anyone.  Does anyone have a checklist of what it takes to actually get those to work reliably?

Just a few of the frustration points I've hit are, in no particular order

  • The static parsing that used to require axlAddOutputs() but now supposedly only needs axlOutputResult() is fragile and limiting.
  • The derived outputs aren't nicely behaved like expressions.  I make use of named expressions in other expressions all the time in ADE-L for cases where I want to reuse and also simplify what goes in each box.  For example, maybe I'll define ouput_db which is an FFT in decibels, another output to hold a carrier frequency and another for a harmonic.  Then new expressions that make use of those to pull out different terms.  Derived expressions from axlOutputResult don't seem to feed into other expressions.
  • Adding things like units to derived results seems way overly cumbersome.

    axlOutputResult(tsettle "Tsettle")
    session = axlGetWindowSession()
    sdb = axlGetMainSetupDB(session)
    test = caadr(axlGetTests(sdb))
    axlPutOutputUnits(sdb test "Tsettle" "s")

    This seems like a fairly ridiculous amount of effort, including the static entering of the name "Tsettle" twice (putting in a variable doesn't work as others have noted).

    axlOutputResult(tsettle "Tsettle" ?units "s") 

    would be so much more friendly.  Or maybe let axlOutputResult() give a handle that you could then use to add units, specs, etc.  If you manually enter into the GUI, then you have to edit both the ocean measure and then convince Explorer to re-parse the file and then update the units in the GUI.  
  • If you add derived outputs to the ocean script and you have a Maestro plotting template in action, it is a pain to get your new outputs to show up.  I end up creating a new window, right clock on the waveform icon and plot and then copy in ViVA over to a window I want the plot in.  Do this one at a time and then save the template again. 
  • But... derived results don't actually work with Maestro templates anyway.  Those just give `VIVA-6767` and `VIVA-6006` errors when you try to plot outputs if the template things derived outputs should be included.

So, any success stories or any different approaches people are using?  Are there better alternatives especially with the ADE-L EOL looming?

Thanks

-Dan

  • 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