I first met via this tutorial(OFDM) with COMPLEX TO REAL… your tutorials are very helpful and
understandable and it is very important because communication is very hard branch in engineering…so i think your web site second name must be COMPLEX TO SIMPLE… thank you very much and I wish you success…:)

i am doin project on “A low complexity MMSE for OFDM system over frequency selective fading channels”i wanted the source code n theory behind this project..

OFDM performs best when it is used in frequency selective channels. I am not quite sure what you are looking for. I don’t offer a lot of code, as one needs to understand the theory first. The tutorial hopes to make the OFDM theory understandable and hope it has achieved that goal for you.

At first thanks for really helpful tutorial. I have a question:
when we use guard interval our goal is protection, as I understood from tutorial we do it for each
sub-carrier. Imagine we have c1, c2, c3 and c4 as carriers. The issue of delay is between for example c1 and c2 inside of one composite OFDM signa? or between c1 and the delayed version of next symbol which is transmitted by c1? In tutorial you said symbol 0 and symbol 1, symbol 0 , so both of them are from same carrier?
Thanks in advance
Damoon

The delay comes not between each of the symbol on the subcarriers but between adjacent composite symbols.

Assume that time is i = 1. So we have symbosl s11, s21, s31, s41, wehre first index stands for the subcarrier and the second for time. These are then multiplied by carriers and we get

s11xc1, s12xc2, s13xc3, s14xc4. We add these and we get the composite symbol for time 1.
This is where we add the time delay or the cyclic prefix.

Many thanks for your reply. So is below conclusion true:
delay is between each of sij*cj and s(i+1)j*cj (i stands for time and j for carrier)? and in reality we add guard interval to whole composite signal and because it’s a linear comibination it goes to each of the sij*cj and s(i+1)j*cj?

Yes, that is correct. The sum is linear because the subcarriers are orthogonal to each other. So each composite symbol is unique because it is adding about 2000 modulated (subcarriers multiplied bit).
The cyclic prefix is sualy about a 1/8 of the composite symbol, replicated and pasted at the end of the symbol.

Another question, we increase the duration of symbols to achieve less bandwidth in frequency domain(subcarriers equal frequency). Then we are able to divide main bandwidth to for example 2000 subcarriers which each of them has the same width e.g. deltaF. I faced with this formula :
Tsym=(Number of subcarriers e.g. 1024)*ld(M)* Tb(duration of one bit)
where ld(M)=logbase2(M)=m(number of bits which depends one modulation scheme)
and this Tsym should be the same for all of subcarriers and also the composite signal
two questions that I couldn’t give them answer:
1)if we use different modulation schemes(QPSK,16QAM,64QAM) for different subcarriers(like what happens in LTE)so du to this formula how can they have the same pulse duration?

2) In implementation where and how this increase in pulse duration happens?

1. For all these modulations, the symbol time is exactly the same. Only bits per symbol are different. So lets say you have three subcarriers each with

c1 -> QPSK
c2 -> 16QAM
c3 -> 64QAM

then carrier one will have a two level signal (assuming complex carrier), c2 will have a 4 level signal and 64 will have 8 level signal. But the symbol duration for each must be the same otherwise you can not make OFDM work.

I am not sure what this formula is.

Symbol rate is determined by the subcarrier spacing. It is equal to spacing times 2, at most.

So total Rs = Num of subcarriers * 2*spacing

Bit rate if all modulation is same is the M times that.

If subcarrier spacing is 1 Khz, then Total Rs = 1024*1000*2

You would then reduce this by the cyclic prefix and pulse shaping.

All this happens in the IFFT block at the transmitter. If pulse shaping is used, it is applied after the composite symbol is created.

I wasn’t able to understand OFDM , until I came across the tutorial here. And I just can’t remain quiet without thanking you. This is the best and most clearly written resource on OFDM that I’ve come across till now. Especially the part which explains why we can use IFFT on a time domain signal cleared a lot of my confusions.

Thank you very much for this great tutorial and others. Wish you a lot of success.

