• 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. How to delete all ghost layers outside the visible bbox...

Stats

  • Locked Locked
  • Replies 1
  • Subscribers 126
  • Views 11124
  • 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

How to delete all ghost layers outside the visible bbox in Virtuoso Layout?

Johanny Saenz
Johanny Saenz over 3 years ago

Hi all.

Does anyone have a SKILL code or method to delete ghost layers that are not visible in  Virtuoso Layout?

Why does it happen?

Thanks.

Jorge

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 3 years ago

    Jorge,

    There are numerous reasons:

    1. You may have a shape in the database which was drawn on a layer and/or purpose that is no longer defined in the technology database (maybe the layout was attached a different technology database before, or maybe the tech database was updated)
    2. The layer may be marked as invisible
    3. It may be invisible and marked as not valid - so it doesn't show up in the layer palette (you could change the valid layers).

    I was going to start writing some code to do this but to generalise to cover every situation it would end up needing a bit of time to do right - it's unclear which situation you would be dealing with (and whether it needed to traverse hierarchy to hunt these down). So I decided not to write something (I didn't really have time). However, I did find there's an article which at least covers the situation where an invalid purpose is found: SKILL: To detect shapes on a layer with purpose nil or unknown, later delete them or map to existing purpose. This could be altered to look for layerName being nil too - (this would be point 1 above). There are some related solutions at the bottom of that article which might also be useful too.

    Using File->Summary in the layout editor can give you some kind of indication of what you have in the database.

    Hope that helps a bit!

    Andrew 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 3 years ago

    Jorge,

    There are numerous reasons:

    1. You may have a shape in the database which was drawn on a layer and/or purpose that is no longer defined in the technology database (maybe the layout was attached a different technology database before, or maybe the tech database was updated)
    2. The layer may be marked as invisible
    3. It may be invisible and marked as not valid - so it doesn't show up in the layer palette (you could change the valid layers).

    I was going to start writing some code to do this but to generalise to cover every situation it would end up needing a bit of time to do right - it's unclear which situation you would be dealing with (and whether it needed to traverse hierarchy to hunt these down). So I decided not to write something (I didn't really have time). However, I did find there's an article which at least covers the situation where an invalid purpose is found: SKILL: To detect shapes on a layer with purpose nil or unknown, later delete them or map to existing purpose. This could be altered to look for layerName being nil too - (this would be point 1 above). There are some related solutions at the bottom of that article which might also be useful too.

    Using File->Summary in the layout editor can give you some kind of indication of what you have in the database.

    Hope that helps a bit!

    Andrew 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

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