SNR in AWGN

105 visualizzazioni (ultimi 30 giorni)
oblivious
oblivious il 10 Giu 2012
Risposto: philip il 11 Ott 2023
Hello,
i am trying to do some simulation of AWGN channel. matlab has a function awgn(x,snr). what kind of snr does it use here? is it Eb/No (average bit energy/power spectral density)? If so, then i know the awgn has a PSD equal to No/2. does that psd in the snr term implies No/2?
-OBLI

Risposta accettata

Darel
Darel il 4 Ago 2021
The function awgn does not use EbNo. It uses SNR, defined in the same manner as the snr() function from the Signal Processing Toolbox: sum of the squared samples of the signal over sum of the squared samples of the noise, where that ratio is converted to dB. Thus, if you created noisy data according to
y = awgn(x, SNR);
you should be able to check that
mySNR = snr(x, y-x)
is about the same as SNR in the first call.

Più risposte (2)

Wayne King
Wayne King il 10 Giu 2012
With the syntax
y = awgn(x,snr);
You generate a white noise vector with a variance of
variance = 10^(-snr/10);
noise = sqrt(variance)*randn(size(x));
If you use 'measured', then awgn actually measures the signal power.
For example:
x = cos(pi/4*(0:99));
y = awgn(x,5,'measured');
In this case the variance of the additive white noise is:
sigp = 10*log10(norm(x,2)^2/numel(x));
snr = sigp-5;
noisep = 10^(snr/10);
noise = sqrt(noisep)*randn(size(x));
  5 Commenti
Mustafa qays
Mustafa qays il 14 Nov 2017
The calculation is correct but the variable names need to be corrected
Signal to noise ratio SNR = sigp/noise_p (in ratio)
or
SNR = sigp - noise_p (in dB)
=>
noise_p(dB) = sigp - SNR , SNR = 5 dB
noise_p(db) = sigp - 5
noise_p = 10^(noise_p(db)/10)
So , (snr) in his equation should be written as noise power in the last section of code
Mrutyunjaya Hiremath
Mrutyunjaya Hiremath il 13 Set 2020
Meaningful Explanation

Accedi per commentare.


philip
philip il 11 Ott 2023
x = cos(pi/4*(0:99));
y = awgn(x,5,'measured');

Categorie

Scopri di più su Propagation and Channel Models in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by