• 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. Annotate symbol with design variables

Stats

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

Annotate symbol with design variables

ritterp
ritterp over 14 years ago

Hello,

I would like to add a label (by means of ILLabel guess) to the symbol whose value depends on global design variables. Let's imagine we had a symbol for a transmissionline segment consisting of a cap with value Par("C") and an inductor with value pPar("L"). When instantiating the cell we would set C=DESIGNVARIABLE_C and L=DESIGNVARIABLE_L. In the label I would like to see the result of ZW=sqrt(L/C), but values of the design variables (DESIGNVARIABLE_C and DESIGNVARIABLE_L) should be taken into accout. Is there any easy way to evaluate the expression sqrt(l/C) in SKILL? I have had a look at ael* functions to interpret expressions, but the parser seems to be unable to find out design variable values. I am using IC 5.1.41 with analog design environment for the global variables.

Thank you so much for your help,

 
Phil 

  • Cancel
Parents
  • ritterp
    ritterp over 14 years ago

    ... well one tiny problem remains. The method you proposed works well if the parameters of the cell are given directly (e.g. L=1pH,C=1fF) in the very same level in hierarchy- in this case iPar("L") returns the right value. In contrast, iPar("L") does not seem to be evaluated if L of the cell is defined as pPar("L")

    To sum up: this one works:

    bottom layer: L=1nH
                         C=1fF
                        ZW=sqrt(iPar("L")/iPar("C"))

    top layer: not applicable

    whereas this one does not: 

    bottom layer: L=pPar("L")
                          C=pPar("C")
                         ZW=sqrt(iPar("L")/iPar("C"))

    top layer: L=1pH
                     C=1fF

     

    Am I right if I assume that this is due to using the same identifier for the actual parameter and the name for the inherited one? Is there any solution to this (I would like to avoid to name them differently in each level of hierarchy a parameter is passed through)?

    Best regards,

    Philipp 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • ritterp
    ritterp over 14 years ago

    ... well one tiny problem remains. The method you proposed works well if the parameters of the cell are given directly (e.g. L=1pH,C=1fF) in the very same level in hierarchy- in this case iPar("L") returns the right value. In contrast, iPar("L") does not seem to be evaluated if L of the cell is defined as pPar("L")

    To sum up: this one works:

    bottom layer: L=1nH
                         C=1fF
                        ZW=sqrt(iPar("L")/iPar("C"))

    top layer: not applicable

    whereas this one does not: 

    bottom layer: L=pPar("L")
                          C=pPar("C")
                         ZW=sqrt(iPar("L")/iPar("C"))

    top layer: L=1pH
                     C=1fF

     

    Am I right if I assume that this is due to using the same identifier for the actual parameter and the name for the inherited one? Is there any solution to this (I would like to avoid to name them differently in each level of hierarchy a parameter is passed through)?

    Best regards,

    Philipp 

    • 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