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.
Get the most out of your investment in Cadence technologies through a wide range of training offerings.
This course combines our Allegro PCB Editor Basic Techniques, followed by Allegro PCB Editor Intermediate Techniques.
Virtuoso Analog Design Environment Verifier 16.7
Learn learn to perform requirements-driven analog verification using the Virtuoso ADE Verifier tool.
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.
Our foundry provides a subcircuit model which produces correct ID-VD and ID-VG curves. However, the .OP vdssat (based on BSIM definition) is wildy different than what is expected, ~200mV higher.
What I want:
(1) Custom definition of Vdssat, for example vdssatxxx based on Rout degradation
(2) Must be able to back-annotate on the schematic
One way I was thinking is to run a DC sweep, calculate the value vdssatxxx based on my arbitrary definition, and then overwrite the original .dcOpInfo.info file's vdssat with the the calculated value vdssatxxx from the DC sweep. Now, when I back-annotate it should read the .dcOpInfo.info file that was overwritten.
(1) Is this a reasonable way to do it?
(2) How do I overwrite the existing dcOPInfo.info file (replace vdssat with an arbitrary value that I have calculated)? Does OCEAN have this feature?
(3) Is there a better way to have a custom-defined operating point parameter that can be back-annotated?
A couple of options:
You can't really overwrite the dcOpInfo.info file - I'm not sure you'd want to do that anyway.
It's not that clear precisely how you want to compute the vdsat from a dc sweep, but I doubt you'd really need to use a dc sweep?
In reply to Andrew Beckett:
Thanks. I tried #2 listed in your email. It may be the best option. However, it's not easy to come up with an empirical equation for Vdssat based on other operating point parameters (e.g. Vdssat=f(vgs,vds,vth,id,rout,...)). Please let me know if you know of one.
Ideally, I would like to base Vdssat on a DC sweep of Vds holding Vgs for each transistor at the operating point value. Below are the steps:
(1) Create original schematic (e.g. an op amp containing 10 transistors) and run .OP sim
(2) fprint value of Vgs and Vbs using ocean
(3) Create a new schematic copying only the transistors from original schematic
(4) Add dc voltage sources to each pin of the transistor in the new schematic using values from step 2
(5) Run a DC sweep on Vds (Vgs, Vbs is fixed to operating point value) for the new schematic
(6) Calculate Rout=deriv(Id)
(7) Create arbitrary definition: vdssatxxx is the Vds when Rout is degraded 50% from the value from Vds=Vdd/2
(8) Take this value of vdssatxxx and annotate on the schematic using schCreateNoteLabel (since I can't overwrite .dcOpInfo.info)
It's obviously a complicated solution... Please let me know if something like this already exists. I've just started to implement this with Skill and Ocean code (I'm a beginner), so please let me know of any difficulties I may run into.
May I ask some easy questions about opParamExprList expresstion.
Here I need to calculate res rely on v/i which I can get from OP( mappedRoot(\"A\") \"i\") and OP ( mappedRoot(\"A\") \"v\").
But somehow I may equals to 0 which I need to add one condition to display inf if this situation happened.
I try to use the example at document but not working so far.
Could you please give an simple example that I can follow and study?
In reply to XinjiePI:
A little hard to see what you want, but I'd expect something like:
"if(OP(mappedRoot(\"A\") \"i\")<1e-15 then "inf" else OP(mappedRoot(\"A\") \"v\")/OP(mappedRoot(\"A\") \"i\"))"
should do the job.
Great help! Thanks Andrew.