DSPRelated.com
Forums

Fair comparison between time domain equalizer and OFDM

Started by cpshah99 July 16, 2010
Hi All

So far I have worked on time domain equalizers such as LE and DFE. Recently
I have started to work on OFDM systems. And I am trying to compare the
performance for Proakis channel B which is three tap channel.

First system: map the info bits to BPSK, pass the symbols through channel,
add noise. The channel output I write it as y=conv(h,x)+noise, where
h=[0.407 0.815 0.407] and x= +/- 1. At receiver perform LE using MMSE under
the assumption that the channel is knonwn at the receiver. I get the exact
BER plot given in Proakis comms edition 4. 

Second system: map the info bits to BPSK, perform IFFT, add cyclic prefix,
pass it through channel and add noise. The channel output
y=conv(h,x)+noise, where x=IFFT(X,N), X=+/- 1 and N=2048. At receiver,
remove the CP, truncate the signal and performe one tap MMSE equalization
i.e. \hat{X}=fft(H,N)/fft(y,N) and then take hard decision on real part.

The problem is that the BER of system 2 is way off when compared to the BER
of system 1.

As a test case, when I removed the noise from system 2, I get 0 BER.
Furthermore, when I put h=1 in system 2, I get the exact plot of BPSK on
AWGN.

Any idea on what I might be doign wrong?

Your help is greatly appreciated.

Regards

Chintan
cpshah99 <cpshah99@n_o_s_p_a_m.rediffmail.com> wrote:
> >Hi All > >So far I have worked on time domain equalizers such as LE and DFE. Recently >I have started to work on OFDM systems. And I am trying to compare the >performance for Proakis channel B which is three tap channel. > >First system: map the info bits to BPSK, pass the symbols through channel, >add noise. The channel output I write it as y=conv(h,x)+noise, where >h=[0.407 0.815 0.407] and x= +/- 1. At receiver perform LE using MMSE under >the assumption that the channel is knonwn at the receiver. I get the exact >BER plot given in Proakis comms edition 4. > >Second system: map the info bits to BPSK, perform IFFT, add cyclic prefix, >pass it through channel and add noise. The channel output >y=conv(h,x)+noise, where x=IFFT(X,N), X=+/- 1 and N=2048. At receiver, >remove the CP, truncate the signal and performe one tap MMSE equalization >i.e. \hat{X}=fft(H,N)/fft(y,N) and then take hard decision on real part.
>The problem is that the BER of system 2 is way off when compared to the BER >of system 1. > >As a test case, when I removed the noise from system 2, I get 0 BER. >Furthermore, when I put h=1 in system 2, I get the exact plot of BPSK on >AWGN. > >Any idea on what I might be doign wrong?
Sounds to me that the OFDM system needs coding to work. Its native performance sucks. Add rate 1/2 k=7 Viterbi coding to each, with properly constructed metrics. It should then be comparable. Steve
On Jul 16, 12:21&#4294967295;pm, "cpshah99" <cpshah99@n_o_s_p_a_m.rediffmail.com>
wrote:
> Hi All > > So far I have worked on time domain equalizers such as LE and DFE. Recently > I have started to work on OFDM systems. And I am trying to compare the > performance for Proakis channel B which is three tap channel. > > First system: map the info bits to BPSK, pass the symbols through channel, > add noise. The channel output I write it as y=conv(h,x)+noise, where > h=[0.407 0.815 0.407] and x= +/- 1. At receiver perform LE using MMSE under > the assumption that the channel is knonwn at the receiver. I get the exact > BER plot given in Proakis comms edition 4. > > Second system: map the info bits to BPSK, perform IFFT, add cyclic prefix, > pass it through channel and add noise. The channel output > y=conv(h,x)+noise, where x=IFFT(X,N), X=+/- 1 and N=2048. At receiver, > remove the CP, truncate the signal and performe one tap MMSE equalization > i.e. \hat{X}=fft(H,N)/fft(y,N) and then take hard decision on real part. > > The problem is that the BER of system 2 is way off when compared to the BER > of system 1. > > As a test case, when I removed the noise from system 2, I get 0 BER. > Furthermore, when I put h=1 in system 2, I get the exact plot of BPSK on > AWGN. > > Any idea on what I might be doign wrong? > > Your help is greatly appreciated. > > Regards > > Chintan
You don't say exactly what you mean when you say that your BER measurement is "way off", but one possibility is that you haven't compensated for the rotation on the carriers in the OFDM system. Try choosing a single carrier index and plotting it as a scatter plot (without noise). That will very quickly give you an idea of whether or not that's the root of your problem. Frank