I think I used a QPSK signal to create these pictures. The QPSK symbols are not on the x-axis so they are not the same as a BPSK signal. I will correct this one of these days.
The bits and the transitions should line up.

This tutorial on ofdm has proved to be really really enlightening. I have read a lot of other tutorials but nothing comes close to this. I am writing a thesis on low-power wireless systems and would like to use certain explanations from your tutorial. Would you grant me the permission for the same? I would only be using it to explain OFDM while my thesis is much beyond OFDM. My work only uses the concept of OFDM and goes deep devising techniques for low power wireless communication. Since you have copyrighted your work, it is courtesy to ask you before using it.

before my question I would to ask you very much for your tutorials , my question is about orthogonality that depends on the fundamental frequency , ex : in page 5 in the tutorial in case of fundamental frequency = .5 Hz , its harmonics are orthogonal to each other , but in case of fundamental frequency = .875 Hz , its harmonics are not orthogonal , why ?

and thank you again for your effort and waiting for you answer

I said that because I have computed that intergral : cos((7/4)*pei*t)*cos((7/2)*pei*t) interval from 0 to 2*pei and the result was not zero but was .003

That’s because, it is using a trapezoidal approximation for integration. So the answer may not be identically 0.0.

I think it is because of the approximation if you did it in Matlab.
Decrease the time resolution and see if the number gets smaller. That would be a test.

we were taught in class that INTEGRATION(s1(t)*s2(t))over a time period is zero ,then signals are orthogonal and the interference b/w the signals is minimum when this product is zero.Why so??

Hi Charan. Thanks for the content on OFDM which is very easy to understand. I am half way reading it. At the end of 16th page you have written “In reality, the symbol source is continous, so all we are doing is adjusting the starting phase and making the symbol period longer. But nearly all books talk about it as a copy of the tail end.” Can please explain the above content.
2. Will the addition of CPrefix, convert frequency selective channel to flat fading as symbol time is increasing?

“In reality, the symbol source is continuos, so all we are doing is adjusting the starting phase and making the symbol period longer. But nearly all books talk about it as a copy of the tail end”. In this if you meant of changing the phase of sinsoid as shown in Fig25, our OFDM symbol will not be a simple known signal like sinsoid. In which case we cannot change phase. Please explain

I like your tutorial on this topics. I assume each OFDM applications has to decide on a typical value of the delay spread for the channel. If I have to design an new OFTM system, how do I determine the number of carriers that I can pack on each OFDM symbol ?

Hi,
Thank you very much.For IEEE 802.11 a The standard uses 64 IFFT length (3.2μs) and 20 Msamples per second This result in 64 samples in time domain ..how can i get more samples increasing the sampling frequency ?
in other words, how the sampling frequency affect the structure ?
Thanks

Dear Ms Charan,
Great tutorial. While it enlightened me immensely with the understanding of cyclic prefix resolving the inter symbol interference caused by the delay spread of multi path reflections, I was wrestling with the question about how the intra symbol interference that causes the amplitude and phase shift in the signal is taken care of? I came across brief literature in the web about reference signals or pilot carriers used to resolve this. Addition of that discussion to the tutorial will greatly help.
Thanks.

Hi Charan,
I just read your tutorial on OFDM and I wanted to let you know how great it is. It is a rare ability to take very complicated subjects and explain them is easy to understand terms. I look forward to reading more of your tutorial and your book when it is published.

Could your please tell me if number of subcarriers in OFDM increase, does the corresponding BER decrease? Is there any mathematical proof for the same?
Thanks

No, if you increase the number of sub-carriers, your BER will not decrease. There is no direct relationship between the number of sub-carriers and BER.

The number of sub-carriers are chosen based on the coherence bandwidth of the channel and the signal processing capability of the receivers. Currently This number is around 2000 K carriers which seems to give a reasonable performance for wi-fi links.

The number of sub-carriers in a OFDM link is very much a function of the fading and multi-path parameters of the link. There would be no need to increase the number of carriers, if a particular number satisfies the link requirements.

Thanks for the detailed write-up. I am just brushing up on my DSP concepts and I landed up on this amazing resource of yours.

