# OFDM - why do we need IFFT?

This question is really related to - is there any need for IFFT in the first place?

If we want to send a bunch of complex-numbers (vectors), then most OFDM discussions involve presenting those numbers to an IFFT block, and the output of the IFFT block will then have a bunch of complex numbers for which to transmit in a queued fashion through a QAM block.

Can I ask ----- is the IFFT block really necessary? Instead of using the IFFT block, is it possible to just place the original set of complex numbers (vectors) on the queue....and then transmit those numbers (real and imaginary components) - one at a time - through a QAM block?

The signal (without using IFFT) is still going to be OFDM, right?

• The IFFT does exactly what you describe on the third paragraph of your question. The misconception is at "...the output of the IFFT block will then have a bunch of complex numbers...". Yes, this is true, but these are now in the time domain and basically, your I-Q. All mixed and ready. Check output of Inverse FFT for a single input in the frequency domain, at some frequency $k$.
– A_A
May 23, 2018 at 6:38
• @Kenny, you can throw away IFFT block if the channel is something like AWGN. But if channel is frequency selective, IFFT and FFT assure the orthogonality of subcarriers thus channel equalization is simplified to one-tap. May 23, 2018 at 8:27
• It is true that the output of IFFT is just complex numbers, but these numbers behave well if we pass them through FIR filer that model frequency selective channels. May 23, 2018 at 8:33
• Hello A_A! --- your comment about "but these are now in the time domain and basically, your I-Q. All mixed and ready." Thanks for that. Although..... the original raw complex numbers (before going into the IFFT) have in-phase and quadrature components as well. That's kind of the same as the IFFT output complex numbers....each one having I and Q components as well. The main difference I can think of (only) is that each IFFT complex number is a combination of every raw original complex number. May 24, 2018 at 21:41
• Hello Alex...... I think that I understand what you and hotpaw are saying. My latest understanding (interpretation) is that if we send the raw complex numbers via QAM, then a frequency selective channel can totally wipe out 1 or more values (and also - queuing raw complex values into a QAM does not result in OFDM?). On the other hand, each IFFT output value is a combination of every raw complex value, which improves chances of recovering each original raw value (at the receiving side)..... is that right? Thanks Alex. May 24, 2018 at 21:49

The “O” in OFDM stands for orthogonal. The IFFT takes a complex number (1 bin of the input) and turns it into samples of a sinusoid of a frequency that, over a certain length (of time), is orthogonal to (and thus, under ideal linear conditions, won’t interfere with) any other frequency subcarrier output by the IFFT.

If you just transmit the original bits, the impulse response of the channel can smear the bits together, interfering with the adjacent bits, and leave the decoder/demodulator the interesting job of unscrambling this mess. Depending on the channel response and how it changes over time, this may or may not be more difficult to do.

• Thanks very much for your excellent comments AA, Alex and hotpaw! I think I'm starting to get the picture now. Let me see if I have this right. If I have the raw (not IFFT) set of complex values (ie. vectors), V1, V2, V3 etc. And if I split each one into their real and complex parts, and then use each part to modulate orthogonal carriers....eg. Re1.cos(wt) and Im1.sin(wt), then send them out in QAM fashion, such as Re1.cos(wt) + Im1.sin(wt); and then proceed to switch to R2.cos(wt) and Im2.sin(wt).etc...is that OFDM? Cyclic prefix won't help here, right? Thanks again! May 23, 2018 at 8:54
• Does this mean that non-IFFT complex sequence values (such as raw vector symbols in real/imag voltage form from a 4-QAM system) modulating two orthogonal carriers (in QAM style, and in a time-queued clocked fashion) won't have the features or qualities of the IFFT complex sequence values modulating those same two orthogonal carriers? I'm very appreciative of the comments from all of you. The internet is amazing. Years ago, before the internet, I believe I'd have a really hard time getting my bearings straight with topics like this. Thanks again. May 23, 2018 at 9:04
• hotpaw!! Thanks very much. I believe I'm getting the picture now, after what you mentioned. So applying the original (raw, non-IFFT) values to a QAM (in queued fashion) is QAM, and not OFDM. But doing the same thing with the IFFT block output complex values (ie. applying to a QAM block) is OFDM. I'm leaving cyclic prefix out of the discussion. What you indicated makes sense. I think I wrongly assumed that queuing up a sequence of complex values into a QAM block was generating OFDM. Thanks for your help again!! Absolutely appreciated. May 23, 2018 at 9:12
• Hotpaw..... could you please explain "won’t interfere with any other frequency subcarrier output by the IFFT"? The IFFT outputs "N" complex numbers, right? And when we transmit each complex value (real and imaginary style) one at a time - using quadrature amplitude method (QAM) - then the equivalent spectrum of the signal will appear as N orthogonal sub-carriers, right? Thanks hotpaw! May 23, 2018 at 21:23
• OFDM works on blocks of data (long vectors of some bandwidth, which can be decomposed), not "one at a time" bits. Think vertical (frequency bands) rather than stepping horizontally or lengthwise (in time). May 23, 2018 at 21:33

