• 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 SKILL
  3. Accessing ADEXL outputs from Ocean

Stats

  • Locked Locked
  • Replies 3
  • Subscribers 143
  • Views 16079
  • 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

Accessing ADEXL outputs from Ocean

pkerichang
pkerichang over 8 years ago

Hello,

So I ran a parametric sweep with ADEXL and sets a history tag name.  Then, later in Ocean I use axlReadHistoryResDB() to load the simulation results from that history, and use the ResDB data structure and openResults() to load simulation results from a particular parametric sweep point.  However, I can't figure out how to access the outputs defined by the ADEXL in the GUI.  It exists as an output in the ResDB data structure, but if the output is a signal instead of a scalar there is no data associated with it.  How can I access the output in ocean?  Can I at least get the ocean expression associated with the output and evaluate it to recover the data?

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

    Eric,

    This is much harder than it should be (I think an enhancement in this area would be worthwhile). The RDB doesn't contain the waveform data, so the value slot for something with a waveform will just say "wave".

    You'd need to do something like:

    axlSess=axlGetWindowSession()
    sevSess=axlGetToolSession(axlSess "testName") ; possibly need the ?history here too
    asiSess=sevEnvironment(sevSess)
    ; find the output structure you want
    output=car(exists(output asiGetOutputList(asiSess) output~>name=="OUTNAME"))

    Then output~>expression will contain the expression you want.

    Then you could use (say) the rdb->test("testName" "C0_0" 1) function to get the info about a particular corner and point number, and from this you have ~>resultsDir - so I can do:

    result=rdb~>test("testName" "C0_0" 1)
    openResults(result~>resultsDir)
    waveform=eval(output~>expression)
    plot(waveform)

    The new Maestro API for ADE Explorer and Assembler also doesn't quite handle this - the maeGetOutputValue() function also returns "wave" for something that is a waveform.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 8 years ago

    Eric,

    This is much harder than it should be (I think an enhancement in this area would be worthwhile). The RDB doesn't contain the waveform data, so the value slot for something with a waveform will just say "wave".

    You'd need to do something like:

    axlSess=axlGetWindowSession()
    sevSess=axlGetToolSession(axlSess "testName") ; possibly need the ?history here too
    asiSess=sevEnvironment(sevSess)
    ; find the output structure you want
    output=car(exists(output asiGetOutputList(asiSess) output~>name=="OUTNAME"))

    Then output~>expression will contain the expression you want.

    Then you could use (say) the rdb->test("testName" "C0_0" 1) function to get the info about a particular corner and point number, and from this you have ~>resultsDir - so I can do:

    result=rdb~>test("testName" "C0_0" 1)
    openResults(result~>resultsDir)
    waveform=eval(output~>expression)
    plot(waveform)

    The new Maestro API for ADE Explorer and Assembler also doesn't quite handle this - the maeGetOutputValue() function also returns "wave" for something that is a waveform.

    Regards,

    Andrew.

    • 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