I have a simple ADC model (an input signal == sampled signal ). The adc should be modelled as with following values:
- 1.5 V (peak to peak).. meaning --> +1.5 V --> 0 dBFS ... how to do this ?
- The noise on the signal should be -120 dBFS/Hz in bandwidth of 2 MHz.. .how to add this exact noise ?
- The NFFT= 2^11 and fs= 200 MHz.
- The input will be 10 MHz single tone, and then the FFT will be perfomed.
fs = 200e6;
% Adding Noise
n_en=1; % Noise On/Off (1/0)
BW= 2e6;
noise= -120; %dBFS/Hz
SNR=abs(noise + 10*log10(BW));
N= 2^11;
Df_fft = fs/N;
t = (0:N-1)/fs; t = t(:);
f=10e6;
f = Df_fft*round(f/Df_fft);
y = cos(2*pi*f*t); % I think i need some scaling factor here for +1.5 V --> 0 dBFS
if n_en==1
y_noise = awgn(y,SNR,'measured');
else
y_noise= y;
end
S = 2*fft(y_noise,N)/N;
S = 20*log10(abs(S));
f = (fs/1e6)*linspace(0,1,N);
plot(f,S)
So my questions are what NFFT points to take.? as that would also determine the noise floor.. .. what exactly would the noise floor be. ?. how exactly i can see the -120 dBFS/Hz in the graph or what does it means in terms of the graph...
is this the correct way to add noise ?
Thanks
All help would be appreciated.