I'm facing an issue with Cadence VIVA Spectrum Tool (6.1.5-64b.500.16.2) and THD/SNR calculation.
If I take an ADC/DAC with single-tone signal input close enough from the Nyquist frequency so that its natural harmonics fall above Fs/2, hence they get folded back into the Nyquist band, it seems those frequencies are not taken into account in the calcul of THD.
Hence, THD is wrong and SNR is wrong as well since it considers these "folded-harmonics" as noise bins and not harmonics (SNR should not take into account harmonics).
Thus, we end-up with SNR=SNDR (since it is not able to make difference between what is "noise" and what is "folded harmonics") and very close to SFDR (since the spurs are considered as noise and not folded harmonics from the input tone)
Concrete example :
Fs = 1.2MHz
Fin = 280kHz @ -0.5dB.
H3= 840kz @ -75dB => folded back to 360kHz
Noise floor = around -85dB
VIVA report :
THD = -110dB => WRONG(should be worse than -75dB ..)
SNR = -75dB => WRONG (should be around -85dB)
SNDR = -75dB => WRONG - SEEMS good, but same as SNR but SNR is already wrong no contribution from THD since it is completely off.
Was this bug already report ? Is there any fix available ?
Maybe - I would suggest trying IC616 - there have been some fixes related to spectrumMeasurement there - but I'm not sure whether they've been backported.
You may just be best reporting this to customer support and then we can look at your data (I do have an example, but don't really have time right now to sit down and carefully check it).
In reply to Andrew Beckett:
My mistake, I was using it wrong.
Sorry about that.