I have a question regarding the discontinuities shown in Fig. 8 and many other figures that follow that. Sticking to Fig. 8 for simplicity, that waveform represents 1, 1, 1, -1, -1, -1. So I understand the discontinuity in c1 when the transition from 1 to -1 happens after the 3rd symbol. But why is there a discontinuity in the wave between symbols 5 and 6? (both symbols are -1).

Similar discontinuities are also seen in:
– Fig. 9: Between 4th and 5th symbols (1, 1)
– Fig. 10 top: Between 5th and 6th symbols (1, 1)
– and few figures after that too.

Dear Charan,

First thank you very much for this tutorial.

In the OFDM tutorial, page 5 I have this question:

1- How this been found:

bits from the information: 1,1,-1,-1,1,1,1,-1,….

2- How this been calculated:

harmonics 7/4, 7/2, 21/2 Hz?

Thank you.

You have some really nice and intuitive tutorials. Thanks for posting!

I first met via this tutorial(OFDM) with COMPLEX TO REAL… your tutorials are very helpful and

understandable and it is very important because communication is very hard branch in engineering…so i think your web site second name must be COMPLEX TO SIMPLE… thank you very much and I wish you success…:)

i am doin project on “A low complexity MMSE for OFDM system over frequency selective fading channels”i wanted the source code n theory behind this project..

OFDM performs best when it is used in frequency selective channels. I am not quite sure what you are looking for. I don’t offer a lot of code, as one needs to understand the theory first. The tutorial hopes to make the OFDM theory understandable and hope it has achieved that goal for you.

Dear Charan

At first thanks for really helpful tutorial. I have a question:

when we use guard interval our goal is protection, as I understood from tutorial we do it for each

sub-carrier. Imagine we have c1, c2, c3 and c4 as carriers. The issue of delay is between for example c1 and c2 inside of one composite OFDM signa? or between c1 and the delayed version of next symbol which is transmitted by c1? In tutorial you said symbol 0 and symbol 1, symbol 0 , so both of them are from same carrier?

Thanks in advance

Damoon

The delay comes not between each of the symbol on the subcarriers but between adjacent composite symbols.

Assume that time is i = 1. So we have symbosl s11, s21, s31, s41, wehre first index stands for the subcarrier and the second for time. These are then multiplied by carriers and we get

s11xc1, s12xc2, s13xc3, s14xc4. We add these and we get the composite symbol for time 1.

This is where we add the time delay or the cyclic prefix.

s11c1+s12c2+s13c3+s14c4+(1/8(s11c1+s12c2+s13c3+s14c4))

In the next time interval, we have

s21c1+s22c2+s23c3+s24c4+(1/8(s21c1+s22c2+s23c3+s24c4))

or in time domain, we are transmitting;

s11c1+s12c2+s13c3+s14c4+ (1/8(s11c1+s12c2+s13c3+s14c4)) + s21c1+s22c2+s23c3+s24c4+(1/8(s21c1+s22c2+s23c3+s24c4)) + ….

So the delay is between composite symbols. IN a real system there are 2000 of these.

Charan Langton

Many thanks for your reply. So is below conclusion true:

delay is between each of sij*cj and s(i+1)j*cj (i stands for time and j for carrier)? and in reality we add guard interval to whole composite signal and because it’s a linear comibination it goes to each of the sij*cj and s(i+1)j*cj?

Yes, that is correct. The sum is linear bcause the c

Yes, that is correct. The sum is linear because the subcarriers are orthogonal to each other. So each composite symbol is unique because it is adding about 2000 modulated (subcarriers multiplied bit).

The cyclic prefix is sualy about a 1/8 of the composite symbol, replicated and pasted at the end of the symbol.

Charan

Another question, we increase the duration of symbols to achieve less bandwidth in frequency domain(subcarriers equal frequency). Then we are able to divide main bandwidth to for example 2000 subcarriers which each of them has the same width e.g. deltaF. I faced with this formula :

Tsym=(Number of subcarriers e.g. 1024)*ld(M)* Tb(duration of one bit)

