• 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. not able to create via in clone

Stats

  • Locked Locked
  • Replies 11
  • Subscribers 144
  • Views 17029
  • 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

not able to create via in clone

Gurup
Gurup over 11 years ago

Hi 

  I am trying to create via inside clone using the command dbCreateVia(cell_id obj_id obj_origin obj_orient v_params)

Inside clone, but it is creating in the cellview not inside the clone.

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 11 years ago

    You have to call dbAddFigToFigGroup afterwards to add it into the fig group. All objects inside a figGroup are really in the cellView - but have to be tagged as being part of the figGroup.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Gurup
    Gurup over 11 years ago

    Andrew,

      It worked for cells not clones. Please check it

    geSelectObject(dbCreateVia(cell_id obj_id obj_origin obj_orient v_params))
    groupId=leGetEditFigGroup()
    fiId=geGetHilightObjectFigId()
    dbAddFigToFigGroup(groupId figId)

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 11 years ago

    You don't want to be using geGetHilightObjectFigId, because it's not highlighted, it's selected. Also that function requires an argument, which is a highlight object.

    So you could do:

    figId=dbCreateVia(cell_id obj_id obj_origin obj_orient v_params)
    groupId=leGetEditFigGroup()
    dbAddFigToFigGroup(groupId figId)

    Regards,

    Andrew.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Gurup
    Gurup over 11 years ago

    Greate  Andrew, it works

    thanks

    Regards

    Guru

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Adrian Nistor
    Adrian Nistor over 9 years ago

    Hi,

    But how to proceed if you are NOT editting the group ? [only from skill]

    something like the following is not working because it's saying that it doesn't pass the family consistency check, and the clone is immediately removed from the family:

    cloneFigGroupId = ...getMySelectedFigGroupWhichIsASyncClone()

    dbAddFigToFigGroup(cloneFigGroupId  figId)

    ?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    I don't really understand what you're trying to do here - not really enough context to your question (and appended to a very old thread, which the forum guidelines ask you not to do).

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Adrian Nistor
    Adrian Nistor over 9 years ago

    Hi Andrew,

    Should I start a new topic?

    I was trying to ask: How to add an object/instance/via/anything to a clone using skill ? 

    [The previously mentioned solution involves that the user interface has to be used, e.g.: double click the clone group in order to enter the edit mode. I want to use only skill, dbOpenCellViewByType, identify the clones, and add an object inside (inside all, of course) ]

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    Hi Adrian,

    Now that you've done it here, let's keep it here. I could split the posts, but there's a risk it might break.

    Anyway, what you need to do is this, assuming you have the figGroup in a variable called (say) figGroup:

    envSetVal("layoutXL" "disableVXLSynchClonePopUp" 'boolean t)
    leSetEditFigGroup(figGroup)

    this will push the edit in place into the fig group, and the first line will stop the popup appearing asking you if you're OK with editing the synchronous clone.

    Having done that, Layout XL will take care of synchronising the clones. Note this will only work if you're actually in Layout XL at the time, but it avoids the need for you to interactively have to edit anything.

    You can use leReturn() to pop back out of the edit in place.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Adrian Nistor
    Adrian Nistor over 9 years ago

    Hi Andrew,

    Thanks for the reply, It's nice to find out about these functions (especially the disableVXLSynchClonePopUp :p )

    But I understand & suppose, from the same reply, that only from skill (so no window opened... e.g. virtuoso -nograph) it's not possible to update the content of a clone.

    I was also wandering how could I create a clone inside a cvId (so no window available), but I suppose it's more problematic to do it because it might conflict with the fact that sync clone is available only in layoutXL .

    Thank you,

    BR,

    Adrian

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    Hi Adrian,

    There are a whole bunch of "lx" functions that allow you to perform functions in VLS XL without needing the windows open. For example, lxRunCmdInVXL. Search in cdsFinder for "^lx".

    There will be a function from IC617 ISR1 (due out soon) called lxCreateSynchronousClonesFromFigGroups which will allow you to create synchronous clones. There isn't anything in current releases though (other than trying to reverse engineer all the setup, which I wouldn't recommend, and I've not tried).

    Regards,

    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