Get email delivery of the Cadence blog featured here
I've told you in previous postings about some new features in Virtuoso IC6.1 which make it quick and easy to open cellviews you use frequently--namely the recently-opened files list (found in the CIW->File menu) and the ability to bookmark one or more cellviews (File->Bookmarks->Add Bookmark from any cellview window).
While these features mean that you can open that cell you work on every day with just a couple of mouse clicks and minimal mental exertion, there will always be a time when you need to go up in the attic and find the box with the Christmas lights. Next year for sure you're going to remember to label that darn box before you put it away...
As usual, I digress. I'm talking about the Library Manager. I know you're all accustomed to using the Library Manager every day (shame on you if you haven't yet tried either of the 2 features mentioned above...). You probably haven't noticed that there are 47 libraries listed there. 17 of them don't exist any more. 15 of them don't apply to your project at all. 7 of them are reference libraries which you don't have edit rights to. The other 8 are scattered all over the list. Why should you have to strain your already-overworked brain cells sorting through that mess? And what happens if you forgot that one of those libraries was just an experiment you tried once and forgot to delete when that version of the block never worked correctly? What happens if you pick that one as the basis for your new design instead of the one that worked? I don't know about you, but I've got enough gray hairs already...
So I wanted to point out 2 new features of the Library Manager which might help you streamline the way you view all that data.
Look at the Pretty Colors...
The first is the ability to customize the display attributes of any library. For example, you can specify that your reference libraries be shown in red text with a particular icon and your design libraries be shown in green text with a different icon. You can even hide some libraries so they don't get in your way, but are still accessible to the software. (Maybe you want to show your "experimental" libraries in a different color too...)
Basically the way you do this is to edit your cds.lib file. Somewhere after the DEFINE statement for a library, put the line:
ASSIGN <libName> DISPLAY <displayName>
where <displayName> is the name you're going to give to a particular set of display attributes (we'll get to that shortly).
Now when you open the Library Manager, select Edit->Display Settings. In that form, you'll be able to select your <displayName>(s) and change their colors, icons and other attributes.
All Together Now...
The 2nd new feature for library display is the ability to create "combined" libraries. Maybe you want to display all the reference libraries for your project under a single name in case you forget which cell is in which library. Don't worry, the libraries aren't physically combined, just displayed that way.
To do this, first you'll need to create a dummy directory with the name you want to give your combined library (kind of a kludge, but oh well). Then edit your cds.lib and add 2 lines:
DEFINE <combinedLibName> <pathToDummyDirectoryYouCreatedAbove>
ASSIGN <combinedLibName> COMBINE <lib1> <lib2> ...
These lines need to go after all the lib1, lib2, etc. libraries are defined.
That's it. Now when you open the Library Manager, you'll see your combined library name with a "+" sign next to it. If you click on the combined library name, you'll see all the cells in all the libraries combined. If you click the "+" sign, you can still access the libraries individually as usual.
You Do Know About Categories, Don't You?
BTW, if you look at the screenshot above, you also notice that each of my libraries has categories defined within it so I can further refine my cell selection by block or by celltype. That feature has existed in Virtuoso for years now and hopefully you're already making use of it (Hint: check out Edit->Categories from the Library Manager)
I'm running out of time right now, but you can read more about all these features in the Cadence Library Manager User Guide available on the Cadence support site (registration required)
Until next time...
Hi Stacy, I'll bet you know the answer to this right off the top of your head. I've been creating systemVerilog views with systemVerilogText for a long time, but now for the first time I want to use EEnet as outputs and as internals. To do so I need to include EE_pkg.sv. So, how do I create a Library/Cell/View for EE_pkg? In its EE_pkg.sv (text file) there's no "module", only a "package" declaration and "function". Thanks in advance, Bob Peruzzi
Yes, in IC6.1.5, in the View column of the Library Manager, you can RMB on the header (the grey part where it says "View") and there are quite a few extra fields you can add to the view, including Size and Modified time. Make sure you don't have the "Hide all" entry checked (like I did) so the extra columns will show up. Thanks,Stacy
Is there a way of showing size and last date of change, A LA windows explorer?
Sorry for the delay. We've had some changes to the forum interface and I just noticed your comment. The upcoming release of Virtuoso (end of this year) will include features to display DM status and do filtering and checkin/out operations on sets of cellviews based on their status.
I too am interested in the cell/cellview coloring. I have an idea to mark a cellview red that are "out of date" compared to timestamps of other cellviews.
I would like to highlight one very useful use model for the combined library (the reason it was actually implemented). This is for people using ITDB and having a hierarchy of techLibs creating the final PDK. You don't really want to expose to the end user this full chain, but rather the "top" level that contains all the elements. If you define the "top" as the combined library, and combine into it the individual tech libs... :-)
Thanks for the comment! The library manager customization is done in the cds.lib file and the .cadence/libManager/displayPrefs files and these are certainly something that can be set up for everyone. It uses the Cadence Search File (CSF) mechanism (we'ver got an acronym for everything, don't we?) which is documented in the "Cadence Application Infrastructure User Guide". to determine where it looks for these files.
Hope this helps,
nice idea, but i'd like to be able to set up for all users so that the cdstool libs and PDK libs look the same way for everyone.
It isn't possible now to change the colors of cells or views in the library manager, but this is currently planned for a future release (next year).
I've had requests to be able to change the color of cells/views in the library manager depending on the checkout status of the object. Is this possible?
its not really documented, but one can also combine already "combined" libriaries into
another combined library.
Thanks for the comments! As far as I can find out, the library attributes aren't customizable on-the-fly at the moment, nor can you customize the display attributes of categories or cellviews, but I like the idea.
I'll ask around and see if I can get any more information for you.
Cool feature. I'd like to know if these attributes are modifiable in SKILL dynamically. For instance what if I want to highlight a library only under certain conditions.
Also are these display customizations available for cells and cellviews too?