• 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. Hierarchy tree in SKILL from normal schematic, config based...

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 143
  • Views 18613
  • 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

Hierarchy tree in SKILL from normal schematic, config based schematic and layout

skillprogramme
skillprogramme over 12 years ago

Hi!

I am working on some code to return the hierarchy below a given cell, irregardless of the cell being a layout or schematic and irregardless of the eventual schematic being normal or config based. In the solution provided by Cadence (linked at end of post), this is done through GUI forms. I would however like to do everything in SKILL, without any open window sessions (other than CIW). 

In the solution it is checked if the schematic has a config view by calling deGetConfigId with window_id as argument. As I would like to do everything from SKILL, I need some other function to do this. Is it any function that can return if a schematic has a related config?

As well, the solution states that normal schematic (and thus layout) trees (no related config, that is) can be printed in non-GUI mode by invoking CCSschTree directly from CIW. It does not say anything about it being possible to call the config based equivalent CCShdbSchTree from CIW. Would it be possible to do this and if not, why?

Cheers,
Max
 

Related Cadence solution:
https://support.cadence.com/apex/homePage 

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    Hi Max,

    You can blame the author of the solution (it was me...) for not including that example in the text - that's mainly because the solution originally dates from before I added config support back in 2006). It does however mention the function in the comments at the top of the code - as a perfectly acceptable function to call from SKILL. So yes, you can do that.

    You call it with the lib/cell/view of the config view. If you've opened a config view (along with the configured schematic), then you can get the "hdb" handle using deGetConfigId as you've seen. You can then use:

    hdb=deGetConfigId(hiGetCurrentWindow())
    confLib=hdbGetLibName(hdb)
    confCell=hdbGetCellName(hdb)
    confView=hdbGetViewName(hdb)

    which will get you the lib/cell/view of the config view associated with that configured schematic.

    I suspect that you're asking for a way to do this without opening the schematic. Actually what you're opening graphically is the configured schematic - you tell it the config view, and from that it knows the top lib/cell/view and shows you the schematic.

    However, if  you just open a schematic directly (either graphically or with dbOpenCellViewByType()), you cannot know which config is "related". The schematic doesn't have info about related configs - because there could be 10 different config views  for the same top schematic. It's the other way around - the config says which schematic it is configuring.

    So you can call this function with the lib/cell/view of a config that you want to use.

    Note that the version of the code in the solution doesn't support layout views - only schematic. I have a newer version (version 1.9; the version on the support site is 1.5) which supports layout views as well. I'll get it uploaded (once I've sorted out a permission problem).

    Kind Regards,

    Andrew

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

    Hi Max,

    You can blame the author of the solution (it was me...) for not including that example in the text - that's mainly because the solution originally dates from before I added config support back in 2006). It does however mention the function in the comments at the top of the code - as a perfectly acceptable function to call from SKILL. So yes, you can do that.

    You call it with the lib/cell/view of the config view. If you've opened a config view (along with the configured schematic), then you can get the "hdb" handle using deGetConfigId as you've seen. You can then use:

    hdb=deGetConfigId(hiGetCurrentWindow())
    confLib=hdbGetLibName(hdb)
    confCell=hdbGetCellName(hdb)
    confView=hdbGetViewName(hdb)

    which will get you the lib/cell/view of the config view associated with that configured schematic.

    I suspect that you're asking for a way to do this without opening the schematic. Actually what you're opening graphically is the configured schematic - you tell it the config view, and from that it knows the top lib/cell/view and shows you the schematic.

    However, if  you just open a schematic directly (either graphically or with dbOpenCellViewByType()), you cannot know which config is "related". The schematic doesn't have info about related configs - because there could be 10 different config views  for the same top schematic. It's the other way around - the config says which schematic it is configuring.

    So you can call this function with the lib/cell/view of a config that you want to use.

    Note that the version of the code in the solution doesn't support layout views - only schematic. I have a newer version (version 1.9; the version on the support site is 1.5) which supports layout views as well. I'll get it uploaded (once I've sorted out a permission problem).

    Kind Regards,

    Andrew

    • 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