Cadence® system design and verification solutions, integrated under our System Development Suite, provide the simulation, acceleration, emulation, and management capabilities.
System Development Suite Related Products A-Z
Cadence® digital design and signoff solutions provide a fast path to design closure and better predictability, helping you meet your power, performance, and area (PPA) targets.
Full-Flow Digital Solution Related Products A-Z
Cadence® custom, analog, and RF design solutions can help you save time by automating many routine tasks, from block-level and mixed-signal simulation to routing and library characterization.
Overview Related Products A-Z
Driving efficiency and accuracy in advanced packaging, system planning, and multi-fabric interoperability, Cadence® package implementation products deliver the automation and accuracy.
Cadence® PCB design solutions enable shorter, more predictable design cycles with greater integration of component design and system-level simulation for a constraint-driven flow.
An open IP platform for you to customize your app-driven SoC design.
Comprehensive solutions and methodologies.
Helping you meet your broader business goals.
A global customer support infrastructure with around-the-clock help.
24/7 Support - Cadence Online Support
Locate the latest software updates, service request, technical documentation, solutions and more in your personalized environment.
Cadence offers various software services for download. This page describes our offerings, including the Allegro FREE Physical Viewer.
The Cadence Academic Network helps build strong relationships between academia and industry, and promotes the proliferation of leading-edge technologies and methodologies at universities renowned for their engineering and design excellence.
Participate in CDNLive
A huge knowledge exchange platform for academia to network with industry. We are looking for academic speakers to talk about their research to the industry attendees at the Academic Track at CDNLive EMEA and Silicon Valley.
Come & Meet Us @ Events
A huge knowledge exchange platform for academia. We are looking for academic speakers to talk about their research to industry attendees.
Americas University Software Program
Join the 250+ qualified Americas member universities who have already incorporated Cadence EDA software into their classrooms and academic research projects.
EMEA University Software Program
In EMEA, Cadence works with EUROPRACTICE to ensure cost-effective availability of our extensive electronic design automation (EDA) tools for non-commercial activities.
Apply Now For Jobs
If you are a recent college graduate or a student looking for internship. Visit our exclusive job search page for interns and recent college graduate jobs.
Cadence is a Great Place to do great work
Learn more about our internship program and visit our careers page to do meaningful work and make a great impact.
Get the most out of your investment in Cadence technologies through a wide range of training offerings.
Overview All Courses Asia Pacific EMEANorth America
Instructor-led training [ILT] are live classes that are offered in our state-of-the-art classrooms at our worldwide training centers, at your site, or as a Virtual classroom.
Online Training is delivered over the web to let you proceed at your own pace, anytime and anywhere.
Exchange ideas, news, technical information, and best practices.
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.
It's not all about the technlogy. Here we exchange ideas on the Cadence Academic Network and other subjects of general interest.
Cadence is a leading provider of system design tools, software, IP, and services.
I have to run a transient simulation of a transistor-level Charge Pump PLL. I have noticed that it is taking too much memory. icfb got shutdown by itself with this message at the terminal:
ERROR: Unable to allocate memory for transition file slice variable transition index level (read).
The simulation was not complete and it shutdown in between. The size of tran.tran.trn is around 40 GB.
Note that I have already done this: In Analog Design Environment, Outputs -> Save All, I have checked "selected" option in "select signals to output (save)" and Outputs -> to be saved -> select on schematic and selected few nets that I wanted to save
But even after doing the above, it is still saving every net (because I'm able to plot those nets) which is the reason for such a huge tran.tran.trn file. What more should I do to stop it from saving every net? (and only save the nets that I select)
Customer Support Director - Analog/Mixed-Signal/RF AEs
Cadence Design Systems, Inc.
In reply to Tawna:
1. I use .bashrc to start my cadence. Could you please give the equivalent of that for .bashrc?
2. My cadence subversion as obtained from typing "spectre -W" in ubuntu terminal is:
3. I can increase size of my hard disk to say 1 TB to get rid of "unable to allocate memory..." error, but my doubt is how to stop Virtuoso ADE from saving every net in the transient simulation even after doing the above mentioned steps (as in my previous post)?
In reply to vshssvs7:
Thanks for replying. It was already late night when I replied to your last post, so I couldn't reply immediately.
1. I tried adding "export CDS_AUTO_64BIT ALL" to my .bashrc, sourcing it and then restarting it the cadence, but it didn't work. Still ADE is saving every net.
2. I'm only a student in the university, so I don't have any admin rights. But I'll inform the authorities here to update the cadence to latest version. But it would take a lot of time.
3. Output of 'icms -W' -> sub-version 5.10.41_USR6.127.29, 'virtuoso -W' -> virtuoso: command not found
5. I have tried in debian also, the problem is still there. Currently I can use cadence spectre only in debian or ubuntu.
4. I didn't understand what is the "output statement" in the netlist. So I'm pasting the netlist here. This nelist doesn't correspond to the one where I got that "Unable to allocate memory..." error. This netlist is of a different circuit generated from Virtuoso ADE after selecting the nets to be saved. I have deliberately removed some lines corresponding to circuit elements since the netlist is large.
// Generated for: spectre
// Generated on: May 31 13:01:10 2012
// Design library name: myddp
// Design cell name: divby2_vco
// Design view name: schematic
include "/cad/library/UMC65/Designkits/Cadence/Models/Spectre/L65LL_V111.lib.scs" section=tt_ll_lvt12
// Library name: myddp
// Cell name: divby2_vco
// View name: schematic
E0 (net025 gnda clk gnda) vcvs gain=-1.0
V0 (clkb net025) vsource dc=800.0m type=dc
V7 (gnda 0) vsource dc=0 type=dc
V8 (vdd 0) vsource dc=1.2 type=dc
V6 (clk gnda) vsource type=sine sinedc=400m ampl=400m freq=4.8G
NM8 (n2 clk n1 gnda) n_12_lllvt l=60n w=5u sa=1.6e-07 sb=1.6e-07 nf=1 \
mis_flag=1 sd=0 as=800f ad=800f ps=10.32u pd=10.32u sca=5.17799 \
scb=3.30657m scc=557.825u m=1 mf=1
simulatorOptions options reltol=1e-3 vabstol=1e-6 iabstol=1e-12 temp=27 \
tnom=27 scalem=1.0 scale=1.0 gmin=1e-12 rforce=1 maxnotes=5 maxwarns=5 \
digits=5 cols=80 pivrel=1e-3 sensfile="../psf/sens.output" \
tran tran stop=2n errpreset=conservative write="spectre.ic" \
writefinal="spectre.fc" annotate=status maxiters=5
finalTimeOP info what=oppoint where=rawfile
modelParameter info what=models where=rawfile
element info what=inst where=rawfile
outputParameter info what=output where=rawfile
designParamVals info what=parameters where=rawfile
primitives info what=primitives where=rawfile
subckts info what=subckts where=rawfile
saveOptions options save=selected currents=nonlinear useprobes=yes
When you click on "save all" from the "options" menu in the ADE, unclick the selected (referring to your first post)
Even if you "select on schematic" to save your desired outputs make sure all the selected nodes are turned off.
In reply to JustinTaylor86:
The default in spectre is "selected", so if you uncheck everything on the "Select signals to output" line, it will be the same as explicitly picking "selected".
What "selected" does is to only save the nets marked to be saved in the outputs pane - which corresponds to the "save" statements at the bottom of the input.scs. If no nets are saved, it saves all nets (i.e. all voltages). Note it's nothing to do with what is currently selected in the schematic.
In your case, you have selected currents=nonlinear - which will end up saving a lot of data for all the currents. I'd leave device currents as blank (or selected) - that will make the data set much smaller.
Did you uncheck the "device currents" on the save all form (you had it set to nonlinear on the excerpt you sent).
On the case with the real problem, can you maybe post the bottom part of the input.scs (from the simulationOptions line to the end of the file)?
In reply to Andrew Beckett:
As you have seen in my netlist the last but one line is "save n1" which means it should save only net n1, but I found that after the simulation is over, I'm still able to plot other nets which I didn't want it to save. To reduce size of data I would do as you said - uncheck everything in "select device currents (currents)" line. But my question is what are the settings to be done to stop ADE from being able to plot certain nets which are not selected as "saved'. It will be able to plot only if it saves it somewhere which means it occupies data.
The settings that I mentioned in the first post actually worked in my friend's system. It showed an error when trying to plot the nets which are NOT saved in the outputs pane. I want similar thing. I want it to be able to plot only the nets which are shown as "to be saved" in the outputs pane. I don't know why it's not working in my system even when using the same settings OR am I missing something else?
Please post the information we've asked for. We ask for it for a good reason, as it helps to understand what is going wrong. I am unaware of the simulating output information when it's been asked to only save a few nets - since you already said that the netlist was not the one you had a problem with, I'd sooner see the real data and then work backwards from that.
It's hard to know what you're missing if you don't show us what we've asked for...
Sorry sir, I posted that message before I saw your reply.
I (re)started the simulation again yesterday itself with strobe period as 10n in transient analysis options to reduce the data. The simulation is going on currently. I'm not sure what I checked/unchecked in 'save device currents' line when the problem occured (first time simulation). But currently input.scs file is as follows:
simulatorOptions options reltol=1e-3 vabstol=1e-6 iabstol=1e-12 temp=27.0 \
tranCheckLimit checklimit checkallasserts=yes severity=none
tran tran stop=30u errpreset=moderate write="spectre.ic" \
writefinal="spectre.fc" annotate=status save=selected strobeperiod=10n \
asserts info what=assert where=rawfile
saveOptions options save=none pwr=none useprobes=no
Here you have chosen the signals to be output as "none". You really don't want that, because that will save only a single (arbitrarily chosen) signal - it was a historical limitation in spectre that it was hard to turn off the outputs completely, so "none" just picks one at random to get the results small.
You want "selected".
It should only be saving vctl then.
Sir, even though it should save only 'vctl', I'm still able to plot other nets (Results -> Direct plot -> transient signal). Why is that so? (If it didn't save other nets, how is it able to plot them?) I hope you understood my doubt.
Please note that Cadence AEs respond to questions on this forum often "off hours" and/or in addition to their "regular duties".
If this is a critical issue and you need immediate attention, please talk to your University staff and see how to file a Service Request at http://support.cadence.com . (There are specific instructions for university accounts).
I cannot reproduce what you are seeing in MMSIM 11.1 and IC 6.1.5 latest ISR.
If I only save one net. (save=selected) and
1. Select Results->Direct Plot->Transient Signal and click on an unsaved net, I get a message in the CIW:
*Warning* no "VT" data for node "/net8"
2. If I do not have any signal in the outputs pane selected for plotting, then I cannot use Results->Plot Outputs->Transient.
If I only have one signal selected in the Outputs pane, then I can only plot that signal.
ERROR: /net8 is not a kept output