Home > Community > Blogs > Custom IC Design > things you didn t know about virtuoso ade
 
Login with a Cadence account.
Not a member yet?
Create a permanent login account to make interactions with Cadence more conveniennt.

Register | Membership benefits
Get email delivery of the Custom IC Design blog (individual posts).
 

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

Things You Didn't Know About Virtuoso ADE

Comments(9)Filed under: Custom IC Design, Virtuoso, Virtuoso IC 6.1.3, Virtuoso Analog Design Environment

After delving into lots of new features in the Virtuoso Schematic Editor, the Library Manager and the Help System, I'd like to turn to our old friend ADE (aka Analog Design Environment, or for those of us who've been around awhile, Analog Artist).  ADE is another one of those tools that you're probably using exactly the same way you've always used it because--well, because that's the way you've always used it.  And besides Cadence hasn't done anything new to ADE in years...or have they?

Take a look at the ADE window on your desktop.  I'll bet it's rectangular in shape about 700 pixels wide by 450 pixels high.  Got it right, didn't I?  Well, of course, because everyone knows that if you resize the ADE window, all you get is a bunch of extra blank space.  Guess what, give it a try.  We've now figured out how to resize the window properly so the contents expand to fill the extra area.  The first time I showed that in a demo you could just feel the excitement in the room.  All right, maybe not excitement exactly, but I did hear someone utter an only-slightly-cynical "wow".

So, besides this minor miracle, what other features have we added? 

Edit in Place 

Well, for starters, you'll notice that you can edit a lot of things in your simulation setup directly from the main window without having go through the menus and open a separate form.  If you want to change the value of a design variable, just select the name and click in the value field to edit it.  No need to do Variables->Edit..., select the name, type the number, click the Change button, then OK the form.  That's about half the number of mouse clicks.

You can also check and uncheck the "Plot" and "Save" checkboxes directly from the main window. 

For those items which can't be edited directly in the main window, things are simplified somewhat in that you can double-click on each entry and it will open the correct form entry for that item.   For example,  if you double-click on an output expression or an analysis, the form will come up with the settings for that particular entry. 

VAR Parameterization

One really cool "hidden" new capability of ADE is that you can now create and use design variables just about anywhere in your simulation setup.  This is done using what we call VAR syntax.  For example, you can specify the transient analysis stop time by putting VAR("stopTime") in the appropriate field in the Choosing Analyses form.  This will automatically create a design variable which you can change directly from the main window (and use in other places as well).  Similarly, you can parameterize model files and sections, simulator options and many other things.  More information on this useful feature can be found here.

Plot Refresh

You may also notice a new cyclic pulldown at the bottom of the ADE window, just under the Outputs section.  It's labeled "Plot After Simulation" and the choices are "Auto", "Refresh" and "None".  This allows you to control the behavior of your ViVA graph windows when you re-run a simulation.  In the past, if you chose to auto-plot waveforms, any modifications you made to your graph windows were wiped out when you re-ran the simulation.  If you had customized the graph at all, you had to turn off auto-plotting and then manually refresh each graph window after simulation to maintain your customizations. 

Now you can select "Refresh" from this new pulldown and your graph windows will refresh with the new simulation data without undoing any modifications you may have made.

Something for the more adventurous user...

A really nice way to back-annotate results from parametric sweeps can be enabled by typing: artEnableAnnotationBalloon(t) in the CIW.  This activates a large "balloon" when you hover your mouse over an instance.  The balloon contains your specified annotation information for the different sweeps of the parametric run.  More information on this can be found in the Virtuoso Analog Design Environment L User Guide under "Annotating Parametric Sweep Results" and a helpful video demonstration can be found here.

ade

Well, that's all for now.  Starting next time...Things You Didn't Know About ViVA!

Stacy

Comments(9)

