• 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. Pcell Parameter based on other component parameters

Stats

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

Pcell Parameter based on other component parameters

tesla07
tesla07 over 7 years ago

I created a pcell which is basically a layout artwork on different layers so 'M1' is an artwork on layer M1, similarly I have it for M2 ... M7 and the artwork on a certain layer turns on based on component parameters (Boolean type).

Now since this artwork is repeated many times in layout, I want to create another parameter (basically a Tag) which is based on all other parameters so that I can search a pcell with certain selection of parameters (say M1 and M2 only). I don't know how to do this, best option i can think of is a CDF parameter but then again can I write a if statement in Default value section (string type component parameter) to return a string. Something like if M1 and M2 are selected I should get a Tag like "M1_M2"

Please suggest how to do this.

  • Cancel
  • skillUser
    skillUser over 7 years ago

    You can use rodNameShape() or rodNameObject() to assign a ROD name to an object or shape, and then this can be queried either in the PCell, or on PCell instances, looking 'inside' the instance. You might find this link helpful. I'm not too clear on what you are trying to do but this is one way to 'tag' an object or shape.

    Best regards,
    Lawrence.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • tesla07
    tesla07 over 7 years ago
    Thanks for your reply Lawrence, Let me explain the problem in detail.

    I have created a pcell with 13 boolean Parameters, 1 for artwork in every layer (say from layer M1 ---- layer M7 + layer V1 ---- layer V6). So when I check M1, the artwork for M1 shows up and when I check M1 and M2, the artwork on layer M1 and M2 shows up. This way I can make many artwork for all possible combination. Now in my layer this cell with multiple artwork is present and I want to be able to select them using search tool. lets say my top layout has pcell with both M1+M2 checked along with pcell with just M1 parameter checked. Now I want to be able to search and select only M1+M2 and not the one with M1. As per my understanding I need to create another parameter with string output based on the parameters being selected (checked) so if M1+M2 is selected, I should get a string output something like m1_m2.

    Also I created the pcell using "Conditional inclusion" in Pcell plugin.

    I will look into the use of rodNameShape() and rodNameObject()
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 7 years ago
    Can't you use use Tools->Find in the layout editor, select "inst" and then add criteria to look for each parameter name that you are looking for (search for the property on the instance) being "t". Not sure why you'd need to create this artificial string parameter with the values concatenated.
    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • tesla07
    tesla07 over 7 years ago
    Thanks for the suggestion Andrew, I know this is also a possibility but in my case there are many instances of this pcell with different configuration on my top cell and I want make it easy to use, cause adding 14 statement in Find/Replace window would take a lot of time.

    For example, in case I want to select the pcell with just M1and M2 checked, I will have to add statement for each parameter, cause there might be some cells with M1,M2 and another parameter (say M3 or more) checked. They will also be selected by Find/Replace tool.
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 7 years ago

    Hi Amit,

    The problem is, computing this new parameter won’t help you with existing instances. There are a couple of ways you could generate the property:

    1. In the pcell code you could add a cellView property with the concatenated layer names somehow. However, the Tools->Find menu won’t find that property - so this doesn’t help.
    2. In a CDF callback you could set this other parameter - and then it would be on the instance (and would be searchable). The problem is, that won’t happen for any existing instances - you could get around that by calling the CDF callbacks using CCSinvokeCdfCallbacks or abInvokeCdfCallbacks - you should be able to find that code around somewhere on these forums or on Cadence Online Support.

    Regards,

    Andrew.

    • 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