• 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. rodCreateRect subRectArray loop

Stats

  • Locked Locked
  • Replies 3
  • Subscribers 143
  • Views 13912
  • 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

rodCreateRect subRectArray loop

psill000
psill000 over 6 years ago

I am creating a stdcell pcell base layer cell and I am using the rodCreateRect function.

Is it possible to create a loop for the subRectArray so I can create a double or triple high stdcell without write another procedure. single high works as I want.

double high example of layers to stack

nplus_implant

pplus_implant

pplus_implant

nplus_implant

Paul

  • Cancel
  • mbracht
    mbracht over 6 years ago

    Hi Paul,

    I don't think this is possible with rodCreateRect(). Alternatively you might use rodCreatePath() with the ?subRect argument. That lets you define any number of sub pathes - here's an example:

    (rodCreatePath ?cvId cv ?layer "metal1" ?pts (list 0:0 0:12)
         ?subRect (list
             (list ?layer "via1")
             (list ?layer "via2")
         )
    )

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • psill000
    psill000 over 6 years ago in reply to mbracht

    I can do multiple subRect also, but I was looking for a way to create a loop of the different layers for a two or more high stdcell.

    Example:

    ?subRect list(
                list(?layer "lpp1")

                list(?layer "lpp2")

                list(?layer "lpp3")

                list(?layer "lpp3")

                list(?layer "lpp2")

                list(?layer "lpp1")

           )

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • mbracht
    mbracht over 6 years ago in reply to psill000

    well you could use "foreach mapcar" to get the list of sublists required for ?subRectArray:

    ?subRectArray (foreach   mapcar   layer   '("metal1" "metal2" "metal3")     (list '?layer layer))

    Is this what you were looking for?

    Max

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