• 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. Update cyclic CDF parameters in callback

Stats

  • Locked Locked
  • Replies 1
  • Subscribers 143
  • Views 14748
  • 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

Update cyclic CDF parameters in callback

patschouly
patschouly over 5 years ago

I have a cell with several CDF parameters, where some of the cyclic fields have varying options (depending on other CDF parameters). I'm updating them within callbacks, which currently does not really work. I'm changing the choices based on a few cases, but I get a warning (*WARNING* Form 'schObjPropForm', field 'serialnum': Bad value "none" Cyclic value must be one in the list of choices.) and the pcell is not updated (I'm changing the symbol based on these parameters).

Here is the callback:

procedure(msclab_cable_callback(what)
    let(
        (
            (cablelength (car (setof param cdfgData~>parameters param~>name == "cablelength")))
            (connector (car (setof param cdfgData~>parameters param~>name == "connector")))
            (partnum (car (setof param cdfgData~>parameters param~>name == "partnum")))
        )
        partnum->choices = case(connector->value
            ("foo" list("123456" "98765"))
            ("bar" list("none"))
        )
        partnum->value = case(connector->value
             ("foo"  "123456")
             ("bar" "none")
        )
    )
)

In the pcell I of course define the CDF parameters, the CDF callback is also properly triggered.

What am I doing wrong?

Kind regards,

Patrick

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 5 years ago

    Hi Patrick,

    There's a CCR for this warning - 1796076. From my quick experiments it actually works, it's just this spurious warning that's an issue. A colleague has written an article with a rather complicated workaround (not published yet because it's hard to understand) but having reviewed it, it doesn't really do what you want (and I don't think it's very useful either because of a serious limitation in the approach taken - so I won't repeat it here).

    So for now, you probably need to just live with the warning, but you could contact customer support and ask for a duplicate CCR to be filed.

    Regards,

    Andrew.

    • 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