I think you are comparing OFDM versus FSK. I agree with hotpaw2, and I just want to elaborate on his answer. If we build up a system using FSK, suppose the minimum spacing of the carriers is ft1. Then if this system is used at another environment with worse ISI, this system won't function well. We can't change the frequencies because the circuit is there. Of course, one can silence some of the carriers to make sure the new minimum spacing of the transmitting carriers meets the requirement. But compared with OFDM, this approach is ineffective in terms of data rate (or spectrum usage). OFDM deals with this problem by fine tuning the data rate with cyclic prefix.

• becseger --- I notice your comment here after revisiting this page. I was thinking that the 'IFFT' OFDM approach doesn't seem to be what most people imagine it to be (or does). At the moment, my thoughts are that this 'OFDM' technique is about transmitting a set of complex numbers to the receiver. And each of those complex numbers is a vector (such as a 64-QAM vector). So whether we carry out an IFFT or not, we still transmit a set of 'vectors' by taking (each one) their real and imaginary values --- modulating quadrature carriers (eg. cos and sin). We use cyclic prefix either way. Oct 26, 2021 at 0:45
• Also - if we take an IFFT of an 'ad-hoc' discrete frequency sequence, and if we want to transmit that IFFT sequence (using quadrature sinusoid carriers), then - at the moment - I see no significant difference between sending the original discrete-frequency vector sequence and sending the IFFT discrete-time sequence --- using quadrature carriers that is. For both cases, we would still need to use cyclic prefix to combat channel effects such as multipath. Oct 26, 2021 at 0:52
• Harris's comment helped a lot ----- as in, if we begin with an 'ad-hoc' frequency domain discrete frequency vector sequence (each vector representing for example a 64-QAM vector value), then there may be times where we might want to set some of those vectors to 'zero', which probably won't go down well with quadrature carrier modulation (when transmitting each vector). But - an IFFT applied to the discrete frequency sequence (with some vectors being 'zero') probably results in a discrete time sequence with all non-zero vector values - maybe, which won't impact quadrature carrier modulation. Oct 26, 2021 at 1:02
• I think that - apart from some of my mis-understanding about the topic - the issue was also largely associated with no text books or any sources actually properly explaining how this IFFT OFDM technique is supposed to work ------ the bare bones aspects of it. All I had seen was tied to 'orthogonal carriers' ..... but it seems that this IFFT OFDM technique (that involves regular QAM quadrature-carrier transmission of complex numbers) does not physically generate a set of sub-carriers at all. I think I understand the situation much better now, after Harris touched upon bit/power loading. Oct 27, 2021 at 5:17

You can also transmit a block of QAM symbols with an appended CP using a single carrier and use a frequency-domain equalizer at the receiver to remove the ISI effects. Performance-wise it will be similar to OFDM but you would lose some OFDM features such as adaptive bit and power loading.

• Thanks Harris for mentioning that it could be possible to just transmit the original sequence (block of QAM) of symbols along with CP added --- for dealing with non-ideal channel effects. That really helped a lot!! Does 'bit loading' for OFDM have the meaning of preferring to use particular sub-carriers having particular frequencies, and choosing to not use other sub-carriers at other particular frequencies (for sending the digital data bits)? Is that like ADSL, where we place bits on sub-carriers that don't get affected as much as other sub-carriers due to channel frequency selectivity? Oct 1, 2020 at 0:04
• Harris - is it true that 'OFDM' systems involving IFFT (followed by appending CP) and transmitting the complex-valued IFFT sequence (using quadrature carriers) is the same as quadrature modulation? That is, it is just the transmission of two 90-degree out-of-phase sinusoidal carriers (having the same frequency), right? And that's the mathematical equivalent of generating a waveform having orthogonal sub-carrier frequencies, right? (even though it is quadrature modulation). Thanks Harris! Oct 1, 2020 at 3:42
• Yes, for the bit-loading, you can use different number of bits per symbol based on the SNR of each subcarrier. You can also opt not to transmit anything on specific subcarriers, where you know there is a constant deep fade. Oct 1, 2020 at 19:35
• In practical systems, the complex-valued IFFT sequence needs to be pulse-shaped (SQRC or similar) and IQ up-converted (modulated) to the carrier frequency. Yes, you can treat the OFDM signal as a sum of IQ modulated single carrier signals as long as you choose the correct subcarrier distance to guaranty orthogonality. In fact, this is how the first OFDM system was implemented (before DSPs existed). Oct 1, 2020 at 19:42
• Harris - your help and information and time has been absolutely invaluable. Thanks very much!! For a very long time, I was wondering what practical advantage there would be between transmitting the original QAM vector sequences, as compared with transmitting the IFFT sequence (both cases using CP for handling multipath etc). Your mention of bit loading and power loading helped tremendously. Thanks Harris, and all the great people here that helped get some important details cleared up so well. Greatly appreciated. Oct 1, 2020 at 22:53