• 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 access ADE-XL through skill?

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 125
  • Views 15794
  • 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 access ADE-XL through skill?

adeuser777
adeuser777 over 12 years ago
Currently, I access ADE-XL tests through Skill using axlGetMainSetupDB( axlGetWindowSession() ). For this to work, I need to have ADE-XL session open.

Is there a way to read the details using Ocean/Skill command without opening ADE-XL?

These are the specific commands I use now.

axl_session=axlGetWindowSession()

hsdb_session=axlGetMainSetupDB( axl_session )

tests=axlGetTests(hsdb_session)

test_names=setof( test cadr(tests)

axlGetEnabled( axlGetTest( hsdb_session test ))

                       );setof

test_name=car(test_names)

sev_session=axlGetToolSession(axl_session test_name)

o_session = sevEnvironment( sev_session )

Once I get o_session id, I use this to read and write in to ADE-XL tests.

My end goal is to primarily read the contents from ADE-XL tests without opening ADE-XL. Can it be done?

Thanks,

Ram
  • Cancel
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    Ram,

    axl_session=axlCreateSession(getCurrentTime()) ; getCurrentTime gives you a unique session id
    hsdb=axlSetMainSetupDBLCV(axl_session "libName" "cellName" "adexl")

    and then carry on as before.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • adeuser777
    adeuser777 over 12 years ago

    Hi Andrew,

    You saved my day. Thanks a lot.

     

    Ram

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • adeuser777
    adeuser777 over 12 years ago

     Hi Andrew,

    I have a problem.

     

    axlSetMainSetupDBLCV seem to work only if I write permission to adexl view. If I do not have write access, it dumps the below error.

     

       hsdb_session=axlSetMainSetupDBLCV(axl_session "testlib" "inv" "adexl")
    ERROR (ADEXL-1625): Could not create the state directory /tmp/locallib/testlib/inv/adexl/states". Check permissions and try again.
    *Error* error: Could not create the state directory "/tmp/locallib/testlib/inv/adexl/states". Check permissions and try again. - nil
    <<< Stack Trace >>>
    (... in axlSetMainSetupDB ...)
    (... in axlSetMainSetupDBLCV ...)
     filename = "data.sdb"
     filepath = "/tmp/locallib/testlib/inv/adexl/data.sdb"
     sdb = nil
     session = "Jul  9 12:02:39 2013"
     lib = "testlib"
     cell = "inv"
     view = "adexl"
     mode = "a"
    axlSetMainSetupDBLCV(axl_session "testlib" "inv" "adexl")
    (hsdb_session = axlSetMainSetupDBLCV(axl_session "testlib" "inv" "adexl"))

     

     

    I don't see an option to specify "r" only in axlSetMainSetupDBLCV.

     

    Thanks,

    Ram

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    Ram,

    Try:

    hsdb_session = axlSetMainSetupDBLCV(axl_session "testlib" "inv" "adexl" ?mode "r")

    If that works, I'll file a CCR to get this additional (currently undocumented) argument documented. Sorry I don't have time to try it myself right now.

    Regards,

    Andrew.

     


    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • adeuser777
    adeuser777 over 12 years ago

     Yes, it worked. Thanks Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • adeuser777
    adeuser777 over 12 years ago
    Hi Andrew, I have another question wrt this flow.

    I was trying to execute my skill script using "virtuoso -nograph -replay <path to .il>" command.

    My skill file uses axlSetMainSetupDBLCV command to get the adexl handle and then also fires simulation with axlRunAllTestsWithCallback command.

    Problem is, axlRunAllTestsWithCallback executes a child virtuoso process and returns control back to main process. Once the control is back to main virtuoso, it exits which also kills the child process (simulation) as well.

    Is there any way we can block the main session till simulation is complete? I am not sure if I can use ipcBeginProcess as the child session is launched internally through axlRunAllTestsWithCallback.

    Is there a way to workaround this? I can replace axlRunAllTestsWithCallback with set of oceanXL commands, but I was hoping to reuse the setup without much modification.

    Thank you,

    Ram
    • 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