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 need a script for converting POLYGON to Rects.
I already have a script which converts rect/polygons to path in layout. But this works for only few sets of polygons only (simple polygons-non branched).
The code I need now is where the input will be the id of a polygon and the o/p should be rects
Ex i/p to proc - cvid~>objType - "polygon"
cvid~>points or the cvid itself.
o/p from proc - list of rects (bBox's) i.e
Please give a code or an Alogrithm that works.
Thanks & Best Regards,
dbLayerTile() will take a list of shapes and generate a new list of shapes which are trapezoids (if the original shapes are all orthogonal, the resulting shapes will be rectangles).So that does what you want.Regards,Andrew.
Thanks very very much Andrew. There is one saying in Telugu "sankalo pilladini pettukoni ooranta vetikadanta" which means"The baby is right in ur lap and u are searching the entire city". Its the same here. Can u tell me what u mean by "if the original shapes are all orthogonal" ( any images )Any ways dbLayerTile is working well for all types of polygons in the layout I have.Thanks,Sathya.
I've attached a picture. By orthogonal I mean that all the angles are multiples of 90 degrees. As you can see in this example, some of the angles are not 90 degrees, and so those parts have been tiled into trapezoids rather than rectangles (well, a rectangle is a trapezoid, but you know what I mean).If your shapes only have 90 degree multiples in the angles, you'll get rectangles out.Regards,Andrew.
Ok got it. ThanksNot greedy but dbLayerTile needs a layer name as input so that it can create rectangles over the object I gave.Is there any other command which will return only rectangles (ids or bBox's) rather than creating them and returning their idsOfcourse I can get the bBox and delete those created layers. Still if there is any other command....Thanks,Sathya
Hi Sathya,Well, it already does return rectangles - (ids). You can't return a rectangle dbId without creating it. database ids have to be in the database!If you're wanting a function which just returns the bBoxes of the resulting rectangles rather than actually creating them, then no such function exists (not built in anyway),It's not exactly difficult though:bBoxList=foreach(mapcar shape dbLayerTile(cvId list("layer" "purpose") srcShapes) prog1(shape~>bBox dbDeleteObject(shape)))Regards,Andrew.
Hello Andrew,dbLayerTile needs the cell to be in the edit mode to work. So if I want to useany function which uses this function in read-only mode it will fail.Can u suggest any way around or u want me to use dbOpencellViewBytype and thenuse dbLayerTile.Regards,Sathya
Hi Sathya,You can always open the cellView in "s" (scratch) mode. This allows you to modify it but not save it.dbReopen(cvId "s")will do that.In OA releases (e.g. IC610), there is no longer a scratch mode, but you can modify read-only cellViews from SKILL, and the modifications will be discarded when you close it, or when you reopen in edit mode.Regards,Andrew.
Hello Andrew,Bindkeys are not working after I use dbLayerTile() function in VLE. Even CancelEnterFun() is of no good. only after Ctrl+C bindkeys are working.Please suggest.Regards,Sathya
I seriously doubt this is anything to do with dbLayerTile(). I can't reproduce it. I suspect there's something in your code whichis blocking - it's very hard to say without knowing what you're doing.Regards,Andrew.