LMMSE estimation

Started by June 14, 2006
Hello ALL,

I'm trying to simulate a LMMSE equalizer for OFDM signal.

The general equation requires the calculation of  (X.X^H)  where X is
the transmitted signal OR >>-----> X is the diagonal matrix containing
the transmitted signal..!

And  X^H is the hermitian of X (hermitian is the conjugate transpose of
the matrix)

I'm actually using the DL preamble to estimate the channel (as
HIPERLAN/2 says) so >>---> (X) would equal to this preamble vector..
Example : DL_Preamble = [1 -1 -1 1 -1 1 1 -1]  "a vector of the
subcarriers"
then X =  [1 -1 -1 1 -1 1 1 -1];
the diagonal matrix would be :
[1  0   0  0  0   0  0   0
0  -1  0  0  0   0  0   0
0  0  -1  0  0   0  0   0
0  0   0  1  0   0  0   0
0  0   0  0  -1  0  0   0
0  0   0  0  0   1  0   0
0  0   0  0  0   0  1   0
0  0   0  0  0   0  0  -1];

the matrix multiplication of this matrix and it's hermitian could not
be done on MATLAB .. it gives a matrix with "Inf"  elements...!

Could anybody try this simple operation and help please...

How can I calculate this term in order to perform a LMMSE equalizer..

Thanks a lot

Hany

I'm sorry for this mistake but actually what I ment is that :
the value of the inverse of (X.X^H) = (X.X^H)^ -1 gives a matrix with
"Inf"  elements...

If anybody could help concerning that, it would be very appreciated.

Thanks

Hany wrote:
> Hello ALL, > > I'm trying to simulate a LMMSE equalizer for OFDM signal. > > The general equation requires the calculation of (X.X^H) where X is > the transmitted signal OR >>-----> X is the diagonal matrix containing > the transmitted signal..! > > And X^H is the hermitian of X (hermitian is the conjugate transpose of > the matrix) > > I'm actually using the DL preamble to estimate the channel (as > HIPERLAN/2 says) so >>---> (X) would equal to this preamble vector.. > Example : DL_Preamble = [1 -1 -1 1 -1 1 1 -1] "a vector of the > subcarriers" > then X = [1 -1 -1 1 -1 1 1 -1]; > the diagonal matrix would be : > [1 0 0 0 0 0 0 0 > 0 -1 0 0 0 0 0 0 > 0 0 -1 0 0 0 0 0 > 0 0 0 1 0 0 0 0 > 0 0 0 0 -1 0 0 0 > 0 0 0 0 0 1 0 0 > 0 0 0 0 0 0 1 0 > 0 0 0 0 0 0 0 -1]; > > the matrix multiplication of this matrix and it's hermitian could not > be done on MATLAB .. it gives a matrix with "Inf" elements...! > > Could anybody try this simple operation and help please... > > How can I calculate this term in order to perform a LMMSE equalizer.. > > Thanks a lot > > Hany
If X is a diagonal matrix as you have given below then surely XX^H is
an identity matrix and its inverse is the same identity matrix. It
would probably be more helpful if you paste the segment of your Matlab
code here.

Alan T

Hany wrote:
> I'm sorry for this mistake but actually what I ment is that : > the value of the inverse of (X.X^H) = (X.X^H)^ -1 gives a matrix with > "Inf" elements... > > If anybody could help concerning that, it would be very appreciated. > > Thanks > > > > Hany wrote: > > Hello ALL, > > > > I'm trying to simulate a LMMSE equalizer for OFDM signal. > > > > The general equation requires the calculation of (X.X^H) where X is > > the transmitted signal OR >>-----> X is the diagonal matrix containing > > the transmitted signal..! > > > > And X^H is the hermitian of X (hermitian is the conjugate transpose of > > the matrix) > > > > I'm actually using the DL preamble to estimate the channel (as > > HIPERLAN/2 says) so >>---> (X) would equal to this preamble vector.. > > Example : DL_Preamble = [1 -1 -1 1 -1 1 1 -1] "a vector of the > > subcarriers" > > then X = [1 -1 -1 1 -1 1 1 -1]; > > the diagonal matrix would be : > > [1 0 0 0 0 0 0 0 > > 0 -1 0 0 0 0 0 0 > > 0 0 -1 0 0 0 0 0 > > 0 0 0 1 0 0 0 0 > > 0 0 0 0 -1 0 0 0 > > 0 0 0 0 0 1 0 0 > > 0 0 0 0 0 0 1 0 > > 0 0 0 0 0 0 0 -1]; > > > > the matrix multiplication of this matrix and it's hermitian could not > > be done on MATLAB .. it gives a matrix with "Inf" elements...! > > > > Could anybody try this simple operation and help please... > > > > How can I calculate this term in order to perform a LMMSE equalizer.. > > > > Thanks a lot > > > > Hany

