Data symbols riding on the subcarriers experience a rotation due to residual carrier frequency offset and sampling frequency offset

Effect of a Sampling Clock Offset on an OFDM Waveform

In an earlier article on the impact of a sampling clock offset on a single-carrier waveform, we explained the nature of a Sampling Clock Offset (SCO), i.e., a difference in sampling clock frequency between the Tx and the Rx. This is also known as a symbol timing frequency offset. The meaning of a sampling clock offset for a slow Rx clock that skips some samples within an interval is visually demonstrated in the figure below.

Due to a Sampling Clock Offset (SCO), a slow Rx clock skips some samples

In the context of OFDM systems, a previous article describes how the normalized Carrier Frequency Offset (CFO) and the normalized Symbol Timing Offset (STO) affect the FFT input at the Rx. Now assuming a successful timing synchronization, we study the impact of the residual normalized CFO and a normalized Sampling Clock Offset (nSCO).

For a Rx sampling the waveform at sampling intervals of ˜TS instead of TS, a sampling clock offset and its normalized versions are defined as
\begin{equation*} \xi = \tilde T_S – T_S, \qquad \xi_0 = \frac{\tilde T_S – T_S}{T_S} = \frac{\xi}{T_S} \end{equation*}

The frequency of each OFDM subcarrier k is given by F_k=k\Delta_F where \Delta_F is the subcarrier spacing. After the introduction of a residual CFO F_\Delta and sampling at t=n\tilde T_S, we get
\begin{equation*} \begin{aligned} 2\pi(F_k +F_{\Delta})t\big|_{t=n\tilde T_S} \quad &= 2\pi\left(F_k + F_{\Delta}\right)n\tilde T_S \\ &= 2\pi\left(F_k + F_{\Delta}\right)\left(n\tilde T_S+nT_S-nT_S\right) \\ &= 2\pi\left(F_k + F_{\Delta}\right) \left(nT_S + n\frac{\tilde T_S-T_S}{T_S}T_S\right) \\ &= 2\pi\left(F_k + F_{\Delta}\right) \left(n + n\xi_0\right)T_S \\ &= 2\pi\frac{k\Delta_F + F_{\Delta}}{F_S} \left(1 + \xi_0\right)n \\ &= \frac{2\pi}{N}\left(k + \nu_0\right) \left(1 + \xi_0\right)n \end{aligned} \end{equation*}

where we have used a sampling rate of F_S = N \Delta_F. The quantity \nu_0 is defined as a normalized residual carrier frequency offset, i.e., the residual CFO F_{\Delta} normalized by the subcarrier spacing \Delta_F.
\nu_0 = \frac{F_{\Delta}}{\Delta_F}

Next, this argument can be written as
\begin{align} 2\pi(F_k +F_{\Delta})t\big|_{t=n\tilde T_S} ~~ &= \frac{2\pi}{N}\left(k + \nu_0\right) \left(1 + \xi_0\right)n\nonumber \\ &= \frac{2\pi}{N} \left\{\underbrace{kn}_{\text{Term 1}} + \underbrace{\nu_0(1+\xi_0) n}_{\text{Term 2}} + \underbrace{(k\xi_0)n}_{\text{Term 3}} \right\}\label{eqOFDMntsd} \end{align}
Notice that the index n is common to all the terms above, as opposed to the situation we encountered in timing offset synchronization before. As we saw in that case, these terms are handled as follows.

The DFT Argument


From the definition of the Discrete Fourier Transform (DFT),
X[k]=\sum_{n=0}^{N-1}x[n]e^{-j2\pi\frac{k}{N}n}

we observe that the FFT at the Rx consists of subcarriers with the arguments -kn which simply cancels out Term 1 above.

Residual CFO Superimposed by the Drifting Clock


Being a function of time n, term 2 appears as a CFO equal to \nu_0(1+\xi_0) at the FFT output. The part \nu_0\cdot\xi_0 is in addition to the original CFO \nu_0 and is very similar to the Doppler shift. Here, it is actually superimposed over the CFO by a moving or drifting Rx clock.

Impact of Sampling Clock Offset


This leaves Term 3 as a function of both k and n. The data symbols at each subcarrier k get rotated by the product of this index k varying from -N/2 to N/2-1 with the SCO \xi_0 and this causes the constellation to rotate (recall that the constellation is in frequency domain in OFDM systems).

Symbol Timing and Sampling Clock


In the scenario of a timing offset in OFDM systems, this rotation was equal to k times the normalized timing offset and hence the same for each OFDM symbol.

