• 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. Virtuoso GUI process to command

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 125
  • Views 9384
  • 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

Virtuoso GUI process to command

Pacific Feng
Pacific Feng over 2 years ago

I am wondering when I use the GUI interface at the first time, is there any way available to let me store the commands that I have done during the GUI process(Beacause every step clicked during the GUI process relates to a command)? I ask this question because that typing the command is much more faster that do it on the GUI. Thanks!

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

    Well, the CDS.log is a transcript of all the commands issued through the user interface. This CDS.log can be replayed (using the -replay option to virtuoso), although you need to take care if you've saved anything during the session because it may not be starting from the same place.

    I would say that using the GUI commands is not necessarily the best way of automating things; there's usually (not always, but commonly there is) an equivalent SKILL API which doesn't have a form and is a direct procedural interface. 

    Without knowing what you are trying to do, it's hard to say what is the right approach. It's highly unlikely that typing in the commands recorded in the CDS.log would be a sensible way of working.

    10 years or so back, I wrote a small toolbar example that allowed you to type in short commands to automate things. Let me dig that out and I'll post a link to it (may be in a couple of days).

    Andrew

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • Pacific Feng
    Pacific Feng over 2 years ago in reply to Andrew Beckett

    I just want to import the GDSII file and LEF file and DEF file and then see what the layout looks like. Beacuse the procedure of clicking the GUI is pretty tedious and time-wasting, I am wonder whether there is a method that I can copy the done procedure previous time, and next time I just have to paste the command of last time generated, I can do the procedure fast only with pasting the commands rather than clicking the GUI again.

    Thank you, Andrew!

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 2 years ago in reply to Pacific Feng

    Probably the easiest then is to use the "defin" and "lefin" commands from the UNIX command line. This is covered in the documentation (use the help menu in virtuoso and in the box at the top of the menu type in "lefin" or "defin" and you'll find it). Also you can use "defin -h" and "lefin -h" to see the command-line options.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Pacific Feng
    Pacific Feng over 2 years ago in reply to Andrew Beckett

    Thank you! Andrew!

    After I search for that, I got the following commands:

    strmin -library 'CSarray' -strmFile '/users/course/2022F/PDA13400000/g100501528/HW5/HW5_visual/GDSII/cells.gds' -logFile 'strmIn.log'
    lefin -lef \"/users/course/2022F/PDA13400000/g100501528/HW5/HW5_visual/LEF/CS.lef\" -lib CSarray -view abstract
    defin -def \"/users/course/2022F/PDA13400000/g100501528/HW5/HW5_visual/DEF/CS_4.def\" -lib CSarray

    But when I paste to the command bar, there comes a syntax error:

    strmin -library 'CSarray' -strmFile '/users/course/2022F/PDA13400000/g100501528/HW5/HW5_visual/GDSII/cells.gds' -logFile 'strmIn.log'
                                        ^
    SYNTAX ERROR found at line 1 column 25 of file *ciwInPort*

    I have no idea what is going on .

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 2 years ago in reply to Pacific Feng

    These are commands for the UNIX command line (i.e. outside of Virtuoso), not to type in the CIW. The CIW expects SKILL functions - which are ldtrDefReadOA() and ldtrLefReadOA() - both of which are documented).

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 2 years ago in reply to Pacific Feng

    These are commands for the UNIX command line (i.e. outside of Virtuoso), not to type in the CIW. The CIW expects SKILL functions - which are ldtrDefReadOA() and ldtrLefReadOA() - both of which are documented).

    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