• 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. Mixed-Signal Design
  3. vsource will not accept expressions in its parameters

Stats

  • Locked Locked
  • Replies 2
  • Subscribers 64
  • Views 8114
  • 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

vsource will not accept expressions in its parameters

NewScreenName
NewScreenName over 3 years ago

Hi all,

I am trying to generate a signal as a sum of sinusoids whose frequencies are linear combinations of four parameters (f1, f2, f3, f4). In the first picture you can see how I set it up.

However at the time of running the simulation, the error shown in the second picture appears. So it looks to me like the issue is that vsource will not accept expressions as frequencies and amplitudes? Is there any way to have it working this way without me having to manually calculate and insert the new set of frequencies everytime I change one of the f1,f2,f3,f4 parameters?

Thank you very much

Best regards

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 3 years ago

    This is because of a quirk with the Spectre language - expressions inside vectors have to be surrounded by parentheses. In the Virtuoso version I'm using (IC6.1.8 ISR27) the frequencies do get netlisted with parentheses around the expressions, but the amplitudes don't - so change to: (0.5*Ain/Ntones) . Check the netlist - if the frequency expressions are not in the version you're using (I wonder if they are not, because the errors you get are slightly different), try adding parentheses around each of the frequency expressions.

    I think we need to fix the netlisting of this component to put parentheses around the amplitude expressions automatically.

    Andrew 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 3 years ago

    This is because of a quirk with the Spectre language - expressions inside vectors have to be surrounded by parentheses. In the Virtuoso version I'm using (IC6.1.8 ISR27) the frequencies do get netlisted with parentheses around the expressions, but the amplitudes don't - so change to: (0.5*Ain/Ntones) . Check the netlist - if the frequency expressions are not in the version you're using (I wonder if they are not, because the errors you get are slightly different), try adding parentheses around each of the frequency expressions.

    I think we need to fix the netlisting of this component to put parentheses around the amplitude expressions automatically.

    Andrew 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
  • NewScreenName
    NewScreenName over 3 years ago in reply to Andrew Beckett

    Perfect, now it's working correctly, thank you!

    • 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