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 would like to generate a ASSURA DRC error report using SKILL. i've managed to do it by reading the *.err file. But I hope to refine my report by specified which instance in my layout that has DRC error. Can anyone give me some guide? Thanks.
Example: in my layout i have instance A, B, and C. If only instance C has DRC error, how can i make my report to show that instance A and B are clean but C is dirty?
Hi SLUnfortunately, as of the latest version Assura41USR1_HF8, it is not possible to output the instance name together with the errors. The name of the cell containing the error is listed the err file and since all instances of the cell would have the same error, perhaps you can simply search the layout for all instances of the cell. This can be a workaround. E.g. for a simple top level search, we can have:instList=list()cv=geGetWindowCellView()foreach( inst cv~>instances if( inst~>cellName=="myErrorCell" then instList=cons(inst~>name instList) ) ;if) ;foreachprintf("Instances %L has drc error xyz\n" instList)Best regardsQuek
In reply to Quek:
Thanks for your advice! So unfortunate to know latest ASSURA cannot output the instance name together with the errors.
But i not very understand your workaround. Lets take my test case as an example. Let my test case be layout A, inside my layout A, i have 3 instances A1, A2, and A3. After I run ASSURA DRC on A, the *.err file only shows the cell name A and the coordinate of the errors. So what I don't understand here is how you get the cell list for myErrorCell?
I have a workaround in my mind which make my program to read the errors coordinate and search the instance name at the coordinate. My instances are not overlapping each other so I think i can do that, but I hope that I can straight away get my solution through ASSURA DRC because I would like to keep my run time short.
In reply to llobak:
Thanks for your help. I've tried the avFlattenCell but still i could not make it to not to flatten the instances that I have. my avFlattenCell procedure as below:
procedure( avFlattenCell(cellName width height numShapes numInsts)
Is there anything wrong with my avFattenCell? this procedure will be added in my rsf file right?
Hi SLSorry for the late reply. Your avFlattenCell procedure looks fine. It will be added to your rsf file which you can view by pressing the "View rsf" button. Would you please retry using the latest version of Assura and see if the problem still occurs? May I also have the following info?a. Length and width of any of your instances that was flattenb. Number of devices in the instanceThanksQuek
I can view the rsf file by pressing the button and the avFlatten function is there.
For the information that you request:
a) all of my instances are being flatten, basically all of my instances are standard cells which is quite small.
b) number of device can be different for each cell but since it's standard cell so the device is not much.
I've tested a test case and i can get the instances not flatten
for the 600++ cells in my layout. i duplicate them( making each instance exist twice in my layout) and with this method only I'm able to make ASSURA not flatten my cells.
it feel strange for me because it suppose to not flatten my cells even though my instance only exist once in my layout. Can you help me to resolve this? Do you know why the avFlattenCell will only works when there's more than 1 same instance in my layout?
Hi SLYour observations are correct. I will find out more and let you know. In the meantime, would you please use ?preserveCells cmd as a workaround? You can use "*" wildcard in the cmd.Best regardsQuek
Hi SLUnique cells will always be expanded. This can be disabled using the following:avParameters( ?expandUniqueCells nil)Best regardsQuek