where ld(M)=logbase2(M)=m(number of bits which depends one modulation scheme)

and this Tsym should be the same for all of subcarriers and also the composite signal

two questions that I couldn’t give them answer:

1)if we use different modulation schemes(QPSK,16QAM,64QAM) for different subcarriers(like what happens in LTE)so du to this formula how can they have the same pulse duration?

2) In implementation where and how this increase in pulse duration happens?

Thanks for your attention

Damoon

1. For all these modulations, the symbol time is exactly the same. Only bits per symbol are different. So lets say you have three subcarriers each with

c1 -> QPSK

c2 -> 16QAM

c3 -> 64QAM

then carrier one will have a two level signal (assuming complex carrier), c2 will have a 4 level signal and 64 will have 8 level signal. But the symbol duration for each must be the same otherwise you can not make OFDM work.

I am not sure what this formula is.

Symbol rate is determined by the subcarrier spacing. It is equal to spacing times 2, at most.

So total Rs = Num of subcarriers * 2*spacing

Bit rate if all modulation is same is the M times that.

If subcarrier spacing is 1 Khz, then Total Rs = 1024*1000*2

You would then reduce this by the cyclic prefix and pulse shaping.

All this happens in the IFFT block at the transmitter. If pulse shaping is used, it is applied after the composite symbol is created.

Charan Langton

I wasn’t able to understand OFDM , until I came across the tutorial here. And I just can’t remain quiet without thanking you. This is the best and most clearly written resource on OFDM that I’ve come across till now. Especially the part which explains why we can use IFFT on a time domain signal cleared a lot of my confusions.

Thank you very much for this great tutorial and others. Wish you a lot of success.

High praise!

Thank you.

Hi,

Very nice tutorial 🙂

When taking a look at figure 8 I see phase shifting at points X=160 and X=190 although binary value doesn’t change – why?

Best Regards, Lukas

Good catch.

I think I used a QPSK signal to create these pictures. The QPSK symbols are not on the x-axis so they are not the same as a BPSK signal. I will correct this one of these days.

The bits and the transitions should line up.

Charan

Hi Charan,

This tutorial on ofdm has proved to be really really enlightening. I have read a lot of other tutorials but nothing comes close to this. I am writing a thesis on low-power wireless systems and would like to use certain explanations from your tutorial. Would you grant me the permission for the same? I would only be using it to explain OFDM while my thesis is much beyond OFDM. My work only uses the concept of OFDM and goes deep devising techniques for low power wireless communication. Since you have copyrighted your work, it is courtesy to ask you before using it.

Please get back to me soon.

Thanks!

thank you for these intuitive tutorials. These really help to get a clearer picture.

before my question I would to ask you very much for your tutorials , my question is about orthogonality that depends on the fundamental frequency , ex : in page 5 in the tutorial in case of fundamental frequency = .5 Hz , its harmonics are orthogonal to each other , but in case of fundamental frequency = .875 Hz , its harmonics are not orthogonal , why ?

and thank you again for your effort and waiting for you answer

Ahmed Touma

Harmonics of 0.5 Hz are 1 x .5, 2x.5, 3x.5, … nx.5, all integer multiples.

.875 is not a harmonics of 0.5 Hz..

Its its harmoics are all integer multiples of it, or 2x.875, 3x.875 etc.

Charan Langton

yes but my question was that .875 and its harmonics which is 2x.875 , .. etc are not orthogonal to each other

fc = .875;

wc = 2*pi*fc;

t = 0: .01: 1.1429;

n = 4;

m = 7;

sig = cos(m*wc*t).*cos(n*wc*t)

%sig = cos(m*wc*t);

plot(t, sig)

trapz(t, sig)

Try this. Not sure why you are saying they are not orthogonal?

Charan

I said that because I have computed that intergral : cos((7/4)*pei*t)*cos((7/2)*pei*t) interval from 0 to 2*pei and the result was not zero but was .003

That’s because, it is using a trapezoidal approximation for integration. So the answer may not be identically 0.0.

Charan

If you solve the equation and do a closed from solution, you should get a zero for cases such as

