• 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. Open config view schematic through skill

Stats

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

Open config view schematic through skill

markbeck
markbeck over 14 years ago

 I'm trying to figure out how to open a config view schematic.

I can use deOpenCellView("Lib" "cell" "config" "config"), but that gives me a popup which I then have to click 'ok' before the config schematic opens.

I can use hiFormDone(hiGetCurrentForm()) to make the popup go away, but it's causing me scripting headaches and it's quite kludgey. I'd much rather directly open the config schematic.

deOpen and geOpen give me similar behavior.

Does anyone out there know how to do this?

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 14 years ago

    The trick is the configL slot in the fileSpec argument to deOpen. For example:

    /*******************************************************************************
    *  DISCLAIMER: The following code is provided for Cadence customers to use at  *
    *   their own risk. The code may require modification to satisfy the           *
    *   requirements of any user. The code and any modifications to the code may   *
    *   not be compatible with current or future versions of Cadence products.     *
    *   THE CODE IS PROVIDED "AS IS" AND WITH NO WARRANTIES, INCLUDING WITHOUT     *
    *   LIMITATION ANY EXPRESS WARRANTIES OR IMPLIED WARRANTIES OF MERCHANTABILITY *
    *   OR FITNESS FOR A PARTICULAR USE.                                           *
    *******************************************************************************/
    
    procedure(abOpenConfiguredSchematic(confLib confCell confView mode)
      let((hdb libName cellName viewName fileSpec)
        ;--------------------------------------------------------------------
        ; Find the top view from the config
        ;--------------------------------------------------------------------
        hdb=hdbOpen(confLib confCell confView mode)
        libName=hdbGetTopLibName(hdb)
        cellName=hdbGetTopCellName(hdb)
        viewName=hdbGetTopViewName(hdb)
        hdbClose(hdb)
        ;--------------------------------------------------------------------
        ; Build the filespec for deOpen
        ;--------------------------------------------------------------------
        fileSpec=list(nil)
        fileSpec->libName=libName
        fileSpec->cellName=cellName
        fileSpec->viewName=viewName
        fileSpec->accessMode=mode
        fileSpec->configL=list(confLib confCell confView mode)
        deOpen(fileSpec)
      )
    )
    
    

    You'd call this function with the name of the config view, and it will open the top level schematic using that config.

    Best Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • markbeck
    markbeck over 14 years ago

     Excellent. I thought I had tried using the configL in the fileSpec before, but I must have done something wrong.

    I had just found another 'kludgy' way to get a similar results, before checking the website:

    w_window = hiOpenWindow()
    geOpen(?window w_window ?lib t_lib ?cell t_cell ?view "schematic" ?viewType "schematic")
       when( hdbIsConfig(t_lib t_cell "config")            
          h_config = hdbOpen(t_lib t_cell "config" "r")                      
          deSetConfigId(w_window h_config) ; set window's config
       ); when       

    But your method is more what I was looking for.

    Thanks!

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • rajeshcad
    rajeshcad over 14 years ago

    Andrew,

    You would like to put this SKILL code in a solution if not already..

    Rajesh

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 14 years ago
    Rajesh,

    Will do.

    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