• 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 to generate selected devices from schematic to...

Stats

  • Locked Locked
  • Replies 7
  • Subscribers 142
  • Views 6121
  • 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 to generate selected devices from schematic to layout view

skillLover
skillLover over 1 year ago

Hi everyone,

I am looking for some guidance regarding a skill script that i am working on. 

Basically, i want to generate devices from schematic to layout.

Virtuoso Layout XL has already this feature called "generate from source ( pick n place)" but i am trying to replicate this feature to Layout L, layout L does not have this feature.
I tried different approaches, i am listing one by one:

1. First of all, i fetched the db id of the selected device in schematic
pmosCV = geGetSelSet()
pmosCV = (car pmosCV)

2. Next i got the db id of the layout view

layCV = geGetEditCellView()

3. Then i went with the following approach to copy the device to layout and store the id
copiedFig = dbCopyFig(pmosCV layCV)


Now, i am facing the main issue, 
if i try to change the viewName from symbol to layout, its not letting me change.
copiedFig~>viewName = "layout"
its throwing error

if i try to use dbreplaceprop, its creating a new property rather than changing the viewName attribute.
i tried some other apis all out of luck.

interestingly, i can change symbol to layout manually, using the Q key to manually enter the property tab of the symbol in layout view, and change viewname from symbol to layout then save, it works.
so, the bind key Q is tied to "leHiEditProp()" command but its manually done.


basically, i want this manual process to get automated using skill, any clue, hints or guidance would be appreciated..
thank you

  • Cancel
Parents
  • RobMan
    RobMan over 1 year ago

    Re. copiedFig~>viewName = "layout" its throwing error

    Why not tell us what the error is?

    It's a big effort to achieve XL like functionality. There is no 'L' in Virtuoso Studio you should consider upgrading.

    If you must DIY then I suggest building some mapping table and place the instances from scratch. Copying the schematic symbol is not a good approach.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 1 year ago in reply to RobMan

    I agree entirely with Rob. 

    The issue you're facing is that you can't remaster an instance by changing the viewName. You could change ~>master to the db object of the layout cellView, but there's a whole lot of things that you'd need to deal with, such as m-factor, iterated instances and many others which your simplistic approach won't handle.

    Andrew

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • skillLover
    skillLover over 1 year ago in reply to Andrew Beckett

    I  understand, i thought maybe something can be worked out, because the symbol which is copied by the dbcopyfig command to the layout, has all the necessary values , changing just viewname manually to layout works out. 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • skillLover
    skillLover over 1 year ago in reply to Andrew Beckett

    I  understand, i thought maybe something can be worked out, because the symbol which is copied by the dbcopyfig command to the layout, has all the necessary values , changing just viewname manually to layout works out. 

    • 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