• 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. Is there a way to display the SKILL functions being invoked...

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 144
  • Views 15225
  • 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

Is there a way to display the SKILL functions being invoked similar to an excel macro?

pfrankis
pfrankis over 14 years ago

Hi Guys,

 I find that the hardest part in programming with SKILL is to know the name of the function that you need to call.  Is there a way to display the underlying function being called when the user performs a certain action interactively?  I'm picturing something similar to the way Microsoft Excel Macros work.

 for example, if you don't remember how to create a new cell view.  You can click on the new cellview button in the library manager and the icfb would show the underlying function like this:

deNewCellView("test_lib" "top" "schematic" "schematic" nil)

may be I'm being too optimistic, but if this exists it would be really helpful to know about it.

 thanks in advance for your help,

Peter

  • Cancel
  • lrl12skdev
    lrl12skdev over 14 years ago

     Hi Peter,

     One good way is to open your CDS.log file, much better with "tail -f CDS.log" so you can see the log being displayed like in real time. But As for me, I prefer to search in cadence SKILL pdf files for functions because the first method I think can only help you with interactive functions. The pdf files are already sorted depending on the nature of the function e.g design framework, composer, layout editor, techfile, etc. so it is easier and informative.

    BR -lrlsk

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

    Of course, there's no need to use "tail -f" on the log file - you can use the Options->Log Filter settings in the CIW to control which bits of the log file get displayed in the CIW.

    However, as Irlsk says, these primarily log the interactive interactions - which is fine in some cases, but otherwise you might want the procedural equivalent of a function - so for example, you might see deNewCellView() but in your program you might not want a window at all and so dbOpenCellViewByType() might be more appropriate. Such information won't be shown in the log file (or elsewhere), so searching the documentation (using cdnshelp is probably easiest) is the way to narrow down the functions needed. Or using cdsFinder to search for functions based on words that are in the function names.

    Best Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • pfrankis
    pfrankis over 14 years ago

    Great, thanks guys

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • skillUser
    skillUser over 14 years ago

     Hi Peter,

    Just in case you were not aware, the cdsFinder or "SKILL Finder" tool can be started from the CIW either from the menus Tools -> SKILL Development -> Finder, or by typing "startFinder()", or from theUnix prompt by typing cdsFinder.  It can be a bit of a guessing game sometimes, so you might need to try parts of a possible function name, for example, related to your case you might try "open" or "create" as part of the function name.  Also, if you have a copy of the SKILL Quick Reference Manual, this can be helpful to browse through, and the functions are organised into sections for a particular tool or function class, e.g. Schematic functions, Core SKILL functions. 

    If you know the tool that you are working with, for example Schematics, you might guess that the function name begins with the "sch" prefix, or "le" for the Layout Editor, "db" for generic database functions, "ge" for generic graphics editor functions, "hi" for Human Interface functions (forms, menus, bindkeys etc.)  This approach does not always work, for example the function to open a cellview non-graphically is a db function rather than, say, an "sch" prefix function or "le" prefix function.  Another example might be selecting an object in a schematic (or layout) window; there are some "ge" prefixed functions for selection which are not tied to which tool is being used (symbol, schematic or layout windows).

    I hope that this helps.

    Best regards,

    Lawrence.

    • 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