• 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. How to run dbOpenCellViewByType in ocean mode?

Stats

  • Locked Locked
  • Replies 11
  • Subscribers 143
  • Views 19146
  • 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

How to run dbOpenCellViewByType in ocean mode?

Reinice
Reinice over 12 years ago

Hi All,

Good Day.

I just want to ask how can I run dbOpenCellViewByType in ocean mode? Meaning, I don't want to load my SKILL or OCEAN file having dbOpenCellViewByType function in GUI mode? How can I run this in ocean mode? Because I' am having errors such as below when I run it in ocean mode:

*WARNING* (GE-2106): noname failed because there is no window assigned to cellview id db:0x152fcf92 (myLibrary/myCell/myView). Make sure the cellview is opened in a valid graphic editor window.

Thank you very much in advance.

Regards,

Reinice

  • Cancel
  • skillUser
    skillUser over 12 years ago

    Hi Reinice,

    Which version are you using? In IC61x "ocean" is really the same as virtuoso, and so dbOpenCellViewByType is available to use in an ocean session.  However, the warning that you note does not appear to be directly from dbOpenCellViewByType, since this opens a cellview non-graphically in virtual memory, with no need for, or reference to a window.  Can you share the context of dbOpenCellViewByType in your code so that we can see where the warning might be coming from?

    Best regards,

    Lawrence.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Reinice
    Reinice over 12 years ago

    Hi Lawrence,

    I 'am using version IC6.1.5.500.132

    Here is the context of my dbOpenCellViewByType:

    dbOpenCellViewByType(my_lib my_cel "schematic" "" "a")

    Thanks and Regards,

    Reinice

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Reinice
    Reinice over 12 years ago

    Hi Lawrence,

    How can I determine the contextId of cellview in dbOpenCellViewByType?

    Thanks and Regards,

    Reinice

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

    Reinice,

    The contextId argument is obsolete - it's still there for compatibility with older releases which did support this (that said, I never used it even in the past).

    The only explanations I can think of for the "ge" warning is that you either have some dd triggers (registered with ddRegTrigger) which are doing something on data load, or that there's a pcell in your design which is using an inappropriate function.

    Unfortunately it's not that straightforward to figure out where a warning comes from.

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Reinice
    Reinice over 12 years ago

    Hi Andrew,

    Is there another way where I can run my SKILL file in ocean session and not encountering warnings just like mentioned above?

    When I run my SKILL file in CIW I' am not encountering such warnings.

    Here is the flow of my SKILL file:

    1. I open a cellview using dbOpenCellViewByType

    2. I instance the Circuit Under Test(ex. Bandgap) in the cellview I just opened using dbCreateInst.

    3. I instance the stimulus(ex. vsource, vpwl, gnd) needed to test the Circuit Under Test using also dbCreateInst.

    4. I wire the stimulus and Circuit Under Test using schCreateWire.

    Thanks and Regards,

    Reinice

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

    Hi Reinice,

    You can force the warnings to be swallowed by redirecting woport somewhere else. For example:

    woport=outfile("/dev/null")

    You may be able to call getWarn() after the call which generates the warning - but I still don't understand why you are getting this warning from dbOpenCellViewByType().

    Regards,

    Andrew.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Reinice
    Reinice over 12 years ago

    Hi Andrew,

    Actually I' am not really sure if it is dbOpenCellViewByType that's causing the warning.

    I' am just wondering why my SKILL file runs ok in CIW(cellview that will be open by dbOpenCellViewByType must be open) and when I run it in ocean session and in CIW(cellview is not opened), it is creating warnings such as above.

    Is there a need for a cellview to be opened in a valid graphic editor window for dbOpenCellViewByType to function properly?

    Are there any alternatives not requiring for a cellview to be opened?

    Thanks and Regards,

    Reinice

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

    Reinice,

    There is absolutely no need for there to be a graphic window available to use dbOpenCellViewByType - it's completely below the GUI layer.

    It's possible that some of your sch.* functions might have a UI dependency - it depends on what you're doing. Even then, I'm slightly surprised... How are you doing the check-and-save?

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Reinice
    Reinice over 12 years ago

    Hi Andrew,

    Here are the list of the sch* functions I've used and it's context:

    1. schSelectAllFig(cvId)

    2. schHiDelete()

    3. schCreateWire(cvId "route" "full" list(mydx:mydy mydx_CUT:mydy_CUT) 0.0625 0.0625 0.0)

    4. schCreatePin(cvId inputCVId inst_net2 mytype nil mydx:mydy "R0")

    5. schCheck(cvId)

    Where:

    cvId = dbOpenCellViewByType(my_lib my_cell "schematic" "" "a")

    inputCVId = dbOpenCellViewByType("basic" "ipin" "symbol" "" 'r)

    inst_net2 = net of the terminal

    my_type = "input" or "output"

    a. How can I know if a sch* function is UI dependent? If it is UI dependent, are there any counter part that does not require UI dependecy? I want my SKILL file to run in ocean session and not only in CIW(requiring cellview to be opened).

    b. This is how I do check and save:

    schCheck(cvId)

    dbSave(cvId)

    Are there any alternatives to do check and save using SKILL?

    Thanks and Regards,

    Reinice

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 12 years ago
    Hi Reinice,

    The problem is schSelectAllFig because selection is a graphics editor capability. There's no concept of selection without the user interface.

    If I do this in the CIW (without a corresponding schematic window open):

    cv=dbOpenCellViewByType("mylib" "mycell" "schematic" "" "a")
    schSelectAllFig(cv)

    Then I get exactly the same warning message you are getting.

    schHiDelete will also be a problem.

    For the most part any schHi function is not batch-friendly - the "Hi" indicates a user-interface function. It's less obvious about schSelectAllFig, but as I said, selection is a UI concept.

    However, it appears you are trying to select all objects and delete them at the beginning. If that's the case, then just call dbOpenCellViewByType with "w" as the fifth argument instead of "a" - it will then overwrite (erase) the contents rather than appending, and you'll start with an empy schematic.

    The other functions you are using should be OK.

    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