• 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. ADE XL without UI

Stats

  • Locked Locked
  • Replies 2
  • Subscribers 143
  • Views 14330
  • 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

ADE XL without UI

Eugene201
Eugene201 over 8 years ago

Hi,

I would like to run an ADE XL simulation the same way as if I press the green run button without the user interface. The reason I'm trying to do this is we have a computing cluster with very powerful computers but they can only be run by command line. These computer have their own distribution manager and the work directory can't be mounted on them so the built in distributed/remote host method won't work. The submitted job would run on a single computer with many cores to save simulation time. The goal would be to copy (rsync) my work directory to the cluster, run the simulation, copy (rsync) it back to my computer, and then open the ADE XL view and load the “history run” to analyse the data. This way it would just run the last saved state of the ADE XL view and be able to do variable/parameter sweeps along with other run types that ADE XL offers. I have done extensive searching to find the answer to this idea but have only found a way to run spectre from command for a single simulation without variable sweeps. Please let me know if this is even possible to do and if it is where can I find the documentation for it.

My vision of a command that would do this: virtuoso --nograph -replay function.replay

{

"function.replay" contents

cv = dbOpenCellViewByType("Control_Circuits" "DAC_Tester" "adexl" "" "a")

runid = axlRunSimulation(?session cv ?callback exit) ;;Not sure if I can call exit as a callback when simulation finishes

}

However this does work the way it is now. The view "adexl" doesn't seem to be recognised by Virtuoso.

Thank you in advance,

Eugene

My software versions are:

Virtuoso IC06.16.090

MMSIM 13.11.292

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 8 years ago

    That won't work, because the db functions are for loading OpenAccess databases, not ADE XL databases.

    This is actually a whole lot easier in ADE Assembler and Explorer in IC617 because you can use maeLoadSetup() and then maeRun() - really  easy.

    In ADE XL though, you could either save the setup within the ADE XL view to a setup state and then use this kind of methodology:


    ;----------------- Setup State "corner sims" ---------------
    ocnSetXLMode()
    ocnxlTargetCellView( "opamp090" "full_diff_opamp" "adexl" )
    ocnxlProjectDir( "./simulation" )
    ocnxlResultsLocation( "" )
    ocnxlSimResultsLocation( "" )

    ocnxlLoadSetupState( "corner sims" 'retain ?tests t ?vars t ?parameters t ?currentMode t
      ?specs t ?corners t ?extensions t ?runOptions nil
      ?wavespecs nil ?modelGroups nil ?relxanalysis nil ?checksasserts nil
    )

    ;====================== Job setup ==============================================
    ocnxlJobSetup( '(
      "blockemail" "1"
      "configuretimeout" "300"
      "distributionmethod" "Local"
      "lingertimeout" "300"
      "maxjobs" "1"
      "name" "ADE XL Default"
      "preemptivestart" "1"
      "reconfigureimmediately" "1"
      "runtimeout" "-1"
      "showerrorwhenretrying" "1"
      "showoutputlogerror" "0"
      "startmaxjobsimmed" "1"
      "starttimeout" "300"
      "usesameprocess" "1"
    ) )

    ocnxlRun()
    ocnxlOutputSummary()
    ocnxlEndXLMode()

    This is using OCEAN XL to do the job, but you have to use the ocnxlLoadSetupState function - there's no function to load the active setup, rather oddly. Or you could use this:

    axlSess=axlCreateSession(getCurrentTime())
    axlSetMainSetupDBLCV(axlSess "opamp090" "full_diff_opamp" "adexl")
    axlRunSimulation(?session axlSess ?callback "exit()")

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Eugene201
    Eugene201 over 8 years ago
    Hi Andrew,

    Thank you for the reply.

    I have found that the Ocean script with active setup can be saved directly from the ADEXL UI. I can modify this script to change the file paths and run the simulation with the "virtuoso -nograph" option. This way is exatly the same as running the ADEXL UI simulation except for the run name. But that doesn't make any difference to me.

    Thanks again for pointing me in the right direction,

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