You might want to try DFT based interpolation too, I have just
implemented it, seems to work fine

"DFT-based channel estimation in 2D-pilot-symbol-aided OFDM wireless
systems"
Fernandez-Getino Garcia, M.J.   Paez-Borrallo, J.M.   Zazo, S.
Vehicular Technology Conference, 2001. VTC 2001 Spring. IEEE VTS 53rd

Regards,
Arthur,

Hany wrote:
> Hello ALL, > > I'm trying to simulate a LMMSE equalizer for OFDM signal. > > The general equation requires the calculation of (X.X^H) where X is > the transmitted signal OR >>-----> X is the diagonal matrix containing > the transmitted signal..! > > And X^H is the hermitian of X (hermitian is the conjugate transpose of > the matrix) > > I'm actually using the DL preamble to estimate the channel (as > HIPERLAN/2 says) so >>---> (X) would equal to this preamble vector.. > Example : DL_Preamble = [1 -1 -1 1 -1 1 1 -1] "a vector of the > subcarriers" > then X = [1 -1 -1 1 -1 1 1 -1]; > the diagonal matrix would be : > [1 0 0 0 0 0 0 0 > 0 -1 0 0 0 0 0 0 > 0 0 -1 0 0 0 0 0 > 0 0 0 1 0 0 0 0 > 0 0 0 0 -1 0 0 0 > 0 0 0 0 0 1 0 0 > 0 0 0 0 0 0 1 0 > 0 0 0 0 0 0 0 -1]; > > the matrix multiplication of this matrix and it's hermitian could not > be done on MATLAB .. it gives a matrix with "Inf" elements...! > > Could anybody try this simple operation and help please... > > How can I calculate this term in order to perform a LMMSE equalizer.. > > Thanks a lot > > Hany
But actually I'm following & implementing HIPERLAN/2 standard and hence
I'm using a preamble to estimate the channel .. I didn't got through
the tracking using pilots yet.

Thanks again

Hany

Arthur wrote:
> You might want to try DFT based interpolation too, I have just > implemented it, seems to work fine > > "DFT-based channel estimation in 2D-pilot-symbol-aided OFDM wireless > systems" > Fernandez-Getino Garcia, M.J. Paez-Borrallo, J.M. Zazo, S. > Vehicular Technology Conference, 2001. VTC 2001 Spring. IEEE VTS 53rd > > Regards, > Arthur, > > Hany wrote: > > Hello ALL, > > > > I'm trying to simulate a LMMSE equalizer for OFDM signal. > > > > The general equation requires the calculation of (X.X^H) where X is > > the transmitted signal OR >>-----> X is the diagonal matrix containing > > the transmitted signal..! > > > > And X^H is the hermitian of X (hermitian is the conjugate transpose of > > the matrix) > > > > I'm actually using the DL preamble to estimate the channel (as > > HIPERLAN/2 says) so >>---> (X) would equal to this preamble vector.. > > Example : DL_Preamble = [1 -1 -1 1 -1 1 1 -1] "a vector of the > > subcarriers" > > then X = [1 -1 -1 1 -1 1 1 -1]; > > the diagonal matrix would be : > > [1 0 0 0 0 0 0 0 > > 0 -1 0 0 0 0 0 0 > > 0 0 -1 0 0 0 0 0 > > 0 0 0 1 0 0 0 0 > > 0 0 0 0 -1 0 0 0 > > 0 0 0 0 0 1 0 0 > > 0 0 0 0 0 0 1 0 > > 0 0 0 0 0 0 0 -1]; > > > > the matrix multiplication of this matrix and it's hermitian could not > > be done on MATLAB .. it gives a matrix with "Inf" elements...! > > > > Could anybody try this simple operation and help please... > > > > How can I calculate this term in order to perform a LMMSE equalizer.. > > > > Thanks a lot > > > > Hany
I have also implemented IEEE802.11a channel estimation with preamble.
it was pretty simple, which does not need LMMSE complex technique. The
preamble is transmitted over 2 OFDM symbol, so

