• 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. skill code in layout customization...

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 144
  • Views 16429
  • 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

skill code in layout customization...

Heywire
Heywire over 10 years ago

Hi Andrew,

I am taking xor of two similar layers(e.g. metal1 ) from two different layout cell views. I want to get that xor of the area displayed by the 'white error marker' (or thick highlight) , which is right now in text rectangle. Can this be achieved?

Thanks,

Anand

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 10 years ago

    Hi Anand,

    Your question is not clear - which "white error marker" are you talking about? It's not obvious to me where this data came from or what you expect to do with it.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Heywire
    Heywire over 10 years ago
    Hi Andrew,
    I was saying that, when I do 'dblayerXor(list of layer objects), I want to
    get the 'xor operation area' highlighted using the 'error marker' as is
    used in DRC error marker.Right now, I am able to get text drawing rectangle on xor operation ,but is
    it possible to draw the 'error marker' somehow?

    Thanks,
    Anand
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 10 years ago

    Hi Anand,

    Assuming you're using IC61X, then you should be able to iterate over the polygons produced by the dbLayerXor, and then call dbCreateMarker to create markers corresponding to each polygon (and then delete each original polygon). If you're using IC5141, there was no separate marker object, but you can create the shapes directly on the list("marker" "error") layer-purpose-pair; CDB simply used conventions on layer names for special meaning, whereas OA has a separate object explicitly for markers.

    So something like:

    foreach(shape xorResults
      dbCreateMarker(
        cv
        "some message"
        "XOR"
        shape~>points
      )
    )

    You should of course check that all the shapes are polygons otherwise they won't necessarily have a points attribute. You may want other arguments for dbCreateMaker passed too (see the documentation).

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Heywire
    Heywire over 10 years ago

    Hi Andrew,

    It works fine now.Thank you.


    Regards,

    Anand

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Heywire
    Heywire over 10 years ago

    Hi Andrew,

    I have a query related to dbLayerXor() command. Wherein, it is required to mention the layer in which the 'xor' operation area  is to be obtained, say 'text' layer.Now, my question is, without taking the layout for edit, how do  I obtain the 'xor' area, say highlighting by  a 'marker layer' ?

    Thanks,

    Anand

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • theopaone
    theopaone over 10 years ago

    One way to prevent the data being saved in the current cellView is to switch between the mode to "s" or "r" using dbReopen. Once you are done with the edits, you can close the data, discarding the edits automatically.

    If you want to just deal with the created shapes, save their ID's and delete each shape when you are done. (I usually use the Y layers for these intermediate shapes) or open a separate scratch cell which you can place the output of the XOR and only copy the relevant data back to the edit cell.

    • 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