• 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. SKILL compiler?

Stats

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

SKILL compiler?

ThePhoenix
ThePhoenix over 14 years ago

Hello, I'm looking for a good compiler (to compile the SKILL code before I enter it into Cadence) that enables Compiling and Running of
SKILL code. Anyone have any suggestions?

Thanks very much in advance.

  • Cancel
Parents
  • skillUser
    skillUser over 14 years ago

    Hi,

    I thought Andrew's response was fairly clear, but I will answer your last questions and reiterate what he said while adding to it.

    SKILL is an interpreted language, rather than compiled like C or C++, hence you do not compile it, you enter source code and run it. It is possible to interactively test SKILL code line by line, or you can load one or more files that define one or more functions and test several statements together in a flow.  If there is a syntax error during loading or entering then the SKILL interpreter flags these at that time.  However beyond syntax problems, often coding errors are not obvious until run-time, and then these can cause warnings or errors when they are encountered.  The SKILL IDE is the perfect tool for debugging such issues, especially those that might be hard to track down. Also there is a SKILL Lint checker which is a static SKILL analysis tool that can help you to avoid common coding pitfalls and it will flag up things like undeclared global variables, as well as give a total score - I think of this as a general "goodness" score (though it is possible to write bad code that gets a top score of 100!).

    In summary:

    SKILL is interpreted and not compiled (though it is byte-code compiled internally)
    Syntax errors are flagged during input (either in the CIW or during loading of a file)
    Other coding errors may not be apparent until run time
    There is an integrated debugging environment (IDE) for SKILL as part of the virtuoso executable

    Regards,

    Lawrence.

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

    Hi,

    I thought Andrew's response was fairly clear, but I will answer your last questions and reiterate what he said while adding to it.

    SKILL is an interpreted language, rather than compiled like C or C++, hence you do not compile it, you enter source code and run it. It is possible to interactively test SKILL code line by line, or you can load one or more files that define one or more functions and test several statements together in a flow.  If there is a syntax error during loading or entering then the SKILL interpreter flags these at that time.  However beyond syntax problems, often coding errors are not obvious until run-time, and then these can cause warnings or errors when they are encountered.  The SKILL IDE is the perfect tool for debugging such issues, especially those that might be hard to track down. Also there is a SKILL Lint checker which is a static SKILL analysis tool that can help you to avoid common coding pitfalls and it will flag up things like undeclared global variables, as well as give a total score - I think of this as a general "goodness" score (though it is possible to write bad code that gets a top score of 100!).

    In summary:

    SKILL is interpreted and not compiled (though it is byte-code compiled internally)
    Syntax errors are flagged during input (either in the CIW or during loading of a file)
    Other coding errors may not be apparent until run time
    There is an integrated debugging environment (IDE) for SKILL as part of the virtuoso executable

    Regards,

    Lawrence.

    • 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