H = (X1+X2) * conj(X) / abs(X)^2

where H is the estimated channel information, X1 and X2 is the received
preamble after FFT operation in OFDM receiver, and X is the original
transmitted preamble before the  IFFT operation in OFDM transmitter.

cheers,
Arthur.

Hany wrote:

> Thanks alot Arthur for your reply. > But actually I'm following & implementing HIPERLAN/2 standard and hence > I'm using a preamble to estimate the channel .. I didn't got through > the tracking using pilots yet. > > Thanks again > > Hany > > > Arthur wrote: > > You might want to try DFT based interpolation too, I have just > > implemented it, seems to work fine > > > > "DFT-based channel estimation in 2D-pilot-symbol-aided OFDM wireless > > systems" > > Fernandez-Getino Garcia, M.J. Paez-Borrallo, J.M. Zazo, S. > > Vehicular Technology Conference, 2001. VTC 2001 Spring. IEEE VTS 53rd > > > > Regards, > > Arthur, > > > > Hany wrote: > > > Hello ALL, > > > > > > I'm trying to simulate a LMMSE equalizer for OFDM signal. > > > > > > The general equation requires the calculation of (X.X^H) where X is > > > the transmitted signal OR >>-----> X is the diagonal matrix containing > > > the transmitted signal..! > > > > > > And X^H is the hermitian of X (hermitian is the conjugate transpose of > > > the matrix) > > > > > > I'm actually using the DL preamble to estimate the channel (as > > > HIPERLAN/2 says) so >>---> (X) would equal to this preamble vector.. > > > Example : DL_Preamble = [1 -1 -1 1 -1 1 1 -1] "a vector of the > > > subcarriers" > > > then X = [1 -1 -1 1 -1 1 1 -1]; > > > the diagonal matrix would be : > > > [1 0 0 0 0 0 0 0 > > > 0 -1 0 0 0 0 0 0 > > > 0 0 -1 0 0 0 0 0 > > > 0 0 0 1 0 0 0 0 > > > 0 0 0 0 -1 0 0 0 > > > 0 0 0 0 0 1 0 0 > > > 0 0 0 0 0 0 1 0 > > > 0 0 0 0 0 0 0 -1]; > > > > > > the matrix multiplication of this matrix and it's hermitian could not > > > be done on MATLAB .. it gives a matrix with "Inf" elements...! > > > > > > Could anybody try this simple operation and help please... > > > > > > How can I calculate this term in order to perform a LMMSE equalizer.. > > > > > > Thanks a lot > > > > > > Hany
Sorry, the equation should be

H = 0.5 * (X1+X2) * conj(X) / abs(X)^2

Regards,
Arthur.

Arthur wrote:

> I have also implemented IEEE802.11a channel estimation with preamble. > it was pretty simple, which does not need LMMSE complex technique. The > preamble is transmitted over 2 OFDM symbol, so > > H = (X1+X2) * conj(X) / abs(X)^2 > > where H is the estimated channel information, X1 and X2 is the received > preamble after FFT operation in OFDM receiver, and X is the original > transmitted preamble before the IFFT operation in OFDM transmitter. > > cheers, > Arthur. > > Hany wrote: > > > Thanks alot Arthur for your reply. > > But actually I'm following & implementing HIPERLAN/2 standard and hence > > I'm using a preamble to estimate the channel .. I didn't got through > > the tracking using pilots yet. > > > > Thanks again > > > > Hany > > > > > > Arthur wrote: > > > You might want to try DFT based interpolation too, I have just > > > implemented it, seems to work fine > > > > > > "DFT-based channel estimation in 2D-pilot-symbol-aided OFDM wireless > > > systems" > > > Fernandez-Getino Garcia, M.J. Paez-Borrallo, J.M. Zazo, S. > > > Vehicular Technology Conference, 2001. VTC 2001 Spring. IEEE VTS 53rd > > > > > > Regards, > > > Arthur, > > > > > > Hany wrote: > > > > Hello ALL, > > > > > > > > I'm trying to simulate a LMMSE equalizer for OFDM signal. > > > > > > > > The general equation requires the calculation of (X.X^H) where X is > > > > the transmitted signal OR >>-----> X is the diagonal matrix containing > > > > the transmitted signal..! > > > > > > > > And X^H is the hermitian of X (hermitian is the conjugate transpose of > > > > the matrix) > > > > > > > > I'm actually using the DL preamble to estimate the channel (as > > > > HIPERLAN/2 says) so >>---> (X) would equal to this preamble vector.. > > > > Example : DL_Preamble = [1 -1 -1 1 -1 1 1 -1] "a vector of the > > > > subcarriers" > > > > then X = [1 -1 -1 1 -1 1 1 -1]; > > > > the diagonal matrix would be : > > > > [1 0 0 0 0 0 0 0 > > > > 0 -1 0 0 0 0 0 0 > > > > 0 0 -1 0 0 0 0 0 > > > > 0 0 0 1 0 0 0 0 > > > > 0 0 0 0 -1 0 0 0 > > > > 0 0 0 0 0 1 0 0 > > > > 0 0 0 0 0 0 1 0 > > > > 0 0 0 0 0 0 0 -1]; > > > > > > > > the matrix multiplication of this matrix and it's hermitian could not > > > > be done on MATLAB .. it gives a matrix with "Inf" elements...! > > > > > > > > Could anybody try this simple operation and help please... > > > > > > > > How can I calculate this term in order to perform a LMMSE equalizer.. > > > > > > > > Thanks a lot > > > > > > > > Hany
What you did is LS estimation technique, which is not my point of
interest at the present time.

