• 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. How to utilize the dbIDs I got from dbGetTrueOverlaps

Stats

  • Locked Locked
  • Replies 7
  • Subscribers 138
  • Views 4064
  • 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 utilize the dbIDs I got from dbGetTrueOverlaps

dakuang01
dakuang01 over 1 year ago

Hi,


I always find this most difficult for me to utilize the data list I got from dbGetTrueOverlaps. 

I got a function from here to be able to utilize the targeted info. I think it was dbGetOverlapShape(overlap) or something.

But what I'm trying to do now is to remove some lists having their cellnames as "abcde_*", which I need to use the dbID of the first list of the concatnated lists instead of the last list.


d_tmp = dbGetTrueOverlaps(cv l_bBox_4xMT "M1_4B" 20 t)

In other words, I got a concatnated list from the overlap function above. And I would like to remove the lists of the cells "abcde_*".

Hope this makes sense and I could get some great help like I used to do.


Thanks,
dakuang01

  • Cancel
  • dakuang01
    dakuang01 over 1 year ago

    I realized by knowing the depth of the lists I got from the overlap function, this issue might be handled and I found a function abListDepth Andrew provided.
    Any other extra help on this issue would be much appreciated too!

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 1 year ago in reply to dakuang01

    It's not that clear what exactly you're trying to filter out here - where this cellName "abcde_*" is in the data you are needing to filter. So without that, hard to know what you really want (or don't want, in this case!)

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • dakuang01
    dakuang01 over 1 year ago in reply to Andrew Beckett

    I'm currently testing on a case with a simple hierarchy and I attached an image for an example. 

    The fisrt db:0x6b6c6120 is an instance(could be a mosaic too) data having the cellname information that I need to filter.

    And the second db:0x4dd694ac is stdVia that includes M1_4B and the last one db:0x3a7bb49e is rect that I targeted M1_4B.

    I think I need a better understanding of the hierarchy of the data from the overlap function. On a complex hierarchy, I might not solve this issue.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 1 year ago in reply to dakuang01

    The documentation does explain how the output is structured. I suggest you look there. It's in effect giving the hierarchical path down to the leaf object found by dbGetTrueOverlaps.

    The picture doesn't help me much, I'm afraid...

    Andrew

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • dakuang01
    dakuang01 over 1 year ago in reply to Andrew Beckett

    Ok I'll look into it. When I have more specific questions, I'll ask again. Thanks for your reply!!

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • dakuang01
    dakuang01 over 1 year ago in reply to Andrew Beckett

    Hi Andrew,

    I've been trying a few methods to approach the cells with the cellname "abcde_*" but I ran into issues.

    Basically, the question you asked is the very issue I'm having. Depending on the hierarchy of the layout, I don't know how to figure out where the cells are in the data.

    The only thing I know is the leaf object and the cell I'm looking for are the elements of the very bottom of the concatenated list in hierarchy-wise like the image I attached before. They're in the same level.

    Or do I need to check every single element whether each element is "inst" or "mosaic" with the cellname I'm searching?

    I might need to use a recursive function. And I'm not very familiar with it.

    Any advice? Please help me! 

    Thanks,
    dakuang01

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 1 year ago in reply to dakuang01

    You seem to have asked the same question again in this thread (with a little more detail), so closing this one off and continuing it in that thread.

    • 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