• 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 Design
  3. Is it possible to hide instances?

Stats

  • Locked Locked
  • Replies 3
  • Subscribers 125
  • Views 8771
  • 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

Is it possible to hide instances?

Purbayan
Purbayan over 3 years ago

For example I am having a schematic with 10 instances and as we know when we press f it fits the whole schematic to the window, Now what if I add few more instances on the existing schematic but when i press f instead of fitting the whole schematic with extra instances i want to fit the original schematic with 10 instances.

Those extra instances are required for simulation purpose, i cannot disable them. 

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

    No, this is not possible.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Purbayan
    Purbayan over 3 years ago in reply to Andrew Beckett

    Is it possible to do something with skill code like using the bBox of the original schematic and assign a key combo, so when that key combo is pressed it only fit that part of that schematic

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 3 years ago in reply to Purbayan

    One approach would be to use Create->Note-Shape, pick "rectangle" as the shape type and draw a box in the region you want to zoom to. Then load this code that I just wrote as an example:

    /* abZoomToTextLayer.il
    
    Author     A.D.Beckett
    Group      Custom IC (UK), Cadence Design Systems Ltd.
    Language   SKILL
    Date       Jul 13, 2022 
    Modified   
    By         
    
    Allow you to draw a box (using Create->Note->Shape) on the schematic, and then
    you can use this function to zoom to fit all such note shapes
    
    ***************************************************
    
    SCCS Info: @(#) abZoomToTextLayer.il 07/13/22.15:59:26 1.1
    
    */
    
    /************************************************************************
    *                                                                       *
    * abZoomToTextLayer(@optional (win hiGetCurrentWindow()) (enlarge 1.1)) *
    *                                                                       *
    *           Zoom to fit the drawn text layer on a schematic.            *
    *                                                                       *
    ************************************************************************/
    
    procedure(abZoomToTextLayer(@optional (win hiGetCurrentWindow()) (enlarge 1.1))
      let((textLP bBox (cv geGetEditCellView(win)))
        textLP=car(exists(LP cv~>lpps LP~>layerName=="text" && LP~>purpose=="drawing"))
        ;--------------------------------------------------------------------
        ; Find the overall bounding box of the text layer (if present) or the 
        ; whole cellView otherwise, and enlarge by the factor given (to add the usual
        ; 10% margin around the outside)
        ;--------------------------------------------------------------------
        bBox=
          if(textLP~>shapes then
            destructuringBind(((ollx olly) (ourx oury)) car(textLP~>shapes)~>bBox
              foreach(shape cdr(textLP~>shapes)
                destructuringBind(((llx lly) (urx ury)) shape~>bBox
                  ollx=min(ollx llx)
                  olly=min(olly lly)
                  ourx=max(ourx urx)
                  oury=max(oury ury)
                )
              )
              list(ollx*enlarge:olly*enlarge ourx*enlarge:oury*enlarge)
            )
          else
            destructuringBind(((ollx olly) (ourx oury)) cv~>bBox
              list(ollx*enlarge:olly*enlarge ourx*enlarge:oury*enlarge)
            )
          )
        hiZoomIn(win bBox)
      )
    )
    

    and you could then put abZoomToTextLayer() on a bindkey. If you call the function, it will zoom to the overall bounding box of the text layer (the layer used for notes in the schematic editor) and if not present it will zoom to the whole cellView.

    Andrew

    • Cancel
    • Vote Up +2 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 3 years ago in reply to Purbayan

    One approach would be to use Create->Note-Shape, pick "rectangle" as the shape type and draw a box in the region you want to zoom to. Then load this code that I just wrote as an example:

    /* abZoomToTextLayer.il
    
    Author     A.D.Beckett
    Group      Custom IC (UK), Cadence Design Systems Ltd.
    Language   SKILL
    Date       Jul 13, 2022 
    Modified   
    By         
    
    Allow you to draw a box (using Create->Note->Shape) on the schematic, and then
    you can use this function to zoom to fit all such note shapes
    
    ***************************************************
    
    SCCS Info: @(#) abZoomToTextLayer.il 07/13/22.15:59:26 1.1
    
    */
    
    /************************************************************************
    *                                                                       *
    * abZoomToTextLayer(@optional (win hiGetCurrentWindow()) (enlarge 1.1)) *
    *                                                                       *
    *           Zoom to fit the drawn text layer on a schematic.            *
    *                                                                       *
    ************************************************************************/
    
    procedure(abZoomToTextLayer(@optional (win hiGetCurrentWindow()) (enlarge 1.1))
      let((textLP bBox (cv geGetEditCellView(win)))
        textLP=car(exists(LP cv~>lpps LP~>layerName=="text" && LP~>purpose=="drawing"))
        ;--------------------------------------------------------------------
        ; Find the overall bounding box of the text layer (if present) or the 
        ; whole cellView otherwise, and enlarge by the factor given (to add the usual
        ; 10% margin around the outside)
        ;--------------------------------------------------------------------
        bBox=
          if(textLP~>shapes then
            destructuringBind(((ollx olly) (ourx oury)) car(textLP~>shapes)~>bBox
              foreach(shape cdr(textLP~>shapes)
                destructuringBind(((llx lly) (urx ury)) shape~>bBox
                  ollx=min(ollx llx)
                  olly=min(olly lly)
                  ourx=max(ourx urx)
                  oury=max(oury ury)
                )
              )
              list(ollx*enlarge:olly*enlarge ourx*enlarge:oury*enlarge)
            )
          else
            destructuringBind(((ollx olly) (ourx oury)) cv~>bBox
              list(ollx*enlarge:olly*enlarge ourx*enlarge:oury*enlarge)
            )
          )
        hiZoomIn(win bBox)
      )
    )
    

    and you could then put abZoomToTextLayer() on a bindkey. If you call the function, it will zoom to the overall bounding box of the text layer (the layer used for notes in the schematic editor) and if not present it will zoom to the whole cellView.

    Andrew

    • Cancel
    • Vote Up +2 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