• 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 SKILL
  3. dbLayerSize seems to be faulty - is there a work-around...

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 143
  • Views 2533
  • 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

dbLayerSize seems to be faulty - is there a work-around?

thomas1000
thomas1000 over 12 years ago

I have a design with an object on a single layer with a fairly complex boundary (The object has 602 points in its outline).  I am using the dbLayerSize(...) routine to size the layer and place the result in a different layer.  In this instance I am resizing by 0 (so that should help eliminate resizing issue possibilities) but in other cases the amount could be anything and I am seeing the same issue with non-zero values.  dbLayerSize normally works just fine but for this particular object the result is an object with diagonal gaps across it.  Most of the outline is correct but the object has been divided into sections separated by four gaps of differing width with a 45° slope.  Since the object is on a keepout layer the diagonal gaps are a problem. I tried the regular menu "size" command on the object and it works fine.  I even tried copying the object to a different cell and running dbLayerSize with the same result.

Are there known issues like this with dbLayerSize?  Is there a work-around?  

None of the vertices of the object lie on top of an adjacent point.  484 are off-grid but that shouldn't matter.  One thing that is very bizarre about this problem is that it doesn't just affect this object.  Nearby objects on the same layer included in the LPPObjects list (see call below) which are being sized at the same time  are chopped up along the same diagonals even though they are not related in any other way. That suggests that there must be some internal variables common to both objects that are getting messed up.  This looks like a Cadence SKILL routine bug.

If you need it, I can provide the list of points.

The call is being made as follows:  dbLayerSize(Cv LPPTo LPPObjects SizeBy)

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

    Although if you were creating a pcell, you could just use dbLayerOr or even dbCopyFig to copy across to the new layer. It's only an issue if the size is 0.0 (so in other words you're not actually sizing it) - any other size seems fine. So there would be no need to write your own sizing algorithm even then.

    Regards,

    Andrew.

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

    Although if you were creating a pcell, you could just use dbLayerOr or even dbCopyFig to copy across to the new layer. It's only an issue if the size is 0.0 (so in other words you're not actually sizing it) - any other size seems fine. So there would be no need to write your own sizing algorithm even then.

    Regards,

    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