cadence skill code for lvs

Status
Not open for further replies.

rntsay

Member level 4
Joined
Mar 29, 2002
Messages
73
Helped
14
Reputation
28
Reaction score
11
Trophy points
1,288
Visit site
Activity points
484
i dont know if this is the right place for this sort of question but I want to
automate lvs process in cadence. I'm thinking of (preferably small) skill
code that does this :

(1)opens a cell in the database in schematic view
(2)write out a cdl netlist
(3)opens layout view of the cell
(4)does lvs on the cell
(5)writes results into file

'm using cadence ics514 and calibre.
 

Cadence is not really integrated with calibre as such and the approach (in my world) would be to think a little bit out of the box and step out of cadence' graphical framework.

Probably you want:

(1) perform cdlOut given a certain cell
(2) perform a streamOut given a certain cell in batch mode. See the pipo exe from cadence and how it works.
(3) run calibre with gds+cdl inputs as well as run deck and then output the results. See calibre help for the details.

Embed this in a skill script, taking cell and library names as input arguments (make sure the script waits for the streamOut to finish) internally. Call the shell scripts with the (sh ...)

The script is pretty straightforward, but dependent on calibre deck from your pdk, shell preference, cdl settings, etc., it is a bit tedious to post something here... Just wanted to add some view on this.
 

Cadence is not really integrated with calibre as such ...

??? Calibre GUI is integrated in cadence big time and it does all of the steps mentioned when you push the Run button

The question is why would one want to automate this even further

In any case, if this is what you really want to do then it is most easily done by running calibre as a shell command from SKILL, still this will be far from a two-liner unless you prepare setup files for both cdlOut and streamOut; other then that it would be feasible; someone else had the same question a couple of month ago
 

Well, Cadence hasn't acquired Mentor ... yet - I suppose the PVS was a golden average (one could argue about 'golden').
The GUI is integrated in cadence, but that is just a set of skill scripts from mentor to setup the run control files for batch mode. Except for the most recent versions, that take the OA format, Calibre uses cdl and gds to run the LVS, i.e., not the CDBA. So, what I meant with my comment is that number (3) in the first post is not really required. Just stream it out instead.

I think such a script makes a lot of sense, especially if you have several cells and/or macros that you are preparing for delivery. You want to do that in batch to speed up the process. It is also a way to have full control over which cdl and gds you are operating on such that you can guarantee that you are running DRC and LVS on the exact same GDS. Running through the GUI in that case is too tedious.

We also use such a script to run a pseudo-hierarchical LVS to avoid the costly license.

The cdlOut and streamOut files only need to be set up once (except for the headers to which you would write the cell names, cdl/gds file names, etc.). Just concatenate the two files, etc.

But as dgnani says, there were some prior discussion on this (for example this):

https://www.edaboard.com/threads/174291/


which also suggests to browse the Mentor forum pages.
 
Reactions: rntsay

    rntsay

    Points: 2
    Helpful Answer Positive Rating
Thanks for the suggestions; I'll take a look at the other thread and the MG site. I do have a lot of cells to look at...plus in general I prefer to work with scripts than GUI's but maybe
that's a personal preference. I think I know enough to proceed but I was hoping to find a script already put together. This shouldn't be too much code; my estimate is ~50 lines or so.
 

The use of GDS makes Calibre a sign-off tool -you do not want to tape out after running a check directly on the db -unless your foundry accepts a db file for submission

As of using the CDL netlister that is quite absurd but it is what it is

As of integration this as well integrated as are other cadence tools bought from third parties


I see your point if you are short on licenses otherwise you make a library cell where all your macros are instantiated and run hierarchical LVS on it, actually even if you have to do it flat it beats scripting and reviewing all summaries at the end

As of DRC -not required by the post- I can see a value in the script as some rules might be hard to check in a library view but you have to deal with a lot of cell for this to become convenient
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…