Jump to content

Cadence SKILL

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by BD2412 (talk | contribs) at 00:03, 17 June 2022 (clean up spacing around commas and other punctuation, replaced: ,T → , T). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

SKILL
Paradigmfunctional, OOP
DeveloperCadence Design Systems
First appeared1990
Stable release
? / ?
Typing disciplinedynamic
Major implementations
Cadence Allegro, Cadence APD, Cadence Concept HDL and Cadence Virtuoso. Major LISP implementation — Cadence UniCAD.
Dialects
SKILL, SKILL++
Influenced by
Scheme, Common Lisp, CLOS

SKILL is a Lisp dialect used as a scripting language and PCell (parameterized cells) description language used in many EDA software suites by Cadence Design Systems. It was originally put forth in an IEEE paper[1] in 1990.

History

SKILL was originally based on a flavor of Lisp called Franz Lisp created at UC Berkeley by the students of Professor Richard J. Fateman. SKILL is not an acronym; it is a name. For trademark reasons Cadence prefers it be capitalized.[2]

Franz Lisp and all other flavors of LISP were eventually superseded by an ANSI standard for Common Lisp. Historically, SKILL was known as IL. SKILL was a library of IL functions. The name was originally an initialism for Silicon Compiler Interface Language (SCIL), pronounced "SKIL", which then morphed into "SKILL", a plain English word that was easier for everyone to remember.

"IL" was just Interface Language. Although SKILL was used initially to describe the API rather than the language, the snappier name stuck. The name "IL" remains a common file extension used for SKILL code .il designating that the code contained in the file has lisp-2 semantics. Another possible file extension is .ils, designating that the content has lisp-1 semantics.

References

  1. ^ Barnes, T. J.: “SKILL: a CAD system extension language”, 27th ACM/IEEE Design Automation Conference, 1990. Proceedings; pp. 266-271
  2. ^ "Re: SKILL stands for ...?".

Academic:

  • G. Wood and H-F S. Law, "SKILL - An Interactive Procedural Design Environment," Proceedings of Custom Integrated Circuits Conference, 1986, pp. 544–547
  • Quan Nguyen, "CAD Scripting Languages", "A collection of Perl, Ruby, Python, Tcl and SKILL Scripts". Published by RAMACAD INC. ISBN 0-9777812-2-4, ISBN 978-0-9777812-2-5. A Sample from Google Books
  • A Quick Tour of SKILL Programming with command-line examples of SKILL codes versus Perl, Ruby, Python & TCL (go to the end of the blog)