cos(nwt) x cos(mwt) ] over a period of 1/w.

Charan

ok , I will try to understand that idea and thank you so much again for your tutorial because it is simple and very useful .

Ahmed Touma

I think it is because of the approximation if you did it in Matlab.

Decrease the time resolution and see if the number gets smaller. That would be a test.

Charan

When the delay spread is less than one symbol why we get flat fading ? , and why we get frequency-selective in case of larger than one symbol ?

why intereference is minimum in orthogonal signals?

Interference is the same, just does not effect all the carriers the same. Only those that are at the same frequency will be effected.

we were taught in class that INTEGRATION(s1(t)*s2(t))over a time period is zero ,then signals are orthogonal and the interference b/w the signals is minimum when this product is zero.Why so??

Please elaborate the answer more so dat i can understand it more.

Hi Charan. Thanks for the content on OFDM which is very easy to understand. I am half way reading it. At the end of 16th page you have written “In reality, the symbol source is continous, so all we are doing is adjusting the starting phase and making the symbol period longer. But nearly all books talk about it as a copy of the tail end.” Can please explain the above content.

2. Will the addition of CPrefix, convert frequency selective channel to flat fading as symbol time is increasing?

Thanks

Srikanth

“In reality, the symbol source is continuos, so all we are doing is adjusting the starting phase and making the symbol period longer. But nearly all books talk about it as a copy of the tail end”. In this if you meant of changing the phase of sinsoid as shown in Fig25, our OFDM symbol will not be a simple known signal like sinsoid. In which case we cannot change phase. Please explain

Thanks

Srikanth

I like your tutorial on this topics. I assume each OFDM applications has to decide on a typical value of the delay spread for the channel. If I have to design an new OFTM system, how do I determine the number of carriers that I can pack on each OFDM symbol ?

Hi,

Thank you very much.For IEEE 802.11 a The standard uses 64 IFFT length (3.2μs) and 20 Msamples per second This result in 64 samples in time domain ..how can i get more samples increasing the sampling frequency ?

in other words, how the sampling frequency affect the structure ?

Thanks

Dear Ms Charan,

Great tutorial. While it enlightened me immensely with the understanding of cyclic prefix resolving the inter symbol interference caused by the delay spread of multi path reflections, I was wrestling with the question about how the intra symbol interference that causes the amplitude and phase shift in the signal is taken care of? I came across brief literature in the web about reference signals or pilot carriers used to resolve this. Addition of that discussion to the tutorial will greatly help.

Thanks.

Hi Charan,

I just read your tutorial on OFDM and I wanted to let you know how great it is. It is a rare ability to take very complicated subjects and explain them is easy to understand terms. I look forward to reading more of your tutorial and your book when it is published.

Amazing tutorial

Hi Charan

Could your please tell me if number of subcarriers in OFDM increase, does the corresponding BER decrease? Is there any mathematical proof for the same?

Thanks

No, if you increase the number of sub-carriers, your BER will not decrease. There is no direct relationship between the number of sub-carriers and BER.

The number of sub-carriers are chosen based on the coherence bandwidth of the channel and the signal processing capability of the receivers. Currently This number is around 2000 K carriers which seems to give a reasonable performance for wi-fi links.

The number of sub-carriers in a OFDM link is very much a function of the fading and multi-path parameters of the link. There would be no need to increase the number of carriers, if a particular number satisfies the link requirements.

Thanks for the detailed write-up. I am just brushing up on my DSP concepts and I landed up on this amazing resource of yours.

I have a question regarding the discontinuities shown in Fig. 8 and many other figures that follow that. Sticking to Fig. 8 for simplicity, that waveform represents 1, 1, 1, -1, -1, -1. So I understand the discontinuity in c1 when the transition from 1 to -1 happens after the 3rd symbol. But why is there a discontinuity in the wave between symbols 5 and 6? (both symbols are -1).

Similar discontinuities are also seen in:

– Fig. 9: Between 4th and 5th symbols (1, 1)

– Fig. 10 top: Between 5th and 6th symbols (1, 1)

– and few figures after that too.

Thanks!