«

»

Jan 28

How the Cyclic Prefix (CP) works in OFDM – Part II – The Theory.

This is a follow up to the Cyclic Prefix (CP) I did here.
There I gave a graphical explanation and here I will discuss how it happens theoretically. I recently came across the derivation in a text [1]. So here goes.

Considering an N-point FFT system, a block of data points
\textbf{X}=[x_0 \quad x_1 \quad \ldots \quad x_{N-1}],
is to be transmitted during a symbol time. The data vector \textbf{x} is sent to an IFFT module. The operation of the FFT, i.e. the discrete Fourier Transformation (DFT) is given by the following matrix:
[\textbf{F}]_{k,m} = \frac{1}{\sqrt{N}} e^{-j2\pi\frac{km}{N}}, k,m=0,1,\ldots.N-1
where (k,m) denotes the (k+1, m+1)-th entry in the DFT matrix \textbf{F}.

Then the transmitted data vector after the IFFT operation is.
\textbf{x}=\textbf{F}^H\textbf{X}.
The normalization factor \frac{1}{\sqrt{N}} takes care of the total bit energy as it is the same as the original vector \textbf{x} because \textbf{F}\textbf{F}^H=\textbf{F}^H\textbf{F}.

Assuming the channel length (number of multipaths) is L, the OFDM symbol requires a CP of length N_{CP}\geqslant (L-1). Then the total symbol length is \bar{N}=N+N_{CP}.

After the (linear) convolution through the channel and removal of the CP, the received signal (at the input to the FFT) can be written,

\textbf{y}=\textbf{H}\textbf{x} + \textbf{n}

where \textbf{n} is the AWGN noise vector. The channel matrix \textbf{H} is a circulant matrix due to the insertion of the CP in the transmitted data vector and can be written as,

\textbf{H}=\begin{bmatrix} h_0 & h_{N-1} & \cdots & h_1 \\ h_1 & h_0 & \cdots &h_2 \\ \vdots & \vdots & \ddots & \vdots \\ h_{N-1} & h_{N-2} & \cdots & h_0 \end{bmatrix}
Here h_i are the channel impulse responses and h_i=0 for L\leqslant i \leqslant (N-1) .

Circulant matrices have an important property:

The eigenvectors of a circulant matrix of a given size are the columns of the discrete Fourier transform matrix of the same size [Wikipedia].

So we have,

\textbf{H}=\textbf{F}^H \textbf{H}_{\mathsf{Eig}}\textbf{F}

Thus,

\textbf{F}\textbf{H}\textbf{F}^H = \textbf{H}_{\mathsf{Eig}} =\mathsf{diag}(H_0, H_1, ldots, H_{N-1})

where,

H_n =\sum_{l=0}^{L-1} h_l e^{-j2\pi\frac{nl}{N}}, n=0,1,\ldots.N-1

Therefore, H_n is just the frequency response of the n-th subcarrier and hence, the eigenvalues of \textbf{H} are the frequency response of the channel.

Then, going back to the received signal vector,

\textbf{y}=\textbf{H}\textbf{x} + \textbf{n}

Sending this received data vector through the DFT,

\begin{array} {lcl}\textbf{Y}&=&\textbf{F}\textbf{y} \\ & = &\textbf{F}(\textbf{H}\textbf{x} + \textbf{n}) \\ &=& \textbf{F}(\textbf{H}\textbf{F}^H\textbf{X}+ \textbf{n} \\ &=& \textbf{F}\textbf{H}\textbf{F}^H\textbf{X}+\textbf{F}\textbf{n} \\ &=& \overline{\textbf{H}}\textbf{X} + \tilde{\textbf{n}}\\ \end{array}

Here \overline{\textbf{H}}= \textbf{H}_{\mathsf{Eig}} and that the statistical properties of \textbf{n}=\textbf{F}\textbf{n}=\tilde{\textbf{n}}.

So you see how the insertion of the CP helps OFDM receivers easily decode the transmitted date vector by a simple inverse DFT operation (a single-tap equalization).


6 comments

Skip to comment form

  1. ga

    Thank you very much for this great explanations about cp. I have been looking for something like that in many books and web sites.
    Which one is the reference [1] you mentioned?
    Best regards

  2. admin

    Welcome.
    The reference is:
    “Adaptive and Iterative Signal Processing in Communications” by Jinho Choi.

    Reason I wanted to publish this was also because not many texts on OFDM discuss all the purposes of CP (they only mention ISI elimination) and this is the only book I came across the theoretical derivation for the circular convolution.

  3. kal

    thanks for the post. it give me clear insight another perspective of cyclic prefix. may i know what the reference that u refer in previous and this post. thanks.

  4. Arun

    Thanks, made my understanding a lot better!

    Arun

  5. Vishnu

    Hello sir, I am doing Mtech thesis on SCFDMA.In that I have to implement Tomlinson Harashima precoding , I got a paper for simulation,but in that they had not mention about channel impulsse response, which is very much important in this case, what can I do ?Is there any method for calculating h(n) for a multipath fading channel,please help me

  6. pościel

    Bardzo mnie to zaciekawiło,będę tu zaglądać

%d bloggers like this: