• 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. SNR calculation wrong by 3 dB?

Stats

  • Locked Locked
  • Replies 11
  • Subscribers 126
  • Views 16299
  • 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

SNR calculation wrong by 3 dB?

Fede26
Fede26 over 3 years ago

Hi

I did the following experiment to check the accuracy of the Spectrum assistant.

Simple VSIN with 1V peak amplitude series-connected to a 100kOhm resistor and done fft of the output after activating the transient noise up to 100kHz to avoid aliasing. Strobeperiod=1/24MHz was added. Sine frequency was chosen as 3*24e6/8192 to obtain a perfect fit of the signal on fft samples. Number of points is 8192. Hanging window selected. Number of signal samples = 1 as per manual.

My calculation of SNR over a 100kHz bandwidth gives: rms of signal = 0.707V, and rms of noise = sqrt(4*kT*R*100k) = 12.87uV. Hence, SNR = 20*log10(0.707/12.87uV) = 94.7 dB

However, the Spectrum Assistant gives around 3 dB better, i.e. 97.2 dB. It also reports signal power 1e-5 dB so 0 dB. We obtain close to this number if we do 1/12.87e-6.

So it appears to me that SNR function takes signal amplitude instead of signal rms. Where is the flaw in my reasoning if any?

Thanks, best regards.  

  • Cancel
Parents
  • ShawnLogan
    ShawnLogan over 3 years ago

    Dear Fede26,

    Fede26 said:

    Simple VSIN with 1V peak amplitude series-connected to a 100kOhm resistor and done fft of the output after activating the transient noise up to 100kHz to avoid aliasing. Strobeperiod=1/24MHz was added. Sine frequency was chosen as 3*24e6/8192 to obtain a perfect fit of the signal on fft samples. Number of points is 8192. Hanging window selected. Number of signal samples = 1 as per manual.

    My calculation of SNR over a 100kHz bandwidth gives: rms of signal = 0.707V, and rms of noise = sqrt(4*kT*R*100k) = 12.87uV. Hence, SNR = 20*log10(0.707/12.87uV) = 94.7 dB

    However, the Spectrum Assistant gives around 3 dB better, i.e. 97.2 dB. It also reports signal power 1e-5 dB so 0 dB.

    1. Might you clarify the windowing function you are using? You stated "Hanging window", but I don't believe that is a valid endowing function (and I've also never heard of it!). Did you mean Hanning?

    2. If you did intend to write "Hanning" window, did you include the amplitude distortion the Hanning window will produce on your data sample? Its amplitude distortion will definitely change your measured overall signal to noise ratio. Specifically, likely the peak of the sinusoid i may not be changed much, but the integrated thermal noise will undergo significant attenuation. Aa result, I would expect the spectrum assistance to return a higher SNR than your hand computed value if you did not include the distortion it induces in your SNR calculation (and from your description, you did not). For your reference, the Hanning window imposes the amplitude distortion shown in Figure 1.

    In your case, since you are making sure your sinusoid data sample is an integer number of periods, I would expect spectral leakage should be small and would recommend you consider a Rectangular window. This type of window does not induce any amplitude distortion.

    I hope I understood your question correctly and my response makes some sense to you Fede26!

    Shawn

    Figure 1
    (from URL: community.sw.siemens.com/.../window-correction-factors)

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Fede26
    Fede26 over 3 years ago in reply to ShawnLogan

    Hi

    thanks for your answer.

    yes I mean Hanning, auto-corrector did the trick.

    About windowing, I am not including any correction in my hand calculations and I was not aware that noise might be attenuated by windowing. What seems not correct to me is that spectrum assistant reports "Signal Power" as the amplitude of the input signal, whereas I was expecting rms value. 

    Btw, I tried rectangular, hamming and results are always the same so I would like to have a clarification from someone from Cadence on how the SNR is calculated, as it seems to me that it uses the amplitude peak...

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Fede26
    Fede26 over 3 years ago in reply to ShawnLogan

    Hi

    thanks for your answer.

    yes I mean Hanning, auto-corrector did the trick.

    About windowing, I am not including any correction in my hand calculations and I was not aware that noise might be attenuated by windowing. What seems not correct to me is that spectrum assistant reports "Signal Power" as the amplitude of the input signal, whereas I was expecting rms value. 

    Btw, I tried rectangular, hamming and results are always the same so I would like to have a clarification from someone from Cadence on how the SNR is calculated, as it seems to me that it uses the amplitude peak...

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

    Fede26 I would suggest that you create a case with customer support. I'd love to dig into this, but the day job is consuming all of my time at the moment and my ability to respond to anything other than quick questions on the forums is likely to be limited for the next couple of weeks.

    Andrew

    • 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