• 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. Move or copy across layout hierarchy

Stats

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

Move or copy across layout hierarchy

RK56
RK56 over 6 years ago

Hi,

Is there any skill procedure available to copy/move layout objects from one hierarchy to another?. The usage will be like this,

1. EIP to a level

2. Select the objects to be moved or copied (Ctrl+X or Ctrl+C)

3. Come out one/multiple level above.

4. Paste the objects in same location as how it was inside the hierarchy (Ctrl+V)

Similarly from top level to lower levels

-Ramakrishnan

  • Cancel
Parents
  • skillUser
    skillUser over 6 years ago

    Hi Ramakrishnan,

    Unless I am mistaken you want to flatten a cell one or more levels? Flatten will affect all objects, but the reverse, Make Cell, could be used to 'put back' anything that you didn't want promoted up a level. Look for Edit -> Hierarchy -> Flatten and Make Cell.

    Hopefully this helps you?

    Lawrence.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 6 years ago in reply to skillUser

    For a while, you've also been able to do this using Yank and Paste (typically "Y" and "Shift-Y"). If you've pre-selected the objects, it will yank just those into a buffer, and then paste them later - this follows the common copy-paste paradigm.

    Of course Lawrence's suggestion is better if you want to flatten the entire cell or create new hierarchy, but if you want to copy stuff selectively, you can do that.

    The alternative is to open both lower and upper cellViews in different windows, and then  you can copy or move starting from one window and ending in the other.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • RK56
    RK56 over 6 years ago in reply to Andrew Beckett

    Come on. I'm looking for a better solution on a SKILL forum. Lawrence's and Andrew's suggestion is what currently I practice. Can it be done like this?

    1. Record the transform as we go down the hierarchy

    2. Select the objects

    3. Come up to the desired level and paste the objects after concatenating the transforms.

    Similarly when we want to push down some object from higher level to lower levels.

    I can write this but unfortunately like everyone in this forum I don't have time for next three months. So looking for some already available script or someone to write quickly.

    -Ramakrishnan

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 6 years ago in reply to RK56
    RK56 said:
    Come on. I'm looking for a better solution on a SKILL forum

    Hmm. Unfortunately neither Lawrence nor I are mind readers and given the wide range of questions we get in these forums I don't think either of us could have inferred what you actually wanted. Just because the question is in the SKILL forum doesn't mean anything - we get lots of non-SKILL related questions in these forums, and if you didn't know that yank/paste existed then you might have been looking for a SKILL equivalent.

    I'm not aware of any existing "script" to do what you're asking for.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • RK56
    RK56 over 6 years ago in reply to Andrew Beckett

    Agreed.  I did not mean to hurt anyone here.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • dmay
    dmay over 6 years ago in reply to RK56

    The short answer is yes it can be done. We have done it and it isn't trivial. It is not easily extracted from our code for me to post since it is embedded in our custom ascend/descend code. We've had the functionality for over 20 years, but it has only been pretty bug free for the last 10 (some of that is due to poor support for mosaics in earlier Skill code). Our code prompts the user if they want to ignore, copy or move the original selected set. Our ascend and descend always asks you if you had something selected when you leave a cell. A better alternative would be to have a custom cut or copy command to store off the transform and selection information before you traverse and a paste after you get to your destination so you don't have to rewrite the ascend/descend code.

    Derek

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • RK56
    RK56 over 6 years ago in reply to dmay

    Thanks Derek for the reply. My thought process is similar to yours. I will use custom copy or move commands. Any help here is always welcomed

    -Ramakrishnan

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • RK56
    RK56 over 6 years ago in reply to dmay

    Thanks Derek for the reply. My thought process is similar to yours. I will use custom copy or move commands. Any help here is always welcomed

    -Ramakrishnan

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

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