The SKILL language has been developed by Cadence to be used with their tool suites. It allows the user to write a 'script' to perform any command in Cadence. SKILL is an interpretive language like LISP and Perl. SKILL was designed to work on repetitive tasks and several of its functions are based on lists. For more information about the structure of SKILL code, you can go to the following sources:.
Finder: Allows the user to search its database by entering a keyword. Finder will display all functions containing the keyword. For each function, it gives the usage and a brief description about the function. To invoke: From the CIW, type startFinder. cdsdoc: Detailed manual about Cadence that includes function reference and user guides to SKILL.
It contains the functions for the other cadence tool suites as well. To invoke: From the terminal, type cdsdoc & - click on the SKILL and SKILL PI menu. Look at the following tutorial:. A simple SKILL procedure is given as an example below.
The objective of this procedure is to modify all nfet3 and pfet3 objects' bulk node value to be vss! This function is library specific and is given here as an example only. To execute this procedure:. Copy the following procedure and save it as ' ChangeProperty.il'. From the CIW, type: load 'ChangeProperty.il'. Cna study guide. To execute the procedure, type: cb(libraryname cellview) Example: cb('vlsiproj' 'tspcrs');;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;This procedure will change the bulk node values of nfet3 and pfet3;;to be vss!
And vdd!, respectively.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; procedure(cb(lib cell);let will allow you to access the cv and newlabel variables outside;of this procedure let((cv newLabel);open the cellview as a database object and assign it to cv cv = dbOpenCellViewByType(lib cell 'schematic' ' 'a');for loop to go through all instances in this cellview foreach(instancecvinstances;open the property window - this will display the window! GeSelectObjectNoFilter(instance) schHiObjectProperty;check the cellname and change the bulk node (bn) property if(schObjPropForm-cellName-value 'nfet3' then schObjPropForm-bn-value = 'vss!'
) if(schObjPropForm-cellName-value 'pfet3' then schObjPropForm-bn-value = 'vdd!' );close the form hiFormDone(schObjPropForm) geDeselectAll );end foreach );end of let );end procedure.
Building Nets, Terminals, and Pins The following steps show how to define pins in a layout. Create the shape that will serve as the pin. The shape is usually a rectangle. Note: The shape cannot be a polygon. Fig = dbCreateRect( pcCellView layer list( x1:y1 x2:y2)) 2. Create the net to which the pin attaches. In this example, the pin name n1 matches the name of the corresponding pin in the schematic symbol for this cell: net = dbCreateNet( pcCellView 'n1') 3.
Create a terminal on the same net. The terminal must have the same name as the net and match the terminal type. In this example, the terminal type is inputOutput, the same terminal type as the corresponding pin in the schematic symbol: trm = dbCreateTerm( net 'n1' 'inputOutput') 4. Create a pin: pin = dbCreatePin( net fig 'n1') The pin database object connects the pin figure with the net. The pin name can match the terminal name, but does not have to. In the example, the pin name n1 matches the terminal name.
Within the pcell, you can have multiple shapes that all belong to the same electrical terminal. Each shape would have a pin to associate it to the same net. In such cases, each pin is created on the same net and must have a unique pin name. If your tool requires pins to have an access direction, define the access direction: pinaccessDir = '( 'top' 'left') The access direction is a list identifying the correct sides of the pin shape for connection.
The best that I can offer is a tutorial that is being presented at the International Cadence User Group this summer in August. This tutorial was offered last year and was VERY well done. It covers lots of advanced info.
![]() ![]()
Cadence offered it for sale after the Conference last year and will probably do so this year. Contact Cadence training for details. There are also several Application Notes available from your AE. Many of these cover Skill info. I have not found an AppNotes yet that was not of help in one way or another. Chuck Phillips Integrated Device Technology, Inc 2670 Seeley Ave San Jose, CA 95134 (408)944-2052 (408)944-2195 (FAX) International Cadence User Group - Co-Chair Peter Stokes 30/6/1993, 12:47 น. In article, [email protected] (Chuck Phillips) writes: The best that I can offer is a tutorial that is being presented at the International Cadence User Group this summer in August.
This tutorial was offered last year and was VERY well done. It covers lots of advanced info. Cadence offered it for sale after the Conference last year and will probably do so this year. Contact Cadence training for details. There are also several Application Notes available from your AE.
Many of these cover Skill info. I have not found an AppNotes yet that was not of help in one way or another. Beech bonanza 33 manual. I have a 76-page Cadence document called 'Inside Skill (A Guide to Advanced SKILL Programming)'. It's slightly dated (Sept. 1991) but still worth reading - ask your local AE for a copy. I also have the postscript for it but don't have the permission to distribute it.
If your local AE wants a copy from me, I'd be glad to comply - have him or her contact me. Peter Peter A.
Cadence Skill Language Manual
Stokes Voice: (613) 545-2923 Engineering Applications Support Fax: (613) 548-8104 Canadian Microelectronics Corporation Net: Kingston, Ontario, CANADA Jon 1/7/1993, 9:58 น. I had also heard of an 'advanced Skill manual' about a year ago, and started badgering my local Cadence AE's until I managed to obtain it. It turns out it is a Cadence internal Application Note (they told me it was never intended for Customer eyes).
The note is: 'Inside Skill (A Guide to Advanced Skill Programming)', By Ian Dobinson, James Kenney and Peter Hutton, Version 1.0, September 5th, 1991, Cadence Design Systems. I HIGHLY recommend this as reading for anyone doing skill programming with a moderate level of programming experience. A quote from the foreword, 'Inside Skill.
![]() Cadence Skill Code Examples
Is intended to become for SKILL what K&R is for C'. The document is aimed at 4.x Skill programming, but a very large number of their points apply directly to 2.x Skill.
Cadence Skill Manual
This note is not intended as a teaching tool, but is more an analysis of common mistakes, suggested syntax, execution speed analysis, helpful data structures, and is just loaded with suggestions about how to program in skill the right way. This document is marked Company Confidential for Cadence, but once I knew what to ask for I really didn't have a problem obtaining it. I would approach your AE, and don't believe him/her when they tell you it doesn't exist because they've never heard of it (This happened to me). Regards, Wireless Communications Jon K. Koopman National Semiconductor Email: #include Chuck Phillips 1/7/1993, 13:02 น. In article writes: I have a 76-page Cadence document called 'Inside Skill (A Guide to Advanced SKILL Programming)'. It's slightly dated (Sept.
1991) but still worth reading - ask your local AE for a copy. I also have the postscript for it but don't have the permission to distribute it. If your local AE wants a copy from me, I'd be glad to comply - have him or her contact me. Peter I have this too, In FrameMaker format.
I will arrange to have it available (if I can) at the August Meeting. Chuck Phillips Integrated Device Technology, Inc 2670 Seeley Ave San Jose, CA 95134 (408)944-2052 (408)944-2195 (FAX) International Cadence User Group - Co-Chair Ian Dobinson 2/7/1993, 2:19 น.
Comments are closed.
|
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |