0

Although the question seems similar to this one HERE, but what I want to ask about is little bit different.

Assume we have a signal $X$ whose length is $N$x$1$, we convert that signal into time domain using bit reversed order FFT as: $x = F^{'b}X = p*F'*X$ , where $F^{'b}$ is the inversed bit-reversed order FFT matrix ($F^{b}$). $p$ is row permucation matrix and $F'$ is the inversed DFT matrix.

A cyclic prefix is added into the signal $x$ having $x_{cp} = [cp; x]$. Then that signal is transmitted over a frequency selective channel $h$ resulting $y_{cp} = h*x_{cp}$ where $*$ denotes to the circular convolution operation.

The CP is first removed from the signal $y_{cp}$ resulting the signal $y$.

Based on my analysis, when transforming the signal $y$ into frequency domain using $F^{b}$, as following $Y = F^{b}y = p'*F*y$, the channel is diagonalized where I can get the channel $h = F^{'b}(Y./X)$ it means in that case I use the whole signal $X$ as pilots.

The problem I am facing, when using such pilots from $X$, let's be $X_{1:4:end}$, and then perform the same steps, the results of $h = F_2^{'b}(Y_{1:4:end} ./ X_{1:4:end})$ is not equivalent to the channel !! where $F_2^{'b}$ is similar to $F^{'b}$ but with size similar to $(Y_{1:4:end}/X_{1:4:end})$ and $./$ is element wise division.

$NP$: When performing these steps with the normal $FFT$ matrix, everything is working well and I can recover the exact channel using the pilots data.

New_student
  • 609
  • 3
  • 14
  • I think this will be clearer for you if you write your $F^b$ (and $F^{'b}$) as combination of DFT matrix (or IDFT matrix) and permutation matrix! – Marcus Müller Mar 31 '21 at 09:24
  • I modified the question however I think it became little bit complicated to understand it now since more matrices have been added into it. – New_student Mar 31 '21 at 09:40
  • writing things down as matrix operations makes this a lot easier, not harder! – Marcus Müller Mar 31 '21 at 09:40

1 Answers1

1

So, writing your $F^b$ and $F^{'b}$ as permutations $p, p^{-1}$ of the DFT matrix $F$ , IDFT $F'$, and the cyclic prefixing and removal also as Matrix operation $P$, $R$ (which boils down to cyclically extended or truncated identity matrices), and the circular convolution with the channel impulse response as circulant matrix $C$,

\begin{align} x&=F^{'b}X=p F' X\\ x_{cp} &= PpF' X\\ y_{cp} &= y*x_{cp} \\ y&=R(y*x_{cp})= CpF'X\\ Y&=F^By \\ &= p'FCpF'X & F, F' \text{ are symmetric matrices!}\\ &=p'FCF'pX\\ &=p'\underbrace{FCF'}_{\text{IDFT-Channel-DFT}}\underbrace{pX}_{\text{permuted symbols}} \end{align}

So, all that's really happening here mathematically is that you permute the symbols before transmission, then de-permute them at the receiver. In between, you get normal OFDM. There's no advantage or disadvantage to the permutation w.r.t. to channel diagonalizability, but we've arrived here in your previous question already.

Now, for channel estimation, you'll want to insert pilots such that they make sense for the central $FCF'$ part – in other words, you need to think about where you'd want your normal OFDM system to have these pilots, and then shift these positions according to your $p$.

Of course, the channel you estimate left of your final reordering isn't the same as the channel you estimate with OFDM, it's a permutation. As shown above, it's however "just" a permutation, there's nothing in the maths here that changes anything about the channels properties at all, so if your results aren't the same as for straightforward OFDM, then you've got an implementation bug somewhere.

Marcus Müller
  • 24,744
  • 4
  • 29
  • 50
  • thank you so much, but I have a question, how did you get $p'FCF'pX$ from $p'FCpF'X$ ? Do you mean that $F'p$ = $pF'$ ? – New_student Mar 31 '21 at 16:32
  • Because the matrix is symmetric – it doesn't matter whether we permute rows or columns. – Marcus Müller Mar 31 '21 at 23:25
  • Yes, but I get that if we have permutation matrix $p = [1 ,0, 0, 0; 0, 0, 1, 0; 0, 1, 0, 0; 0, 0, 0, 1];$ and DFT matrix $F = dftmtx(4)/sqrt(4); $ , why $Fp - pF$ is not zero ? – New_student Apr 01 '21 at 02:09
  • if your DFT matrix isn't symmetric, then you've got a bug in your DFT matrix. Permuting columns and permuting rows is the same in a symmetric matrix. – Marcus Müller Apr 01 '21 at 09:31
  • So, the same question will be raised again, how did you get $p'FCF'pX$ from $p'FCpF'X$ ? – New_student Apr 01 '21 at 12:56
  • as I said twice already, $F'$ is symmetric. Whether you left-apply a row permutation or right-apply the same permutation, thus permuting the columns, makes no difference. – Marcus Müller Apr 01 '21 at 15:41
  • Sorry, maybe I couldn't understand the difference between the DFT matrix and $F$ matrix. I mean how can I generate $F$ matrix in Matlab? – New_student Apr 02 '21 at 06:07
  • it is the DFT matrix. The DFT matrix is symmetric. – Marcus Müller Apr 02 '21 at 12:30
  • Yes, I got it. thank you. When mapping the pilots in $X$ in such way to make the equation above similar to OFDM, it's ok. but I am trying now to fixe the position of pilots in $X$ e.g., $X_{1:4:end}$ should be the pilot then look for the corresponding values in $Y$ to recover the channel. – New_student Apr 02 '21 at 13:37
  • then you need to apply the reverse permutation. This is really no magic. – Marcus Müller Apr 02 '21 at 14:48
  • You mean reverse permutation for $Y$ ?? but it will be be $p'Y = p' FCF' pX$, it means it will become as it was before removing the permutation matrix ! – New_student Apr 02 '21 at 15:50