cpshah99 wrote:
> Hi All > > So far I have worked on time domain equalizers such as LE and DFE. Recently > I have started to work on OFDM systems. And I am trying to compare the > performance for Proakis channel B which is three tap channel. > > First system: map the info bits to BPSK, pass the symbols through channel, > add noise. The channel output I write it as y=conv(h,x)+noise, where > h=[0.407 0.815 0.407] and x= +/- 1. At receiver perform LE using MMSE under > the assumption that the channel is knonwn at the receiver. I get the exact > BER plot given in Proakis comms edition 4. > > Second system: map the info bits to BPSK, perform IFFT, add cyclic prefix, > pass it through channel and add noise. The channel output > y=conv(h,x)+noise, where x=IFFT(X,N), X=+/- 1 and N=2048. At receiver, > remove the CP, truncate the signal and performe one tap MMSE equalization > i.e. \hat{X}=fft(H,N)/fft(y,N) and then take hard decision on real part. > > The problem is that the BER of system 2 is way off when compared to the BER > of system 1. > > As a test case, when I removed the noise from system 2, I get 0 BER. > Furthermore, when I put h=1 in system 2, I get the exact plot of BPSK on > AWGN. > > Any idea on what I might be doign wrong?
The channnel is essentially LOWPASS. BPSK has sin(x)/x spectrum. OFDM has flat spectrum. Got the idea?
> Your help is greatly appreciated.
How much is the great appreciation?
> Regards > Chintan
STUPIDENT. VLV
cpshah99 wrote:
> Hi All > > So far I have worked on time domain equalizers such as LE and DFE. Recently > I have started to work on OFDM systems. And I am trying to compare the > performance for Proakis channel B which is three tap channel. > > First system: map the info bits to BPSK, pass the symbols through channel, > add noise. The channel output I write it as y=conv(h,x)+noise, where > h=[0.407 0.815 0.407] and x= +/- 1. At receiver perform LE using MMSE under > the assumption that the channel is knonwn at the receiver. I get the exact > BER plot given in Proakis comms edition 4. > > Second system: map the info bits to BPSK, perform IFFT, add cyclic prefix, > pass it through channel and add noise. The channel output > y=conv(h,x)+noise, where x=IFFT(X,N), X=+/- 1 and N=2048. At receiver, > remove the CP, truncate the signal and performe one tap MMSE equalization > i.e. \hat{X}=fft(H,N)/fft(y,N) and then take hard decision on real part. >
shoudln't this be \hat{X}=fft(y,N)/fft(h,N) ? Laurent
>cpshah99 wrote: >> Hi All >> >> So far I have worked on time domain equalizers such as LE and DFE.
Recently
>> I have started to work on OFDM systems. And I am trying to compare the >> performance for Proakis channel B which is three tap channel. >> >> First system: map the info bits to BPSK, pass the symbols through
channel,
>> add noise. The channel output I write it as y=conv(h,x)+noise, where >> h=[0.407 0.815 0.407] and x= +/- 1. At receiver perform LE using MMSE
under
>> the assumption that the channel is knonwn at the receiver. I get the
exact
>> BER plot given in Proakis comms edition 4. >> >> Second system: map the info bits to BPSK, perform IFFT, add cyclic
prefix,
>> pass it through channel and add noise. The channel output >> y=conv(h,x)+noise, where x=IFFT(X,N), X=+/- 1 and N=2048. At receiver, >> remove the CP, truncate the signal and performe one tap MMSE
equalization
>> i.e. \hat{X}=fft(H,N)/fft(y,N) and then take hard decision on real
part.
>> > >shoudln't this be \hat{X}=fft(y,N)/fft(h,N) ? > >Laurent >
Hi everybody... Thanks for your reply. sorry for the typo. it is indeed \hat{X}=fft(y,N)/fft(h,N). When i say the BER is way off, i mean there is a huge gap in performance. For example, system 1 gives BER of 10^-4 at 30 dB, where as system 2 gives BER of 10^-2 at 30 dB. When I remove the noise and send only +1s, after the equalization, I do not see phase rotation. And I also get 0 BER without noise on any channel. My matlab code is acurate, as it passes thru all the test cases. I can post it if anybody want to have a look. I do not think, even coding wil any good job since I can introducing coding to single carrier systems as well and it wil also perform well. I feel something has to be changed. Any hint where I could be making a mistake? Chintan
On Jul 16, 10:39&#4294967295;am, "cpshah99" <cpshah99@n_o_s_p_a_m.rediffmail.com>
wrote:
> >cpshah99 wrote: > >> Hi All > > >> So far I have worked on time domain equalizers such as LE and DFE. > Recently > >> I have started to work on OFDM systems. And I am trying to compare the > >> performance for Proakis channel B which is three tap channel. > > >> First system: map the info bits to BPSK, pass the symbols through > channel, > >> add noise. The channel output I write it as y=conv(h,x)+noise, where > >> h=[0.407 0.815 0.407] and x= +/- 1. At receiver perform LE using MMSE > under > >> the assumption that the channel is knonwn at the receiver. I get the > exact > >> BER plot given in Proakis comms edition 4. > > >> Second system: map the info bits to BPSK, perform IFFT, add cyclic > prefix, > >> pass it through channel and add noise. The channel output > >> y=conv(h,x)+noise, where x=IFFT(X,N), X=+/- 1 and N=2048. At receiver, > >> remove the CP, truncate the signal and performe one tap MMSE > equalization > >> i.e. \hat{X}=fft(H,N)/fft(y,N) and then take hard decision on real > part. > > >shoudln't this be \hat{X}=fft(y,N)/fft(h,N) ? > > >Laurent > > Hi everybody... > > Thanks for your reply. > > sorry for the typo. it is indeed \hat{X}=fft(y,N)/fft(h,N). > > When i say the BER is way off, i mean there is a huge gap in performance. > For example, system 1 gives BER of 10^-4 at 30 dB, where as system 2 gives > BER of 10^-2 at 30 dB. > > When I remove the noise and send only +1s, after the equalization, I do not > see phase rotation. And I also get 0 BER without noise on any channel. > > My matlab code is acurate, as it passes thru all the test cases. I can post > it if anybody want to have a look. > > I do not think, even coding wil any good job since I can introducing coding > to single carrier systems as well and it wil also perform well. > > I feel something has to be changed. > > Any hint where I could be making a mistake? > > Chintan- Hide quoted text - > > - Show quoted text -
you are saying you are testing in simulation a BPSK system and OFDM system with 2 impairments, 1) noise and 2)channel you are saying when tested with both impairments, the BPSK BER is much better. you are saying when tested with only 1 impairment, i.e without the noise impairment, both are good... so do the reverse case, test with only one imparment, the noise impairment but without the channel impairment... Mark
>you are saying you are testing in simulation a BPSK system and OFDM >system with 2 impairments, 1) noise and 2)channel > >you are saying when tested with both impairments, the BPSK BER is much >better. > >you are saying when tested with only 1 impairment, i.e without the >noise impairment, both are good... > >so do the reverse case, test with only one imparment, the noise >impairment but without the channel impairment... > >Mark >
Hi Mark I am testing two systems, one uses time domain LE and other uses OFDM. In both the cases I have used BPSK and a three tap proakis channel. The BER plot of system one i.e. time domain equalization, is absolutely correct as it matches with the BER plot given in the book. However, my problem starts with this OFDM system, where if I remove the channel impairment and just add noise, which is basically AWGN, I get the exact theoretical BER plot. Also, when I remove the noise and add channel impairment, I get 0 BER. So guys, I am not sure where to look. I am sure some of you must have done similar stuff. Thanks. Chintan
OK boys

