• 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. Design variables in FFT and THD measures

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 125
  • Views 15008
  • 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

Design variables in FFT and THD measures

baenischfau
baenischfau over 12 years ago

Hello,

I'm currently designing a Class-D output stage and I have come across some

minor problems with the configuration with two of my measurement, namely FFT and THD.

As I always know the frequency(s) of my input signal I wanted to configure the FFT and the

THD measurement to always fit to the period of the output signal. So I defined two variables,

one for the start of the interval and one for the stop, both are integer multiples of the period.

I included those design variables into my measurements as discribed in a different post in this

forum using the desVar() function. For THD this yields in

 

thd(v("/outp" ?result "tran") desVar("startint") desVar("stopint")  16384 desVar("sigfreq")

 

for FFT I used the same syntax.

However both measurements do not work. I checked a lot of other measurements with the

desVar() method, they all work fine.

 

Anyone out there with some pointers ?

 

Thank you 

 

Best Regards

 

Andi

 

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    Andi,

    You probably should use the VAR() function, not the desVar() function. desVar returns a string, and that's not what you want here... (I'm surprised it works elsewhere).

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • baenischfau
    baenischfau over 12 years ago

     Hi Andrew,

     

    Thanks for the hint, however it's still not working.

    What I have tried:

    I use the same set of three variables

    sigfreq = 256k

    startint = 5u

    stopint = startint+5*1/sigfreq 

    Staring from 

    thd(v(.....) 5u 24.531u 36000 256000)

    I replaced the frequeny setting 256k for the THD measurement with VAR("sigfreq") -> Measurement evaluates fine

    If I replace the starttime with VAR("startint") the measurement already fails,

    drForwardFFT: argument #2 should be a number

     

    What can I do now ?

     

    Best Regards

     

    Andi

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    Andi,

    You should report this to customer support. You shouldn't have to do this, but it may well fix it if you change your:

    thd(v(...) VAR("startint") 24.531u ...)

    to:

    famMap('thd v(...) VAR("startint") 24.531u ...)

    I have a CCR for a similar problem with another function, but not with thd. The idea is that famMap copes with unwrapping family data - and so if for some reason the v() is a family, and the VAR("startint") is a waveform (or family) rather than a number, it can sort it out. thd could do this itself.

    It's a bit of a guess, but a similar strategy has worked in other cases for me.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • baenischfau
    baenischfau over 12 years ago

     Hi Andrew,

     

    Thanks for your assistance on the matter. I have tried the famMap() option but I still get the same

    error messages. As soon as our local contact for Cadence is back I'll ask him to bring this in to

    customer support.

     

    Best Regards

     

    Andi

     

    • 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