• 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 cyclic parameter CDF

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 143
  • Views 16946
  • 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 cyclic parameter CDF

Rick Mattern
Rick Mattern over 6 years ago

Im trying to build a Rod based pCell that instantiates an existing PDK resistor and just want to add a nWell tap.   I got most of it working but need to add a cyclic parameter for   l & w   or    l & r  .  

What is the correct syntax?   ...this isnt the correct syntax.   
 
    cdfCreateParam( cdfId
      ?name      "entryMode
      ?prompt    "Entry Mode"
      ?defValue  "l & w"
      ?type       "cyclic"
      ?editable   "t"
      ?display    "t"      
        
 )

Anything special needed in the main source code?

Thanks!

  • Cancel
  • mbracht
    mbracht over 6 years ago

    Hi Rick,

    For a cyclic parameter you need to define choices in terms of the ?choices keyword parameter to cdfCreateParam(..).

    Max

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

    added the choices now I get

    cdfCreateParam( cdfId
    ?name                   "entryMode"
    ?prompt                 "Entry Mode"
    ?defValue               "r & w"
    ?type                   "cyclic"
    ?choices                '("r & w" "l & W")
    ?storeDefault           "yes"
    ?display                "t"
    ?parseAsNumber          "no"
    ?parseAsCEL             "no"

    ?callback "tsmc11pas_resCB()"
    )

    function showResParms redefined
    Generating Pcell for 'rpplus_3T layout'.
    *WARNING* Invalid property type - "l & w"
    *WARNING* Pcell evaluation failed. No supermaster was created.
    t
    *WARNING* (DB-270001): Pcell evaluation for pcell_lib/rpplus_3T/layout has the following error(s):
    *WARNING* (DB-270002): ("CCSdrawRes3T" 0 t nil ("*Error* CCSdrawRes3T: too few arguments (7 expected, 6 given)" (db:0x1865599a "2u" "10u" 1 700 t)))
    *WARNING* (DB-270003): Error kept in "errorDesc" property of the label "pcellEvalFailed" on layer/purpose "marker/error" in the submaster.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 6 years ago in reply to Rick Mattern

    Hi Rick,

    Those errors aren't coming from the CDF creation code. They're in your PCell code. The PCell knows nothing about cyclic parameters - it would just see these as string parameters.

    So It's unclear what where this "Invalid property type" is coming from - probably need to see what you've done at the top of the pcDefinePCell code. The second error causing the PCell evaluation failure is because you have a function with 7 arguments that you're calling with 6 - again, nothing to do with this issue.

    Kind Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Rick Mattern
    Rick Mattern over 6 years ago in reply to Andrew Beckett

    Hi Andrew - do cyclic parameters need any special handling?    The argument mismatch is not obvious what its looking for.  The PDK pCell is encrypted so Im working blind.   Any ideas on what to look for would be appreciated.

    Thanks!!!

    *WARNING* Invalid property type - "l & w

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 6 years ago in reply to Rick Mattern

    Hi Rick,

    No, there's nothing special needed for cyclic parameters. There's no such thing as a cyclic parameter as far as a pcell is concerned - that's a CDF construct, and the pcell itself knows nothing about the constraint to different choices.

    This all seems a bit strange, since a function being referred to here has the "CCS" (Cadence Customer Support) prefix so I wouldn't expect that to be encrypted and protected.

    Perhaps it would be best if you can contact customer support, and create a case - and then post the number here - also reference in the case this post that I'm happy to have it assigned to me. Then we can have a webex to look at this together. Bear in mind that I'm in the UK so our time zones may not easily overlap.

    Kind Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Rick Mattern
    Rick Mattern over 6 years ago in reply to Andrew Beckett

    Hi Andrew -  I have a ticket open and the AE has been very helpful but since its not a tool issue......   

    Case# 46349419 RE: rod pcell not passing parameters [ ref:_00Dd0c1Z9._5000V1Ho5sN:ref ]

    Heres some background.  The code is based upon a previous ROD-based pCell for a logic library which an CDS-AE helped me build, that's why it still has the CCS prefix.  The PDK is tsmc but I have very limited visibility since everything is encrypted and Im not very experienced with building pCells.   

    Working on this together would be amazing!!    Im here early in the morning PDST so hopefully we can find a convenient time for both

    THANKS!!!!!!

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