• 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. P-Cell not enforcing parameter limits

Stats

  • Locked Locked
  • Replies 2
  • Subscribers 144
  • Views 13437
  • 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

P-Cell not enforcing parameter limits

jasons
jasons over 14 years ago

This is my first post to a Cadence forum, so please excuse me if it's posted to the wrong board.  I am encountering a situation where transistor p-cells are not enforcing minimum and maximum requirements on parmaters such as finger number and finger width.  Instead, when an illegal combination of those values is entered, there's a quiet little message in the CIW, but the cell is instantiated just the same, with the illegal values.  A callback solves the problem if and only if "apply" has not been selected, in which case the device does not revert to a legal set of values after a callback.

The p-cells are foundary provided, and compiled.  

Anything I can do to enforce the rules?

 thanks!

 

  • Cancel
Parents
  • Austin CAD Guy
    Austin CAD Guy over 14 years ago

    Often, the pcell code does not check the constraints on a variable. The pcell draws to whatever values are assigned to the instance. The pcell code may not know the values of the constraints (min or max for example) and therefore does not do the checking.

    The CDF interfaces to the pcell. It controls what is presented to the user in the editProperty form. When a value is entered into a field in the form, and the field loses focus (cursor is moved to another field or the user presses apply or OK), any callback on the field is executed. This is where the value should be checked. The value is then available to the pcell parameter.

    Check the CDF to find out the callbacks for the offending field. Dump the CDF to a file and find the callback for the field. You said that there is a message sent to the CIW, this may be what the callback does, not changing the value to a valid value.  You will have to file a bug with the PDK supplier so that this problem is fixed.

     Ted

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Austin CAD Guy
    Austin CAD Guy over 14 years ago

    Often, the pcell code does not check the constraints on a variable. The pcell draws to whatever values are assigned to the instance. The pcell code may not know the values of the constraints (min or max for example) and therefore does not do the checking.

    The CDF interfaces to the pcell. It controls what is presented to the user in the editProperty form. When a value is entered into a field in the form, and the field loses focus (cursor is moved to another field or the user presses apply or OK), any callback on the field is executed. This is where the value should be checked. The value is then available to the pcell parameter.

    Check the CDF to find out the callbacks for the offending field. Dump the CDF to a file and find the callback for the field. You said that there is a message sent to the CIW, this may be what the callback does, not changing the value to a valid value.  You will have to file a bug with the PDK supplier so that this problem is fixed.

     Ted

    • 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