4.875

4.9 | 8 ratings Rate this file 94 Downloads (last 30 days) File Size: 1.39 KB File ID: #13127
image thumbnail

OFDM LSE Channel Estimation

by

 

26 Nov 2006 (Updated )

the performance of LSE channel estimation will be evaluated based on bit error rate in received data

| Watch this File

File Information
Description

the comb pilot aided channel estimation in ofdm modulation is considered. the power of pilot subchannels is under the control.
The data experience frequency selective channel then the AWGN noise is added to make the situation worse. The bit error rate is ploted versus SNR.

MATLAB release MATLAB 7 (R14)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (22)
03 May 2014 mohammed

thank you a lot

16 Feb 2014 gagan kalita

is it not possible to estimate the channel without having ofdm

28 May 2012 Dan

Hello,

can someone explain this:
G = (Ep * length(Ip))^-1 ...
* ctranspose(sqrt(Ep)*diag(Spilot)*ctranspose(F(1:L,Ip)));

Why it is not just the inverse filter from Ypilot and Spilot? Like hHat = Ypilot/Spilot ?

08 Dec 2011 Hamid Ramezani

Dear Aydar,

Thanks, and it is funny that you waited two years, I am really sorry for that. :) you know sometimes the life does not go as you expect.

08 Dec 2011 Aydar Zimaliev

Hello Hamid,
Thanks again. Didn't have to wait this time another 2 years ;)
Ok, now I understood what you mean.
Must admit, it was quite confusing - your script actually doesn't provide only pure link-level simulation results but has also some system-level assumptions on top of it.

08 Dec 2011 Hamid Ramezani

Dear Aydar,

If we want to evaluate the performance of BER without any power limit on the transmitter, and we only consider the SNR on the data, (not pilots) then your right. Regarding your comment I recently submitted a project here, which will be published soon. There, we can see how the power allocation among pilots and data affects the total capacity of the network. I hope it would be helpful for the people who are interested in this field of study.

Hamid.

07 Dec 2011 Aydar Zimaliev

Hi Hamid,
thanks for your reply.
I dont remember what i meant by different power on data and pilots nor the details of your code. Maybe i was wrong about the power thing but i see now in your code:

Ep = 2; % energy in pilot symbols in comparison to energy in data symbols.

Anyways, what I wanted to point out that according to your BER plot when you increase pilot power (Ep) you performance gets bad, ex.: compare Ep=10 vs Ep=1. BER (Ep=10) must have best performance. And I think the problems is in a wrong Noise generation.

Aydar.

07 Dec 2011 Hamid Ramezani

To Aydar Zimaliev,
Thanks for your comment. In practical scenarios in which the power is an important resource of the system, we should consider the overall performance of the systems. And as you know, the transmit power limit put a condition on the overall transmission power and it is not different for pilots or data. For the optimum power allocation between pilots and data please see the following paper: "On the Power Allocation and System capacity of OFDM Systems Using Superimposed Training Schemes".

However, if we consider the power allocation of pilots and data disjointly, then you'r right.

Hamid.

26 Jul 2011 king

Hi Hamid,would you not use the formula G compute channel impulse respone,instead of 3 formulas of LMS

23 May 2011 Maran

Hi Hamid, nice work here, I understand that you used the estimation formulation based on least square. But would you mind sharing the paper or book that you obtained this formula from. Thank you very much.

Excellent job again.

15 Sep 2010 Babar AZIZ

Hi, a very nice code ... can you kindly explain me the formula ...
G = (Ep * length(Ip))^-1 ...
* ctranspose(sqrt(Ep)*diag(Spilot)*ctranspose(F(1:L,Ip)));

thanks

27 Nov 2009 Aydar Zimaliev

While I was commenting (above) I noticed something strange in your picture above: when you increase pilot power (Ep) you performance gets bad, which is wrong! More power you have on pilots the better channel estimation => the better performance must be.
Your bug is at the noise generation, which should not be a function of pilot power ( when we set SNR we mean SNR on data symbols and not on data+pilot symbols). What your code does it increases noise on data symbols when Pilot power (Ep) is increased.

Instead of

TxDataIfftGiNoise = awgn(TxDataIfftGi , SNR - db(std(TxDataIfftGi)));

I would write

TxDataIfftGiNoise = awgn(TxDataIfftGi , SNR);

or better without Matlab built-in function

TxDataIfftGiNoise = TxDataIfftGi*10^(SNR/20)+1/sqrt(2)*(randn(length(TxDataIfftGi),1)+j*randn(length(TxDataIfftGi),1));

Overall, your code is a very nice example, thank you for sharing with us!

27 Nov 2009 Aydar Zimaliev

Very good!

27 Nov 2009 Aydar Zimaliev  
07 Aug 2008 Julius Sandy

I want to ask, can you give me the number of input parameters so that the picture above can be build? how many numbers of iteration that been inputed?

25 Mar 2008 Hamid Ramezani

Hi
instead of function
"random('Normal',0,1,L,1)", the function randn(L,1) can be used.

12 Feb 2008 sherif ahmed

the program is not run as the built in function is not given

17 Jun 2007 Morteza MRO

Hi
The code shared, is just the simulation of a SISO system with LS Estimation in time domain and the code is a stand-alone program that has no built-in function.

03 Apr 2007 inderjeet kaur

pls send me the built in functions that are being used really greatful to u , thanks in advance, pls mail me at inderjeetk@gmail.com

15 Mar 2007 anil pattanayak  
23 Feb 2007 hamed nozari  
02 Dec 2006 ash ash

Thanks, please send me the built in functions.

Contact us