• 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. For a given instance name, Update the sub-cell name in ...

Stats

  • Locked Locked
  • Replies 2
  • Subscribers 143
  • Views 13782
  • 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

For a given instance name, Update the sub-cell name in schematic

Anuj Kumar
Anuj Kumar over 6 years ago

Hi,

Test Case: 

I am given a cadence library having 5 cells say "c1 c2 c3 c4 c5". Also given Instance names present in these cells say "i1 i2 i3".

For each of these cells, I need to look for those instances and swap the corresponding sub-cell name to a different sub-cell name(present in same Library).

I have a lot many instances to do a similar swap. So, thought of SKILL being a helpful tool here.

Kindly suggest a skill code to help me achieve the same.

Please let me know if further explanation is needed.

Many Thanks,

Anuj

  • Cancel
  • mbracht
    mbracht over 6 years ago

    Hi Anuj,

    Well essentially you need two nested foreach loops - the outer loop iterating over the cells, the inner one iterating over the instances in each cell:
    (foreach cell '("c1" "c2" "c3" "c4" "c5")
       ....open cell view in terms of dbOpenCellViewByType
       (foreach inst '("i1" "i2" "3")
          ...do the replacement
       )
    )

    but...is it really always the instances i1, i2, i3 in all cells? Or is it all instances in each cell?
    And with respect to the swapping of an instance's master cell (that's what you mean with subcell right?) - are you deleting the old instance and placing a new one or do you
    want to remaster the existing instances (which is not a trivial task). And which subcell/master is supposed be replaced by which other subcell/master? Is there a mapping
    between old and new subcells. Sorry for not being able to give a more specific answer but your question itself is pretty general.
    So yes - I think some further explanation would be helpful.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Anuj Kumar
    Anuj Kumar over 6 years ago in reply to mbracht

    Thanks "mbracht" for looking into the test case. Please find the detailed response below: 

    1) In the cell, there are many instances, of which I only want to look for  "i1, i2, i3" instances, if these are present or not. This is to be done individually for all cells. c1, c2, c3, c4, c5. 

    2) Yes, by sub-cell, I mean instance's master cell. 

    3) Regarding the swap : once we locate the presence of those instances in a cell, I want to replace the corresponding sub-cell with new sub-cell or we can say symbol which is present in same library as the old cell to be replaced. Yes, I have a mapping for the new subcell to be replaced with. But this is regardless of the old subcell (Since the old and new are part of same library and we just care of the instance name). 

    So, basically, the need is to look for those 3 instances in a cell. If it is present, then replace that subcell or symbol with new one from same library.

    Hope I made myself clear. 

    Kindly let me know the skill code solution to the same. Also, please share the proc to swap the subcell/symbol in schematic.

    Thanks,

    Anuj

    • 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