Regards
Hany

Arthur wrote:
> Sorry, the equation should be > > H = 0.5 * (X1+X2) * conj(X) / abs(X)^2 > > Regards, > Arthur. > > Arthur wrote: > > > I have also implemented IEEE802.11a channel estimation with preamble. > > it was pretty simple, which does not need LMMSE complex technique. The > > preamble is transmitted over 2 OFDM symbol, so > > > > H = (X1+X2) * conj(X) / abs(X)^2 > > > > where H is the estimated channel information, X1 and X2 is the received > > preamble after FFT operation in OFDM receiver, and X is the original > > transmitted preamble before the IFFT operation in OFDM transmitter. > > > > cheers, > > Arthur. > > > > Hany wrote: > > > > > Thanks alot Arthur for your reply. > > > But actually I'm following & implementing HIPERLAN/2 standard and hence > > > I'm using a preamble to estimate the channel .. I didn't got through > > > the tracking using pilots yet. > > > > > > Thanks again > > > > > > Hany > > > > > > > > > Arthur wrote: > > > > You might want to try DFT based interpolation too, I have just > > > > implemented it, seems to work fine > > > > > > > > "DFT-based channel estimation in 2D-pilot-symbol-aided OFDM wireless > > > > systems" > > > > Fernandez-Getino Garcia, M.J. Paez-Borrallo, J.M. Zazo, S. > > > > Vehicular Technology Conference, 2001. VTC 2001 Spring. IEEE VTS 53rd > > > > > > > > Regards, > > > > Arthur, > > > > > > > > Hany wrote: > > > > > Hello ALL, > > > > > > > > > > I'm trying to simulate a LMMSE equalizer for OFDM signal. > > > > > > > > > > The general equation requires the calculation of (X.X^H) where X is > > > > > the transmitted signal OR >>-----> X is the diagonal matrix containing > > > > > the transmitted signal..! > > > > > > > > > > And X^H is the hermitian of X (hermitian is the conjugate transpose of > > > > > the matrix) > > > > > > > > > > I'm actually using the DL preamble to estimate the channel (as > > > > > HIPERLAN/2 says) so >>---> (X) would equal to this preamble vector.. > > > > > Example : DL_Preamble = [1 -1 -1 1 -1 1 1 -1] "a vector of the > > > > > subcarriers" > > > > > then X = [1 -1 -1 1 -1 1 1 -1]; > > > > > the diagonal matrix would be : > > > > > [1 0 0 0 0 0 0 0 > > > > > 0 -1 0 0 0 0 0 0 > > > > > 0 0 -1 0 0 0 0 0 > > > > > 0 0 0 1 0 0 0 0 > > > > > 0 0 0 0 -1 0 0 0 > > > > > 0 0 0 0 0 1 0 0 > > > > > 0 0 0 0 0 0 1 0 > > > > > 0 0 0 0 0 0 0 -1]; > > > > > > > > > > the matrix multiplication of this matrix and it's hermitian could not > > > > > be done on MATLAB .. it gives a matrix with "Inf" elements...! > > > > > > > > > > Could anybody try this simple operation and help please... > > > > > > > > > > How can I calculate this term in order to perform a LMMSE equalizer.. > > > > > > > > > > Thanks a lot > > > > > > > > > > Hany