DSPRelated.com
Forums

How to add noise???

Started by cpshah99 June 18, 2008
Dear all

It seems I have forgot all my fundamentals. Can you please guide me on how
to add noise to the system.

So far I did simulations at baseband where we just map the data to symbols
and add noise. i.e. for 1/2 rate convolution and 4-QAM modulation,

SNR=Eb/NO=1/(sigma^2); and from this find the sigma and multiply with
random sequence.

But how does this differ at passband? Where my Bandwidth is 4 KHz and
Carrier freq is 12KHz and sampling freq is 48KHz.

Your help will be greatly appreciated.

Regards,

Chintan
>Dear all > >It seems I have forgot all my fundamentals. Can you please guide me on
how
>to add noise to the system. > >So far I did simulations at baseband where we just map the data to
symbols
>and add noise. i.e. for 1/2 rate convolution and 4-QAM modulation, > >SNR=Eb/NO=1/(sigma^2); and from this find the sigma and multiply with >random sequence. > >But how does this differ at passband? Where my Bandwidth is 4 KHz and >Carrier freq is 12KHz and sampling freq is 48KHz. > >Your help will be greatly appreciated. > >Regards, > >Chintan
Chintan, You can generate white noise first and then pass it through a filter in your passband. Take care to match the average output noise energy in the passband to 1/sigma^2 of the signal energy. Emre
>>Dear all >> >>It seems I have forgot all my fundamentals. Can you please guide me on >how >>to add noise to the system. >> >>So far I did simulations at baseband where we just map the data to >symbols >>and add noise. i.e. for 1/2 rate convolution and 4-QAM modulation, >> >>SNR=Eb/NO=1/(sigma^2); and from this find the sigma and multiply with >>random sequence. >> >>But how does this differ at passband? Where my Bandwidth is 4 KHz and >>Carrier freq is 12KHz and sampling freq is 48KHz. >> >>Your help will be greatly appreciated. >> >>Regards, >> >>Chintan > >Chintan, > >You can generate white noise first and then pass it through a filter in >your passband. Take care to match the average output noise energy in the >passband to 1/sigma^2 of the signal energy. > >Emre >
%%%%% Hi Emre Thanks for replying. So first generate the AWGN signal and pass it thru Banpass of my interest and calculate noise power. And scale the output by sigma. But should I also pass my signal to be transmitted thru bandpass filter? Regards, Chintan
Hi Chintan,

>Thanks for replying.
Sure.
>So first generate the AWGN signal and pass it thru Banpass of my
interest
>and calculate noise power. And scale the output by sigma.
The scale factor may depend on the gain of your passband filter and the energy of the signal. You can check it by comparing the SNR averaged over many samples to your expectation.
>But should I also pass my signal to be transmitted thru bandpass filter?
This is a separate issue from noise generation. If your signal is already bandpass, you need not pass it through the filter again. Emre
>Hi Chintan, > >>Thanks for replying. > >Sure. > >>So first generate the AWGN signal and pass it thru Banpass of my >interest >>and calculate noise power. And scale the output by sigma. > >The scale factor may depend on the gain of your passband filter and the >energy of the signal. You can check it by comparing the SNR averaged
over
>many samples to your expectation. > >>But should I also pass my signal to be transmitted thru bandpass
filter?
> >This is a separate issue from noise generation. If your signal is
already
>bandpass, you need not pass it through the filter again. > >Emre > > >
%%% Hi Emre Thanks again. I am sorry to disturb you again. As my signal to be transmitted is already bandpass, so I do not need to transmitt again thru BP filter. But in matlab help, they have given explanation about relationship of Es/NO to SNR i.e. Es/NO=SNR(dB) + 10log10(Fs/B); And lets say if I keep my SNR=10 dB and Fs=48KHz and B = 4KHz Es/NO=20.79 dB. so for 4-qam and 1/2 rate convolution code , from this sigma=sqrt(1/20.79). is this correct? And how to find gain of the filter? Thank you very much. Chintan
Hi

What if i generate AWGN signal x=randn(1,1000). The design a BP filter of
my interest i.e. BP=fir1(100,[8/24 16/24]); Now I normalise my filter i.e.

BP=BP/sqrt(sum(BP.^2)); And then pass x thru this normalised filter.

y=filter(BP,1,x);

and then scale this y normally i.e. z=y*sqrt(1/snr) where 

snr=10^(snr_dB/10);

is this correct?

Regards,

Chintan