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.
In reply to Andrew Beckett:
Using the cross function, it generates a number of points, where the lowest and the highest values are the right values that I want. why not the cross function is showing just two values instead of lot of points in the middle of those two points. I want the exact two x values where the y value is constant (e.g, -4.21). Thank you.
How can I save the webforms in Cadence and later open it and work on it? I saved the forms as .grf file, but later when I open the .grf file, it only shows the expression, but no waveform is there. So, what is the right way to save waveforms and reopen it again at a later time? I have separate waveforms append together from different runs. Thank you.
In reply to anik0306017:
I suggest you read the forum guidelines. You've added two unrelated posts to an old thread, and the forum guidelines tell you not to do that. I'm short of time otherwise I'd split them up - but please don't do this as it makes things very confusing.
For your previous post, this is because you've passed 0 as the cross number (the third argument to cross). If you do this, it returns a list of all the crossing points. If you want the first, pass 1; if you want the last, pass -1. You must have had multiple crossing points.
For this one, I've no idea what a "webform" is, but assuming you are trying to save the waveforms, then the grf format actually saves the references to the waveforms - not the waveform data itself. You didn't say which version you're using (see the forum guidelines again), so hard to advise you - there are ways of exporting the data into a new database, but it's not that obvious precisely what you were trying to do or if it stands any chance of working in the version you're using.
Hi Andrew, im using IC614 version, and when i try to use the cross function for something similar to was described i obtain this error:
*Error* crossMethod: can't handle crossMethod(2.502911e-05 2.4e-05 1 "either" nil nil)
Do you know whtas happening here?
Thanks in advance,
In reply to fvillota:
If your crossing threshold is 2.4e-05, have you verified by plotting the signal of interest that the waveform crosses 2.4e-05
In reply to smlogan:
Thanks for the quick answer. Yes, I've verified in the waveform that the signal crosses the specified point, and also my signal does not have any other rising or falling edge, this is a unique cross point and falling edge.
Might your provide the exact syntax of the calculator expression? One item I have occasionally noted is if the crossing point nearly coincides with the start or end of the waveform appears to results in a crossing error.
This is my calculator expression:
cross(IDC("/I0/icv0") 24e-6 1 "either" nil nil )
My waveform has a constant behavior, but after some point it starts to decrease, i want to measure the x value which has 24u in Y axis (24u is close to the maximum value, less than 2% of difference).
Given that crossMethod is the internal function called within the cross function, and it is passed the same arguments as cross, it appears that the first argument to cross has been given as a scalar value rather than a waveform, so it's not surprising that it doesn't work.
This is my calculator expresion:
cross(IDC("/I0/icv0") 24e-6 1 "either" nil nil )
Isn't IDC() going to return a single scalar value rather than a waveform (as Andrew pointed out being the source of the problem for the cross function) ? In other words, wouldn't the DC current be static, and therefore not cross any thresholds?
Hope this helps,
The IDC function returns a current from the dc operating point. So it is a single value - there's no variation and hence it makes no sense to use cross on it. Put another way, it will resolve to a number - there's no x axis, and only a single y value.
I think Andrew's comment may be correct. Will not the function "IDC("/I0/icv0") return a scalar value? If you are trying to find a value from a DC analysis, perhaps you can use the value() function to interpolate between two values.