1
SKILL Integrated Development Environment
Virtuoso® SKILL IDE is a tool that helps you develop, test, and refine SKILL programs. It is an extension of the basic SKILL Debugger and provides an interactive interface to it.
The core of SKILL IDE is a multi-file that provides common editing and debugging capabilities. These capabilities include, auto indenting, auto completion of function names, syntax highlighting, single stepping through SKILL programs (that is, executing the program statements one by one), setting up and stopping at breakpoints, saving and loading the debugging information, tracing and editing the values of variables during program execution, and displaying variable and stack trace.
You can load and debug only SKILL and SKILL++ programs in SKILL IDE. Listed below are some of the features of SKILL IDE.
-
Source-level debugging of SKILL programs
The code that you debug through SKILL IDE is reusable across all Virtuoso tools. The basic debugging capabilities of SKILL IDE include:- Configurable Breakpoints: This feature enables you to set conditional breakpoints, which are triggered when the specified conditions are met. By setting these breakpoints, you can decide where the program execution pauses, so that you can examine the value of your program variables.
- Saving and Reusing the Debugging Information: SKILL IDE supports exporting of debugging information to external SKILL files. The exported debug information includes current line and function breakpoints, their conditions, traced functions, variables, and properties. You can later reuse the debug settings by loading the debug information from a previously saved file.
- Variable and Function Tracing: Use this feature to trace the values of functions and variables as they change during program execution. You can also track function calls and view functions that are on the top of the calls stack. Once selected for tracing, these functions, variables, their values, and scope are listed in the Trace assistant. If the value of a function or variable changes during program execution, it can be traced quickly using the Trace assistant. You can directly change the value of the traced variables either in the Trace assistant or in the source code pane. The
- Stack Tracing: Use the stack tracing feature to display a list of functions and their arguments, in the order in which they are executed in the code. The Stack assistant displays the list of functions that have been called up to the current execution point. By looking at the stack trace, you can determine the function that was called when the error occurred and jump to the exact location in the code.
- Code Browsing: Use the Class Browser, Method Browser, and Code Browser assistants of SKILL IDE to browse the classes, generic functions, and user-defined functions of your SKILL code.
- Lint Integration: The SKILL Lint tool is fully integrated into SKILL IDE, giving you the option to set up the files and directories for the Lint checker, set the Lint parameter values before running the Lint tool, and run the Lint tool on the selected files or directories from within the SKILL IDE interface.
-
Editing of multiple files in one window
The basic editing capabilities of SKILL IDE include:- Auto-Indentation of Code: The SKILL IDE automatically indents SKILL code so that a new line of code is indented to the same level as the previous one.
- Auto-Completion of Function Names: SKILL IDE provides you options for auto-completion of function names by suggesting valid function names based on your initial keystrokes.
- Code Folding: SKILL IDE’s code folding feature allows you to collapse or expand parts of your code, letting you quickly navigate and focus on specific sections. You can fold any code section as long as it is contained within a set of parenthesis ( ) that are not on the same line number. It is also possible to fold nested code blocks
-
Code Inspection with Show Matching and Go To Matching Parenthesis Options: SKILL IDE provides robust code inspection features. The show matching option is enabled by default. As a result, the cursor highlights the matching opening and closing pairs of parentheses and comment delimiters.
Using the Edit – Go to Matching Parenthesis menu option, you can direct the cursor to move to the matching opening or closing parenthesis or comment delimiter. As a result, you can quickly spot any missing parenthesis or comment delimiters. This is especially useful when you are reviewing code that contains nested parentheses. - Syntax Highlighting: This feature helps you to visually inspect your SKILL code by highlighting different parts of your code in different colors. You can also set the font size and tab stop settings for better code inspection.
-
Documentation support
The document generation and display capabilities of SKILL IDE include:- Support for Inline Documentation Strings: SKILL IDE supports embedding of inline documentation strings within SKILL/SKILL++ code. These documentation strings describe the attributes of the code elements with which they are associated. For example, the documentation string for a SKILL function may contain the description, parameters, and return values for the function.
- Document Generation using Finder Manager: SKILL IDE has a document generation utility called Finder Manager, which inspects the code containing inline documentation and generates finder-compatible documentation from it. You can then view this documentation in Finder.
- Viewing Detailed Descriptions of SKILL APIs in Finder: The complete documentation of a SKILL API is available at a single click. The new More Info button in Cadence SKILL API Finder displays the detailed information for an API including the syntax, arguments, description, return values, and example in a Cadence Help window.
Licensing Requirements
SKILL uses the Cadence Design Framework II license (License Number 111), which is checked out at the launch of the skill executable or the workbench. However, when you launch the SKILL IDE interface, Virtuoso also checks out the Cadence SKILL Development Environment license (License Number 900).
Related Topics
Return to top