Here is an update.

As we all know that each subcarrier in OFDM undergoes flat fading. So what
I did that I changed the channel in my simulation i.e. the channel is
changing per OFDM symbol. Now, when I measure the BER, it is exactly same
to the theoretical BER plot of BPSK on flat-Rayleigh fading channel.

The length of channel is 4 taps and the length of CP is 5.

Does this result make sense?

Your opinion and help is always appreciated.

Thanks

Regards

Chintan


On 16 Jul., 16:39, "cpshah99" <cpshah99@n_o_s_p_a_m.rediffmail.com>
wrote:
> >cpshah99 wrote: > >> Hi All > > >> So far I have worked on time domain equalizers such as LE and DFE. > Recently > >> I have started to work on OFDM systems. And I am trying to compare the > >> performance for Proakis channel B which is three tap channel. > > >> First system: map the info bits to BPSK, pass the symbols through > channel, > >> add noise. The channel output I write it as y=conv(h,x)+noise, where > >> h=[0.407 0.815 0.407] and x= +/- 1. At receiver perform LE using MMSE > under > >> the assumption that the channel is knonwn at the receiver. I get the > exact > >> BER plot given in Proakis comms edition 4. > > >> Second system: map the info bits to BPSK, perform IFFT, add cyclic > prefix, > >> pass it through channel and add noise. The channel output > >> y=conv(h,x)+noise, where x=IFFT(X,N), X=+/- 1 and N=2048. At receiver, > >> remove the CP, truncate the signal and performe one tap MMSE > equalization > >> i.e. \hat{X}=fft(H,N)/fft(y,N) and then take hard decision on real > part. > > >shoudln't this be \hat{X}=fft(y,N)/fft(h,N) ? > > >Laurent > > Hi everybody... > > Thanks for your reply. > > sorry for the typo. it is indeed \hat{X}=fft(y,N)/fft(h,N). > > When i say the BER is way off, i mean there is a huge gap in performance. > For example, system 1 gives BER of 10^-4 at 30 dB, where as system 2 gives > BER of 10^-2 at 30 dB. > > When I remove the noise and send only +1s, after the equalization, I do not > see phase rotation. And I also get 0 BER without noise on any channel. > > My matlab code is acurate, as it passes thru all the test cases. I can post > it if anybody want to have a look. > > I do not think, even coding wil any good job since I can introducing coding > to single carrier systems as well and it wil also perform well. > > I feel something has to be changed. > > Any hint where I could be making a mistake? > > Chintan
It is probably not the source of your errors, but you wrote that you are performing an MMSE equalization while the formula you post is essentially a zero-forcing (ZF) equalizer. It has been a few years since I dealt with this topic but shouldn't the MMSE equalizer (which in my understanding should be a Winer-Filter) be something like Y(f) = (conj(H(f)))/((abs(H(f))).^2+(1/SNR)) There should be difference in performance for low SNR. Greetz, Sebastian