• 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. perform SKILL functions in command line mode

Stats

  • Locked Locked
  • Replies 16
  • Subscribers 148
  • Views 23391
  • 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

perform SKILL functions in command line mode

cici
cici over 15 years ago

 Hi, I have a question on how to perform SKILL functions in command line mode. Can anyone help?

What I want to do is to

(1) start cadence with no GUI (I heard the -nog option but I cannot find any example)

(2) perform a series of SKILL function (defined in a do file) such as making a copy of cells in a given library

(3) quit cadence

 Thanks for your time and help!

  • Cancel
  • kbhow
    kbhow over 15 years ago

    Hi cici,

    To run Virtuoso in no GUI mode, you can use "virtuoso -nograph " mode, so that it will run the virtuoso at the background. For your case, you need to create a replay file (eg: skillfunction.replay) which include all skill function that you wih to perform such as open cell view, copy, paste and etc in a single file. Please take note that, you must write exit at the end of the code in order for virtuoso to exit. Then invoke virtuoso in nograph mode together with the replay file, the virtuoso will execute the function in the replay file accordingly.

    Clear step by step

    1. Create a replay file with skill function ( function.replay)

            cv = dbOpenCellViewByType("Lib" "Cell" "View" "" "a")

           

     db

     
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • kbhow
    kbhow over 15 years ago

    Hi cici,

    To run Virtuoso in no GUI mode, you can use "virtuoso -nograph " mode, so that it will run the virtuoso at the background. For your case, you need to create a replay file (eg: skillfunction.replay) which include all skill function that you wih to perform such as open cell view, copy, paste and etc in a single file. Please take note that, you must write exit at the end of the code in order for virtuoso to exit. Then invoke virtuoso in nograph mode together with the replay file, the virtuoso will execute the function in the replay file accordingly.

    Clear step by step

    1. Create a replay file with skill function ( function.replay)

            cv = dbOpenCellViewByType("Lib" "Cell" "View" "" "a")

           

     db

     
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • kbhow
    kbhow over 15 years ago

    Hi cici,

    To run Virtuoso in no GUI mode, you can use "virtuoso -nograph " mode, so that it will run the virtuoso at the background. For your case, you need to create a replay file (eg: skillfunction.replay) which include all skill function that you wih to perform such as open cell view, copy, paste and etc in a single file. Please take note that, you must write exit at the end of the code in order for virtuoso to exit. Then invoke virtuoso in nograph mode together with the replay file, the virtuoso will execute the function in the replay file accordingly.

    Clear step by step

    1. Create a replay file with skill function ( function.replay)

            cv = dbOpenCellViewByType("Lib" "Cell" "View" "" "a")

           

     db

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • kbhow
    kbhow over 15 years ago

    Hi Cici,

    Sorry i mis-click the 'Post' button before finishing my reply. =D

    " 

    Hi cici,

    To run Virtuoso in no GUI mode, you can use "virtuoso -nograph " mode, so that it will run the virtuoso at the background. For your case, you need to create a replay file (eg: skillfunction.replay) which include all skill function that you wih to perform such as open cell view, copy, paste and etc in a single file. Please take note that, you must write exit at the end of the code in order for virtuoso to exit. Then invoke virtuoso in nograph mode together with the replay file, the virtuoso will execute the function in the replay file accordingly.

    Clear step by step

    1. Create a replay file with skill function ( function.replay)

            cv = dbOpenCellViewByType("Lib" "Cell" "View" "" "a")

            ..........

            dbSave(cv)

            exit ;This is important in order to close your virtuoso

    2. Invoke virtuoso in nograph mode with replay file

            virtuoso -nograph -replay function.replay

    3. Done

     

    How

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 15 years ago
    I tend to suggest using -restore rather than -replay as it is more like doing a load(), whereas replay is more like typing each command in the CIW. With interactive things there is a difference in behaviour with regards to whether functions are "blocking" or not.

    Best Regards,

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

     Hi Andrew, 

    may i also ask more info about the -replay option in virtuoso?. or where can i get more informaiton?...
    i'm also looking for a way which is also to perform Skill function in command line...
    yuove mentioned that " replay is more like typing each command in the CIW" ..
    i tried this command :

                           "virtuoso -nograph -replay /lsc/projects/eda/jrefuerz/CAD/scripts/OpenLayout.il -log logko.log"

                               > this is to load the OpenLayout.il skill script that i made.. the second step is to type the function with argument... so basing from your desctiption of -replay.. i did this :

                                      "virtuoso -nograph -replay OpenLayout ( "mylib" "mycell" )"
    but this one doesnt work. the error says  "Badly placed()'s".

     

    Thanks

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

     is there anyone who can help?.. thanks...

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

    I believe the "-replay" commandline options argument is a file that contains the commands that you would type into the CIW.  So in your example you would have a file (lets say it's named commands.txt) that would contain:

    load("/lsc/projects/eda/jrefuerz/CAD/scripts/OpenLayout.il")

    OpenLayout("mylib" "mycell" )

    Then you would run virtuoso with the following commandline:

    virtuoso -nograph -replay commands.txt -log logko.log

     

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

    Indeed - giving commands on the command line directly is not what it does (I never said that). Personally I tend to use -replay for replaying CDS.log files, and use -restore for loading SKILL code (-restore is more like doing a load() in the CIW after starting).

    Regards,

    Andrew.

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

    problem solved!!...
    thanks Teebro and Andrew for the help...

    • 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