Briefly, can anyone explain to me what is the difference between (Sample Timing Offset), (Carrier Frequency offset), and (Sampling Frequency Offset)?

and is Sampling Frequency Offset (SFO) like STO or like CFO? I found that some papers say SFO is STO, while others say SFO is like CFO so I am a bit confused! I would appreciate it if someone explains CFO, STO, SFO thanks in advance


I would have the easiest time explaining these briefly with the aid of an eye diagram as depicted in the graphic below.

Eye Diagram

In this example we see the constellation pattern of a raised cosine QPSK waveform on the complex plane on the left with I as the real axis and Q as the imaginary axis, and the resulting eye diagram pattern of the resulting real (I) and imaginary (Q) waveforms each on the right. The eye diagram is what we would see if we triggered an oscilloscope to the symbol clock with infinite persistence, and here we see a 3 symbols duration superimposed over many symbols.

Notice the red dots on the left-- these are samples with no Sample Timing Offset, corresponding to the time locations on the right where the vertical variation between all the samples is minimized-- the ideal time to sample the waveform in order to make the final decisions on what data was transmitted. As we shift that sample clock to the right or left (Sample Time Offset), the vertical variation will increase, reducing our margin against noise to make correct decisions.

This constellation as shown is with no Carrier Frequency Offset (The waveform is centered at DC, the baseband signal). If there was a Carrier Frequency Offset, the entire constellation would rotate at the rate of that Offset-- In fact we measure the rate of rotation of the red dots to determine and correct for carrier offset error.

Finally Sampling Frequency Offset would be if the sampling clock itself had an error in frequency. This will change the effective Sample Time Offset and Carrier Frequency Offset proportional to the sampling rate error. If the sampling rate error was 1ppm, then the Sampling Frequency Offset and Carrier Frequency Offset as observed would also be in error by 1ppm. (For example, a 10MSps sampling clock with a 1 ppm error would have a 10 Hz error. If the observed carrier offset was 1 Hz with the 10MSps clock with no error, the carrier offset as observed would have an additional error of 1e-6 Hz.)

Note that in OFDM, a Sampling Time Offset can produce results similar to Sampling Frequency Offset in that the individual constellations in each sub-carrier will rotate from sub-carrier to sub-carrier (so a rotation in frequency rather than a rotation in time). This is because a time offset is a linear phase in the frequency domain. So pay very close attention to what domain you are in: If you see a rotation in the frequency domain, this is due to an offset in time. If you see a rotation in the time domain (on a single sub-carrier from sample to sample in time) then this is due to an offset in frequency.

  • $\begingroup$ Thanks a lot, I thought STO is SFO, now I know that SFO is a mixture of STO and CFO $\endgroup$ – Amro Goneim Dec 25 '19 at 8:46

Sampling Time offset is the disparity is the starting point of sampling, ie , sampling did not start at point "0".

Sampling frequency offset (SFO) is the error in the practical sampling frequency from what is required in paper. It is mainly due to practical limitations in generating perfect sampling pulses.

Carrier frequency offset (CFO) is the error in frequency generated by the local oscillator from what is ideally required. In this case, down-conversion is imperfect and causes performance degradation.


To my understanding,
CFO is
SFO is
So they are different. Could you explain that SFO is a mixture of STO and CFO?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.