• 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. leSearchHierarchy() layers origin problem

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 144
  • Views 14457
  • 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

leSearchHierarchy() layers origin problem

Sarvani
Sarvani over 12 years ago

 Hi all,

 1) I have used m1=leSearchHierarchy( cv cv~>bBox 32 "any shape" list(list("layer" "==" list("M1" "drawing")))) to get all M1 layers (from hirerchy also). But when I enter dbLayerSize(cv list("y2" "drawing")  m1 0.2) in CIW then Y2 layer is placed at different points from original m1 layers(getting mismatch for hirerchy m1 layers only). Please let me know how can I overcame this.

2) And  is there any command which is faster than leSearchHierarchy.

 

Thank you,

Sarvani

 

  • Cancel
  • psill00
    psill00 over 12 years ago
     I think the problem is leSearchHierarchy does not give the hierarchy path of the shape. Try using:
    dbShapeQuery(

    d_cellviewId
    l_layerPurposePair
    l_bBox
    [ x_startLevel ]
    [ x_stopLevel ]
    [ n_filterSize ]
    [ l_transform ]

     

    Another good function to use is but you have to flatten the list output:

    dbGetTrueOverlaps(
    d_cellView
    l_bBox
    [ l_layerPurposePair ]
    [ lx_level ]
    [ g_doRowCol ]
    )


     

    As far as speed, anytime you are creating polygons it is going to take time. Thing I have noticed that slow down a script: print outs as the scripts is running and doing a dbSave in a loop really slows the script down.
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Sarvani
    Sarvani over 12 years ago

     Thank you very much for your suggestions. I got it by using above commands. dbGetTrueOverlaps() command will check layers under a bBox. Similarly is there any other command which will pickup layers under a point(hirerchy also)?

     

    Thank you,

    Sarvani.

     
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • skillUser
    skillUser over 12 years ago

    Hi Sarvani,

    You can use the same function, use the point twice for the bBox and it will give the objects under that point, i.e. list(pt pt).

    Regards,

    Lawrence.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Sarvani
    Sarvani over 12 years ago

    Hi Lawrence,

    Thank you verymuch for reply.

    1)It is working now. How can I get exact overlap area between two layers? I have been tring to write autovia code(like option which is in IC615, my version is 5141). Now I have layers m1,m2 at point. I have to get overlap area of both layers.

    2)When My object is in hirerchy how can I get exact points of object. I'm unable to get bBox of that point as per top level.

    Code still in progress

    cv=geGetEditCellView()
    enterPoint( ?prompts
    list( "Enter a point.")
    ?doneProc "pointDone"
    )
    procedure(pointDone(w done pts)
    let((figlist1 figlist2 figlist)
    figlist1= dbGetOverlaps(cv list(car(pts) car(pts)) list("M1" "drawing") 32 t)
    figlist2= dbGetOverlaps(cv list(car(pts) car(pts)) list("M2" "drawing") 32 t)
    figlist=append(figlist1 figlist2))

    ;need to find overlap area of two layers

    )

    techFindViaSpec() ;command still pending
    leCreateContact() or dbCreateContact(); command pending

     

     

    • 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