DSPRelated.com
Forums

OFDM rayleigh fading simulation using rayleighchan function.

Started by Erix Escobar March 2, 2006
Hi All,
I'm simulating rayleigh fading on an OFDM system. I have a question with regards to the usage of the rayleighchan function. I'm trying to figure out how to do perfect compensation for the fading using this function. In theory, I could use an equalizer, but I would like to do perfect compensation for my theoretical purposes and to keep things simple.
 
To have an idea of what i'm doing, here some pseudo-code:
 
% ->Generate binary data.
% ->4PSK modulation.
OFDMSymb = ifft(data);  % ofdm symbol
IChan = real(OFDMSymb); QChan = imag(OFDMSymb);
% IChan is the in-phase component and QChan is the quadrature component.
% fading goes here.
chan = rayleighchan;  % for now!
Ifade = filter(chan, IChan);
Qfade = filter(chan, QChan);
 
SNR = 0:10; BER=0;
for m=1:times
for n = 1:length(SNR)
   % add awgn
   IfadeRx = ...
   QfadeRx = ...
   % perfect compensation for fading.
This is where I would have to compenstate for fading!!! I haven't figured out how to do it though! What information do I have to extract from the chan variable and how do I use it? 
   % do fft to received symbol.
   % demodulate
   % calculate bit error rate.
end
BERR+ber;
end
 
If anyone knows how to fully compensate for fading... that would be great!
 
Thanks!
Eric


Hi,

Is equalizer the right function for you ? As far as I now, you can do a
perfect channel estimation, but not perfect compensation ?  Simple equalizer
can be really simple. Check 3GPP specification: 25.892.

Regards,
Arthur.
	On 3/2/06, Erix Escobar <eltoro689@elto...> wrote:
>
>  Hi All,
> I'm simulating rayleigh fading on an OFDM system. I have a question
with
> regards to the usage of the rayleighchan function. I'm trying to
figure out
> how to do perfect compensation for the fading using this function. In
> theory, I could use an equalizer, but I would like to do perfect
> compensation for my theoretical purposes and to keep things simple.
>
> To have an idea of what i'm doing, here some pseudo-code:
>
>  % ->Generate binary data.
> % ->4PSK modulation.
>  OFDMSymb = ifft(data);  % ofdm symbol
> IChan = real(OFDMSymb); QChan = imag(OFDMSymb);
> % IChan is the in-phase component and QChan is the quadrature component.
> % fading goes here.
> chan = rayleighchan;  % for now!
> Ifade = filter(chan, IChan);
> Qfade = filter(chan, QChan);
>
> SNR = 0:10; BER=0;
> for
> m=1:times
> for
> n = 1:length(SNR)
>    % add awgn
>    IfadeRx = ...
>    QfadeRx = ...
>    % perfect compensation for fading.
> This is where I would have to compenstate for fading!!! I haven't
figured
> out how to do it though! What information do I have to extract from the
chan
> variable and how do I use it?
>    % do fft to received symbol.
>    % demodulate
>     % calculate bit error rate.
> end
> BERR+ber;
> end
>
> If anyone knows how to fully compensate for fading... that would be great!
>
> Thanks!
> Eric
>