Here, it is different from one OFDM symbol to the next due to the presence of the factor n in the expression (k\xi_0)n, i.e., it also depends on the OFDM symbol number in the frame. For example, symbol 3 will experience a different amount of SCO induced rotation as compared to symbol 100!

Consider the relation between the FFT size N, cyclic prefix length N and the length of an OFDM symbol N_{\text{OFDM}}.
N_{\text{OFDM}} = N+N_{CP}

Here, sample number n is equal to mN_{\text{OFDM}}+N_{CP} at the start of m^{th} OFDM symbol. Let us plug n=mN_{\text{OFDM}}+N_{CP} in Eq (\ref{eqOFDMntsd}) above. After removal of Term 1 through an FFT at the Rx, we get
\begin{equation*} \begin{aligned} \text{Phase rotation} &= \frac{2\pi}{N}\Big\{\nu_0(1+\xi_0)+k\xi_0\Big\}n \\ &= \frac{2\pi}{N}\Big\{\nu_0(1+\xi_0)+k\xi_0\Big\}\left(mN_{\text{OFDM}} + N_{CP}\right) \end{aligned} \end{equation*}

In this discussion, we are ignoring extra noise arising from ICI and/or ISI for the sake of simplicity.

We can simplify our view of this effect if we only consider this phase rotation from the previous OFDM symbol to the present and denote it by \varphi_\Delta[m]. Assuming the same data symbols a_{m-1}[k] = a_m[k] (which is the case for pilot subcarriers) and slowly varying channel H_{m-1}[k] \approx H_m[k],
\begin{align*} \varphi_\Delta[m] &= \frac{2\pi}{N}\Big\{\nu_0(1+\xi_0)+k\xi_0\Big\}\Big\{mN_{\text{OFDM}} + N_{CP}\Big\} ~- \\ & \hspace{1in} \frac{2\pi}{N}\Big\{\nu_0(1+\xi_0)+k\xi_0\Big\}\Big\{(m-1)N_{\text{OFDM}} + N_{CP}\Big\} \\ &= \frac{2\pi}{N}\Big\{\nu_0(1+\xi_0)+k\xi_0\Big\}N_{\text{OFDM}} \\ &= 2\pi\Big\{\nu_0(1+\xi_0)+k\xi_0\Big\}\frac{N + N_{CP}}{N} \end{align*}

Let us denote
\begin{equation*} \lambda = \frac{N+N_{CP}}{N} \end{equation*}

so that the above equation becomes
\begin{equation}\label{eqOFDMphaseRotation} \varphi_\Delta[m] = 2\pi \lambda \Big\{\nu_0(1+\xi_0)+k\xi_0\Big\} \end{equation}

In other words, \varphi_\Delta[m] \propto k\xi_0. While this looks similar to the STO case where the phase rotation was equal to k times the normalized symbol timing offset, the difference is that k\xi_0 is just the rotation between two consecutive OFDM symbols and keeps increasing with time.

Ref. [1] draws the data symbols rotation at a subcarrier level corresponding to \nu_0(1+\xi_0)+k\xi_0 in an elegant manner which is the inspiration behind the figure below. Observe that the constant frequency shift is given by \nu_0(1+\xi_0) while maximum rotation is experienced by the subcarriers at the edges of the spectrum, namely k=-N/2 and k=N/2-1, which are the leftmost and rightmost subcarriers, respectively.

Data symbols riding on the subcarriers experience a rotation due to residual carrier frequency offset and sampling frequency offset

In addition to the above, there is a sliding of the Rx FFT window due to the SCO between the Tx and Rx clocks. The details of such a window drift are similar to what was encountered in the context of single-carrier systems. A similar timing locked loop can stuff or delete an extra sample while slowly correcting for the SCO. For this purpose, an SCO error detector is needed. The documentation of QIRX software defined radio presents an excellent description of OFDM in general and a real world example of sampling clock misalignment in particular.

As a final remark, recall that we have included the effect of a residual carrier frequency offset here. One question is that why a perfect carrier frequency offset cannot be assumed in the system model (like the symbol timing offset). Recall from the timing synchronization problem in single-carrier systems that timing needs to be continuously adjusted and can almost never be set and done. Similar is the case with the frequency offset in an OFDM systems and a residual carrier frequency offset still needs to be included.

References


[1] M. Speth, S.A. Fechtel, G. Fock, H. Meyr, Optimum receiver design for wireless broad-band systems using OFDM – I, IEEE Transactions on Communications, Volume: 47, Issue: 11, November 1999.

Leave a Reply; You can use HTML (<>) or Latex ($$)

Your email address will not be published. Required fields are marked *