• 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. "valueAt" vs "value" functions

Stats

  • Replies 1
  • Subscribers 125
  • Views 357
  • Members are here 0

"valueAt" vs "value" functions

mikewu999
mikewu999 4 months ago

I need a Skill function that will return the value of a waveform at a specified time. There seem to be two choices: the Ocean function "value" and the ViVA function "valueAt". From the documentation the differences seem to be:

  • Interpolation: The Ocean manual explicitly says that "value" does interpolation and provides an option for interpolation type. The ViVA Skill manual doesn't mention interpolation for "valueAt". Does "valueAt" do interpolation?
  • Extrapolation: "valueAt" can optionally do extrapolation. What happens with "value" if I specify a timepoint past the end of the simulation?
  • Options: "value" has a lot more options and can return multiple values in a waveform as well as single values. "valueAt" seems to support only single return values.

What is the best practice regarding which function to use in the case where I only want the simple interpolated value Y at time X? Does it matter? Is one more computationally efficient or do they both call the same underlying function?

  • Sign in to reply
  • Cancel
  • Andrew Beckett
    Andrew Beckett 4 months ago

    Some answers:

    • Yes, valueAt interpolates. It doesn't give the type of interpolation though (it's intended to be a simpler interface). The documentation should make this clear, I agree. Perhaps you can use the "feedback" buttons in the doc to request this is improved?
    • value extrapolates by default - in other words if you ask for a value at an x-axis value before the first or after the last point, it will return the first y or last y value. It has an optional argument to turn that off (which is available through the ViVA calculator form - it just isn't in the OCEAN reference manual for some reason).
    • Yes, this is true. valueAt is simpler, intentionally.

    If you want the simple behaviour you describe, it doesn't really matter, since valueAt is just calling value underneath anyway...

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • 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