• 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. Stream Out/In GDS with cells coming from specified library...

Stats

  • Locked Locked
  • Replies 3
  • Subscribers 142
  • Views 4556
  • 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

Stream Out/In GDS with cells coming from specified library only.

amaru
amaru over 3 years ago

Hello there,

I am trying to run some experiments on the layout macros. For that I want to Stream out GDS for the cells coming from a particular library only. Can someone help me in suggesting an approach, how can I do it or point me to an earlier solution. (I am trying this from last couple of days and searched the forum and solutions, but not able to find any)

Example of the task I am trying to do : Suppose I have a Instance view which has many cells in hierarchies. I want a way to only export the cells coming from "xyz" library and ignore all other cells. The difficulty is that a cell from "xyz" library may be inside a cell which is coming from some other library. 

I am fine with the solution which can do the same thing during StreamIn as well.

If any information is missing, let me know.

Please suggest. Thanks in advance for your valuable time.

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 3 years ago

    You'd probably need to use an approach similar to that covered in this article: SKILL code and shell script to stream out all or specified cells of a library to individual GDS files. The view name can be layout or any other name.

    In particular, it talks about providing a cell name list - you may want to have some SKILL code which traverses the hierarchy and finds just the cells from the library of interest and records these in a file. There are countless examples on this forum showing how to do hierarchy traversal. Then you could use this file as the cell list mentioned in the above article.

    You can't do this on stream in, because the stream file doesn't contain library information - so there's no way to know which cell came from which library.

    This seems a slightly odd request, and it's not clear to me why you would need to do this.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • amaru
    amaru over 3 years ago in reply to Andrew Beckett

    Thanks Andrew for your reply.

    The above solution which you point out will stream out GDS of the cells from a library differently. (Example : if cellA and cellB are from "xyz" library then it export GDS as cellA.gds and cellB.gds.)

    I want to preserve the coordinates from the original view and then stream out. Its like manually deleting all the cells coming of libraries other than "xyz" and then streaming out the GDS of that view.

    I understand why it's not possible during stream In, but what if we make a list of cells from "xyz" library and then using the same list during stream In and deleting all other cells. 

    I was hoping if there is some existing solution to it, which I might have missed or any new approach from more knowledgeable people. Time is also a constraint, as my macro is very big, I can't use an approach like flat each level and check for library name and continue till every cell is flat except cells from "xyz" lib.

    -Amar

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 3 years ago in reply to amaru

    Amar,

    My apologies - I thought the cell list approach wrote out a single file rather than individual files. If you use multiple cell names in the Top Cell(s) field instead, then it will put everything into a single stream file.

    However, it won't do this:

    amaru said:
    Its like manually deleting all the cells coming of libraries other than "xyz" and then streaming out the GDS of that view.

    That would just start from the given cells and include everything beneath them.

    You could adapt this code - this would delete the instances in memory during the stream out process:

    How can I skip/ignore some cells, beginning with a given prefix, during stream out? How to not stream out shapes on certain layers from certain cells during stream out?

    Andrew

    • 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