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.
I have code like:
dbSave(cvid_org libName cellName viewName) ,
which works fine within dfII 5.1* release even when the target cell view (libName:cellName:viewName) is open for edit in the current session. Basically, it just overwrites the current target cellview with the contents in cvid_org. As the result, I will see both disk and display window of the target cellview are updated.
However, in the dfII 6.1 release, this same code works correctly ONLY when the target cell is not open in the same session (memory) for edit. Otherwise, it complains "dbWriteCellView: Unable to lock database file for libName/cellName/viewName" and fails. Sounds to me that the same API will not be able to handle memory anymore: it couldn't figure out that the target cell is in memory in EDIT mode and it has the "lock" already.
So, I am using a ugly work-around: adding "dbPurge" first in my script to remove the target cell from memory and then, run the same dbSave, and reopen it after that.
Do you have any clue why its behavior should change to the new way? Do you have suggestion for better work-around?
The OA database itself sets a "in use" flag when a cell is opened for edit. Virtuoso cannot override the flag.Try to change the mode on the cellView to read only (make it non editable, you may have to discard edits first) and then save the data.
In reply to Austin CAD Guy:
Unfortunately that doesn't work either - it says:*WARNING* (DB-270236): Cannot save to cellview 'amsPLL/blah/schematic'; the cellView is opened read-only.
which is not very helpful. I think closing (purging) it is the only option at the moment (I tried "s" mode too (but that's really read in disguise)).
Can't use dbCopyCellView, because it tells you:
INFO (DB-170007): dbCopyCellView: amsPLL/blah/schematic already in VM. No copy being done.
In reply to Andrew Beckett:
Thanks for correcting me, I do not have access to Virtuoso to test my suggestion.
Sorry Ted - I guessed you'd not had the chance to try it. By coincidence I was looking into this at the same time as you, that was all.
Hi, Ted and Andrew,
Thank you for your information! After read your comments, I tried to dig out more from the Cadence OA documents. In the dbSave section, the document still tell me that I could save a cellview to a different open cellview as long as the target view is opened in "w" mode. Sounds the document about dbSave is not up-to-date yet. However, there is a release notes about dbCopyCellview and dbWriteCellView, which described the different behaviors of those commands between OA and CDB. The description is very similar to what Ted pointed out: the operation is allowed when the target cell view is in "r" mode, but not in "a" or "w" mode. But actually, even opened in "r" mode for the target cell view, as Andrew said, you couldn't do the dbSave into the target cellview. Sounds there is a little bit confuse in the document.
In reply to Tongju:
Please report this to customer support, and then we can get a CCR filed to get this fixed (I'd do it myself, but bit swamped at the moment).
I have filed a SR (#42361144). Also, I tried dbCopyCellView(cvid libName cellName viewName nil nil t), here, "t" means "allow overwrite", then, the dbCopyCellView works when the target cell view is opened in Virtuoso memory. So, sounds the dbCopyCellView command is ok. But the dbSave command ONLY works when the target cellview is completely purged from memory.