• 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. Optimal (fast) callback for pcells

Stats

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

Optimal (fast) callback for pcells

Vasili
Vasili over 16 years ago

 What is the optimal (fast) callback procedure for pcells?

For example, I have a pcell that draws a shape that has a resistance. The value of the resistance is calculated inside pcell. I need to know the resistance of the instance, for example, to create another resistorwith a predefined total resistance. Is CDF callback the best solution or it could be avoided?

I even not sure that "callback" is the correct term. I simply want to know the numerical value of a local variable that has been used inside pcell to execute dbCreatePCell or rodCreatePCell.For example, I can creare a handle and assign to this handle the numeric value of my parameter and then get its value from the instance by using get ...handle. But maybe there is a "recommended" solution?.

Vasili 

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

    Hi Vasili,

    It sounds as if duplicating the code in a CDF callback is not a good idea. You could do several things:

    1. Get your pcell to add a label with the value of the resistance displayed. 
    2. Store it as a cellView property on the generated subMaster - then you could do geGetSelSet()~>master~>resVal (assuming the property was called resVal) to find it.
    3. Store it as a ROD handle, as you've suggested.

    The alternative is to perform the same calculation inside a CDF callback. My views on CDF callbacks for computing values are fairly well known (see sourcelink solution 11223092 on the Dangers of CDF Callbacks), but provided that this is used for estimation only, it's reasonable. That said, the advantage of getting the pcell to output it is that you know it's up to date.

    Regards,

    Andrew.

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

    Hi Vasili,

    It sounds as if duplicating the code in a CDF callback is not a good idea. You could do several things:

    1. Get your pcell to add a label with the value of the resistance displayed. 
    2. Store it as a cellView property on the generated subMaster - then you could do geGetSelSet()~>master~>resVal (assuming the property was called resVal) to find it.
    3. Store it as a ROD handle, as you've suggested.

    The alternative is to perform the same calculation inside a CDF callback. My views on CDF callbacks for computing values are fairly well known (see sourcelink solution 11223092 on the Dangers of CDF Callbacks), but provided that this is used for estimation only, it's reasonable. That said, the advantage of getting the pcell to output it is that you know it's up to date.

    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