• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC Design
  3. "freeing" nets in 6.1.x VXL

Stats

  • Locked Locked
  • Replies 12
  • Subscribers 126
  • Views 5080
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

"freeing" nets in 6.1.x VXL

linbo
linbo over 14 years ago

 Does anyone have any hints for "freeing" shapes and vias from their net connectivity in VXL 6.1.x?  It seems the sticky net problem from a long time ago is back.

 

Example:

 I have a via on a net named foo with an error marker.  If I query the via the net is vdd.  When I extract, the error marker remains and the error shape is still there and the via's net is still vdd.  Despite quitting out of Cadence session and restarting the dang via remains firmly connected to vdd.  It is clear that vdd is not involved in any way with the via or the net.

 The only way I can get the via to "free" it's net assignment is to copy the via to a second via, delete the first one and place the new copy onto the net named foo.   If I re-extract the net on the via is now foo.

 

If someone has some skill code out there that could fix this I would really appreciate it.  If you work for a company that wants the layouts to be "XL compliant" this is a real pain.

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 14 years ago

    This should only happen if the object has a property lxStickyNet on it - to mark that the stickiness is intentional. That would normally only happen for manually created connectivity, or if the property was added by hand (not normally the case).

    If it's happening in other cases (I've not seen that), you should log a service request.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • linbo
    linbo over 14 years ago

     Hi Andrew,

    There are problems with a service request:  It is difficult to get the tool to reproduce this one on cue.  It only happens after working on a cell for a long time.  I cannot send the company IP with the problem and so I wind up fiddling with a fake cell trying to get it to "break" for a test case; no time in a production environment.

    In the ancient past, where the sticky nets had lots of bugs there were some skill routines that would strip the nets and allow a fresh start.

    It would also help if VXL held pins as a firm starting point in an extract.  The example I described had a pin, a via, a metal 2, a pcell connection with the gate.  That's it.  No complex connections here and there.  Yet still, despite the pin's net (foo), the via remained vdd.

    I know this is getting a bit farther afield but it would be nice to have a push net feature where one could designate a net name and force propogation from that point.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 14 years ago

    OK, but making comments on the forum won't result in enhancement requests being filed with R&D, so a service request would allow your suggestions to be properly discussed and make it through to R&D.

    Note that there are major differences in Layout XL in IC61 - for example, the binder is now net based (rather than instance based) and as such it tends to do a far better job of matching the schematic and layout even when you do things like copy - because there's no requirement for the instance names to match.

    You can also force a re-extract, Connectivity->Update->Extract Layout (there's an icon for this).

    Best Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • linbo
    linbo over 14 years ago

     Hi Andrew,

     

    I'll try to file an SR.

     I do re-extract.  Makes no diff.

     

    thanks,

    --lin

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • sPoK
    sPoK over 13 years ago

    This is still a problem even in 6.1.5.500.10, nothing helps, niether extract neither update comp&nets. Placing pin will not help also (pic).

    There is no lxStickyNet set. 

    Why this can't be simple, if there is a pin placed anywhere in metal structure, all shapes/paths merged/added shoud get the same connectivity as pin. Even thru hierarchy, (eg some pcell with only metal shapes, no pins, no nets).

    I have ~10k wrongly assinged paths/vias, select "All shapes on net" doesn't work also.  

    This is really annoying.  

     

    BR

    Srdjan 

     

     

     

     

     

    • net_name.png
    • View
    • Hide
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 13 years ago

    Very hard to work out what your issue is from a picture - I suggest (as we usually suggest) that you log a service request

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Alex Soyer
    Alex Soyer over 13 years ago

    Hello,

    Could you please check if your via is inside a route object or not ?

    Before running this command please select your via in the canvas 

    css()~>route~>prop~>??
    ((db:0x3dbc3af6 cellView db:0x35d7519a objType "prop"
     prop nil enum nil name
     "lxStickyNet" object db:0x3db0a4e5 range nil
     value "TRUE" valueType "boolean" assocTextDisplays
     nil
        )
    )

    Virtuoso could store this lxStickyNet property on the route which is not editable trhough the Property Editor interface, it could only be removed by skill.

    My 2cents,
    Alex

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • sPoK
    sPoK over 13 years ago

    Hi Alex,

    css()~>route~>prop~>?? gives me only one nil, this is a correct command, right? (via is selected)

    Thanks, Srdjan

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Alex Soyer
    Alex Soyer over 13 years ago

    Hi Srdjan,

    Yes, you are correct this is the right command.

    If it returns 'nil' then your via is not part of a route then if it does not have the lxStickyNet property on it and the same property is not on the route object then this via should be re-assigned to teh correct connectivity when running the extractor.

    Please make sure to set the extraction hierarchy level if required. 

    You can make some trials using the Layout XL Wire Editor and assigning the net connectivity using the F3 option form, it should return the lxStickyNet property on it.

    As you don't have

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Alex Soyer
    Alex Soyer over 13 years ago

    Hello,

    Could you please check what is the value of the following virtuoso environment variable:

    envGetVal("layout" "extractKeepShapeAssignment")

    It should return nil if you would like the extractor to re-assign pin connectivity.

    You could as well check in you .cdsenv:

    layout    extractKeepShapeAssignment        boolean  t

    Thanks,
    Alex

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
>

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. 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. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information