DSPRelated.com
Forums

Carrier frequency offset (CFO) in OFDM with the real part of IFFT

Started by ziwukim 5 days ago9 replieslatest reply 3 days ago125 views

In the IEEE 1902.2 narrow-band OFDM PLC standard, the IFFT is performed but only the real parts are taken for the transmission while discarding the imaginary parts are discarded. I understand this process makes the signal to be "analytic" and full information can be recovered after FFT. I found a previous discussion here https://www.dsprelated.com/thread/13511/recover-si....

A question is when is carrier frequency offset (CFO) estimation supposed to be performed at the receiver? A typical OFDM block shows CFO is done before FFT. However, received signal only includes real parts and full information could be available after FFT. I'm using a cross-correlation method to detect the preamble. Without the imaginary parts, I only get the amount of frequency offset without knowing a sign (e.g., a positive frequency offset or a negative frequency offset). Would CFO estimation after FFT work? Any suggestion or insight would be appreciated.

[ - ]
Reply by SlartibartfastMay 7, 2025

I'm not very familiar with 1902.2, but generally in OFDM the received signal is mixed to a complex baseband or complex IF before synchronization.  This allows the preamble (and/or pilot tones) to be used for both initial timing and frequency offset estimation, before the FFT.   It is important to have timing and frequency offsets removed before the FFT to optimize performance.  If the subcarriers are not aligned with the FFT frequency bins there can be significant Inter-Carrier Interference (ICI), and timing offsets can create significant subcarrier phase errors and potentially inter-symbol interference (ISI).

[ - ]
Reply by Detlef _AMay 7, 2025

Hi,

real/complex downnmixing has nothing to do with CFO.

If you downmix with just a real LO you do not loose information. You use a single ADC with double samplerate. 

You use the pilot tones to adjust for CFO. 

If you see slipping phases of the pilot tones

- adjust LO

- or adjust ADC samplerate

- or digitally adjust after sampling with polyphase filters or farrow structures

- or digitally adjust for the rotating constellation diagram

I'm not aware of CFO detection with correlation and preamble. You are limited to one sample, so this can only be a raw guess. 

You may use it for channel initialization when you are not yet in syncronous exchange with the partner, as far as I know and did.

Cheers

Detlef  

[ - ]
Reply by SlartibartfastMay 7, 2025

Complex downconversion allows a number of advantages, including direct conversion and elimination of mixing images, which simplifies filtering.  It also allows the use of straightforward complex-data algorithms for frequency detection and discrimination in order to remove frequency offset.

This is often done with preambles, e.g., LTE, WiFi, etc., etc., so that synchronization is complete or nearly complete before the first OFDM data symbol arrives.   This is also done in continuous systems with framing symbols and pilot tones, etc. 

[ - ]
Reply by ziwukimMay 8, 2025

Thanks for the reply, Detlef! I forgot to use the pilot tones and your suggestions are helpful. Thanks!

[ - ]
Reply by ziwukimMay 8, 2025

Thanks Slartibartfast! Yes - That's what I thought. 

[ - ]
Reply by kazMay 8, 2025

I don't think discarding the imaginary makes signal analytic as you are not zeroing the negative frequencies but you are zeroing the imaginary and the imaginary does not map to one side of spectrum. 

I am actually curious how this iFFT works. If input to iFFT is complex but output is real only then I guess this real only output carries information on both input real and input imaginary due to internal complex iFFT processing. However, discarding imaginary output means spectrum is mirrored and I don't see how FFT will reverse the process to get the subcarriers. We need solid explanation first. Do you have a copy of the standards.

[ - ]
Reply by ziwukimMay 8, 2025

I'm not sure if I can upload a copy of the standard in a public space. You can get a copy of it from the IEEE (https://standards.ieee.org/ieee/1901.2/4833/) or might be lucky to find one on the web for free. There is the spec how to construct transmit samples by taking the real part only after IFFT (copied the relevant figure below). However, there is no specification for the receiver (which is natural). 


ifft_69163.png

[ - ]
Reply by kazMay 8, 2025

My view is that from your iFFT indices (assuming they are direct indices for iFFT without fftshift):

your subcarriers start at index 34 until index 104

The iFFT size is 256 so the midpoint of 128 separates positive frequencies from negative ones.

This means your subcarriers fall only on positive frequencies. Thus it is possible to discard the imaginary but in channel and at receiver you get spectrum duplicated. It is likely filtered off before sending it to channel.

Thus you are not losing any information as you are concerned about positive frequencies only. The fft will reverse the real only input and will get the information back.


edit:

run this code in Octave/Matlab and see:


x = zeros(1,256);

x(34:104) = randn(1,71)+j*randn(1,71);

y = ifft(x);

Rx = fft(real(y));

plot(abs(Rx))

hold

plot(abs(x)/2,'g--')


[ - ]
Reply by ziwukimMay 8, 2025

Yes, full information can be recovered after FFT. A problem I have is estimating CFO (which requires complex data for accurate CFO estimation) before performing FFT.

[ - ]
Reply by kazMay 9, 2025

Since your concern is CFO then it implies your Tx upconverts signal then your receiver needs to downconvert by mixing down to dc. This creates I/Q before FFT.

If you are just modelling and have real only and your CFO needs I/Q then it sounds strange that it depends on "nothing" in the imaginary. In such case just add "zero" as your imaginary part.