generating AWGN in matlab

6 views (last 30 days)
michael
michael on 22 Aug 2013
Edited: Walter Roberson on 30 Aug 2015
I'd like to have your overview if what I'm doing is OK.
I need to plot the BER vs Eb/No. So the noise power which I should generate should be related to Eb/No.
  1. bits are encoded into 1/2 rate encoder.
  2. the output of the encoder is converted to +1 and -1 symbols
  3. symbols are oversampled by OS ratio.
  4. the oversampled symbols are passed through Gaussian filter and this is the data which i send to the channel.
now i need to generate AWGN:
EbNo_dB_bit_list = -2:0.25:2;
EsNo_dB_no_code = EbNo_dB_bit_list - 10*log10(OS);
dec_EsNo_dB_no_code=10.^(-EsNo_dB_no_code/10);
sigma2 = 1/(2*Rate)*dec_EsNo_dB_no_code; % to include the code rate
ni = randn(1,length(modulated));
nq =randn(1,length(modulated));
noise=(ni+1j*nq)*sqrt(sigma2(k));

Answers (2)

Bhavik Doshi
Bhavik Doshi on 22 Aug 2013
Edited: Walter Roberson on 30 Aug 2015
clc; close all; clear all; sym=1000; snr=30; M=2;
msg=randi(1, M-1,sym) mod=pskmod(msg,M); for i=0:snr yn=awgn(mod,i); msgbar=pskdemod(yn,M); [a(i+1) b(i+1)]=biterr(msgbar,msg); end semilogy(0:snr,b,'r'); grid on title('Simple AWGN'); xlabel('Eb/No'); ylabel('BER');
  2 Comments
Bhavik Doshi
Bhavik Doshi on 22 Aug 2013
Separate lines after ;
michael
michael on 22 Aug 2013
sorry, but i don't understand your answer. you have provided code for BER of BPSK. I need to have conformation that my steps in noise generation is OK

Sign in to comment.


Bhavik Doshi
Bhavik Doshi on 30 Aug 2015
Let us consider that final signal this coded as x matrix. Assumption: x is a mxn matrix. x is already over sampled x is already modulated and coded as per requirement you need y = xh + n where h is complex channel and n is noise.
Now, as you mentioned, you do not need h, assuming wired transmission.
y= x+n.
Matlab implementation:
y = awgn(x, snr);
use x as your coded modulated signal matrix or vector. snr = choose value between 0 to 30 db only.

Categories

Find more on Propagation and Channel Models in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!