Cadence Virtuoso Layout L phantom objects

4.2k views Asked by At

I have a cell (call it A) which is used once in a hierarchically higher cell (call it P). When I place A in P, its borders are rather larger than the actual content of A. When I descend to A and zoom-fit, it is way zoomed out, indicating there is something present way out on the edges.

I may have dragged objects there at one point but currently there is nothing visible. It is driving me crazy in terms of aligning objects, etc.

Is there any way to clean this up or something?

3

There are 3 answers

0
lakers On

Usually it happens when you draw the cell in LayoutXL, particularly when you insert pins.

Layer and purpose in these pins are selected separately for some reason, that is why it is easy to enter "impossible" combination.

Nothing happens, then you do it again and continue drawing. But there are several invisible squares that will continuously frustrate your inner perfectionist. You do the following:

Open this cell's layout, switch to Virtuoso window and enter:

lppList=list()

then:

foreach(shape hiGetCurrentWindow()~>cellView~>shapes if( (member(shape~>lpp lppList)==nil) then lppList=cons(shape~>lpp lppList)))

You have created the list with all layers in this layout, you can view it by entering:

lppList

You'll get something like this:

(("NW" "drawing") ("NP" "drawing") ("weird" "guy") ("M1" "pin") ("M3" "pin") )

If you find a weird guy in this company, just enter the following command:

foreach(shape hiGetCurrentWindow()~>cellView~>shapes if((shape~>lpp == list("weird" "guy")) shape~>lpp = list("prBoundary" "drawing")))

If you see that some squares, labels (or whatever unseen before) appears as prBoundary, just delete it, save, and your layout will be small and shiny again.

2
Ian St.John On

If I recall Cadence used to have a problem with leaving steiners behind when you moved routes. They are not visible but the db treats them as real objects for the bbox calculation. According to Cadence, deleting the objects should not harm anything. Open the layout in edit mode and paste this code into the CIW. This will delete all the steiner objects in your layout. If this was the root cause after saving you should see the bbox return to normal.

cv=geGetEditCellView()
foreach( item cv~>steiners 
   dbDeleteObject( item )
)
0
digitaLink On

This thread may be considered "dead," but hopefully this helps.

It is possible the layers that are not visible are turned off.

To turn them on, go to the layers pane on the left. (If it is not there you can turn it on by going to Window —> Assistants —> Layers)

You can then click the drop down arrow in the top right corner and click Edit Valid Layers.

Then, click all valid in the Set Valid Layers popup. Click Ok.

Finally, check the Used Layers Only checkbox in the Layers pane. Look for any layers that weren't there before that you don't need.