• 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 Design
  3. Cadence Variables setup

Stats

  • Locked Locked
  • Replies 1
  • Subscribers 126
  • Views 18868
  • 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

Cadence Variables setup

AllenD
AllenD over 8 years ago

Hi team

I have a quick question concerning variable design in cadence. I am an experienced ADS user but new to Cadence. I realized a major difference between ADS and Cadence concerning variable setup.

In ADS, the variables are built in with the circuit so if I design a localized circuit with variables (for example, a LNA, a mixer, a filter, with a few variables of the size of the transistors, cap value etc), I can just create a symbol of each of the localized cell and use it as a part of a bigger circuit directly (as for a whole receiver) and all the variables will not interfere with each other even though they have the same name.

But when I am trying to design in Cadence, the variables are built in with ADE simulation environment. Hence, when I did the same thing as I did with ADS:

1. design the localized cell of independently ( LNA, filter, mixer)

2.Incorporate the LNA etc. into the receiver. But when I launch ADE, all the variables popped up and non of them have any values.

Do I have to re-enter all the variable values?

Is there any way around it?

Thanks

  • Cancel
  • drdanmc
    drdanmc over 7 years ago
    If I understand correctly, you have done something like the following

    - create LNA with a capacitor that has value "C_VAL", sweep or otherwise optimize the numeric value in simulation
    - create a filter with a capacitor also with a value "C_VAL" (or maybe you used unique names like C_VAL_MIXER)
    - instantiate your LNA and filter into a higher level cell and go to simulate and find no defaults for those variables and possibly a conflict (sorry, I wasn't quite sure on your post) between C_VAL in the LNA and C_VAL in the mixer

    Is that more or less accurate?

    Those design variables are indeed global so if you use C_VAL in different blocks, they'll get the same numerical value.

    If you are trying to parametrize a cell, for example, I have a LC filter schematic that I use sometimes in test benches that has a parameterized bandwidth, then use pPar("VARIABLE_NAME") instead of VARIABLE_NAME. For example, I might have a capacitor with value pPar("C_VAL") or maybe an equation like 0.25/pPar("BW"). Now you set the value of these parameters on the instances of your cell. So for example, I instantiate my filter, query it, and set C_VAL or BW. You'll want to read about CDF parameters and how to add/edit them. In the virtuoso window (CIW window), Tools->CDF->Edit and you can click the help button there. Short answer is you want Scope=cell, CDF Layer=base, pick the lib/cell and define your parameters. You can put in defaults so as you instantiate in a higher level, you don't have to put numbers back in if you don't want to.

    That is how to get a cell that is parameterized.

    The other thing to be aware of is in ADE after you copy variables from cellview and put in values, you can then copy variables to cellview.

    All this said, I don't keep things parameterized by the time my schematics are ready for layout because unless you have done the layout as a pcell, you will only have a fixed layout to try and go with your variable schematic which is problematic.

    Hope this pushes you in the right direction.
    -Dan
    • 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