By jgk2004 on September 17, 2009
Hello Stacy,
I have been looking for this plotting feature for sometime now (Plot Refresh MODE).  In my ADE Version IC6.1.3.1, and  I do not have the added button you are talking about?  Do I need a updated version of this or do I have to turn on this feature?  Thanks for your input and help

By Stacy Whiteman on September 18, 2009
Thanks for the question!
The Plot Refresh mode is available from IC6.1.3 ISR 11 and onward.  The latest Hotfix version is ISR14.  I'd highly recommend getting the latest ISR installed.
Stacy

By Tjaart on December 8, 2009
When I use the VAR("stopTime") syntax for the stop time, the value of the design variable "stopTime" must numerical.
For example:
---------------------------------------
stopTime = 2u      
=> WORKS FINE
---------------------------------------
setupTime = 20n
samplePeriod = 30n
noSamples=40
stopTime=setupTime+samplePeriod*noSamples
=> GIVES ERROR: "Unknown parameter name 'nil' found in expression"
---------------------------------------
Any workarounds?

By Stacy Whiteman on December 9, 2009
Hmmm.  What version of Virtuoso are you using?  I tried this in IC 6.1.3 ISR15 and it seems to work fine.  It may have been an problem in earlier ISR's.  If it isn't working for you in a recent version, go ahead and contact customer support.
Thanks!

By Prabhu on January 28, 2010
Hi Stacy, I am wondering if ADE had any keyboard shortcuts ... if its on the "Things You Didn't Know" list, please post about it.
Thank you.

By Stacy Whiteman on February 2, 2010
Sorry for the delay in answering.  Right now, the ADE GUI doesn't really have any "bindkeys" as such.   In IC 6.1, you do have the ability to do Ctrl-X, Ctrl-C and Ctrl-V in the Design Variables area of the main ADE GUI to edit variable values directly without bringing up an extra window.
Also, as in all of Virtuoso in IC 6.1, menu access is enabled with the Alt key.  Those are the underlined letters in the menu (and sub-menu) headers.  So, in ADE, for example, Alt-S-A would do Netlist and Run.  
Given that, are there any other sorts of things you think would be useful to have as ADE bindkeys?
Thanks for the comment!
Stacy

By alan68 on June 25, 2010
Stacy,
I have encountered the same problem as Tjaart  with respect to using VAR syntax for transient stop time.  This problem is a bit subtle in that it doesn't always occur, but I believe I have found a way to reproduce it reliably.
In my case the equation entered for the transient stop time is of the form:
100/VAR("fsample")   --> where fsample is a design variable
This works fine as long as, and until, I edit any parameter value in the transient analysis menu (and Apply the change).   At this point if the transient analysis menu is re-opened, the stop time parameter shows only:
VAR("fsample")
The rest of the equation has been dropped!  The ADE Analyses Arguments window, however, still shows 100/VAR("fsample") as the stop time, so it's not obvious the data has been corrupted.  When a run is attempted at this point the "Unknown parameter name 'nil' found in expression" error occurs, and a parameter of the form _EXPR8_ = nil is found in the netlist.
The workaround I have found is to create another design variable to hold the equation and to pass this variable  to the stop time parameter, ie:
set
tran_stop=100/fsample  --> in design variables
and call
VAR("tran_stop")  in the transient menu stop time.
This just passes the equation directly into the netlist to be evaluated on-the-fly by Spectre.  I have had no problems since instituting this workaround.  Clearly there is some issue with the transient analysis menu and equations containing VAR.
Hope this helps.
Regards,
Alan

By stacyw on August 6, 2010
Hi Alan,
Have you filed an SR on this?  I tried on the latest ISR of IC 6.1.4 and could not reproduce.  Please contact Customer Support if you still see this problem.
Thanks!
Stacy

By Dan Clement on October 27, 2010
I want to make the stop time variable but we are stuck using IC5...
Thanks.

Leave a Comment


Name
E-mail (will not be published)
Comment
 I have read and agree to the Terms of use and Community Guidelines.
Community Guidelines
The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.