Intel® Integrated Performance Primitives Developer Guide and Reference

ID 790148
Date 11/07/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

MimoMMSE

DEPRECATED. Implements the MIMO MMSE estimator algorithm.

Syntax

IppStatus ippsMimoMMSE_1X2_16sc(Ipp16sc* pSrcH[2], int srcHStride2, int srcHStride1, int srcHStride0, Ipp16sc* pSrcY[4][12], int Sigma2, IppFourSymb* pDstX, int dstXStride1, int dstXStride0, int numSymb, int numSC, int SINRIdx, Ipp32f* pDstSINR, int scaleFactor);

IppStatus ippsMimoMMSE_2X2_16sc(Ipp16sc* pSrcH[2], int srcHStride2, int srcHStride1, int srcHStride0, Ipp16sc* pSrcY[4][12], int Sigma2, IppFourSymb* pDstX, int dstXStride1, int dstXStride0, int numSymb, int numSC, int SINRIdx, Ipp32f* pDstSINR, int scaleFactor);

IppStatus ippsMimoMMSE_1X4_16sc(Ipp16sc* pSrcH[2], int srcHStride2, int srcHStride1, int srcHStride0, Ipp16sc* pSrcY[4][12], int Sigma2, IppFourSymb* pDstX, int dstXStride1, int dstXStride0, int numSymb, int numSC, int SINRIdx, Ipp32f* pDstSINR, int scaleFactor);

IppStatus ippsMimoMMSE_2X4_16sc(Ipp16sc* pSrcH[2], int srcHStride2, int srcHStride1, int srcHStride0, Ipp16sc* pSrcY[4][12], int Sigma2, IppFourSymb* pDstX, int dstXStride1, int dstXStride0, int numSymb, int numSC, int SINRIdx, Ipp32f* pDstSINR, int scaleFactor);

Include Files

ippe.h

Parameters

pSrcH

Pointer to line 2 of the H matrix.

srcHStride2

Stride between H matrices (H[symb0] and (H[symb1]).

srcHStride1

Stride between rows of the H matrix (h00 and h10)

srcHStride0

Stride between elements of the row (h00 and h01).

pSrcY

Array of pointers to the RX signal Y. The maximum size is four TX antennas and 12 symbols.

Sigma2

Noise power.

numSymb

Number of symbols.

numSC

Number of subcarriers.

pDstX

Pointer to the estimated TX signal grouped by four symbols (quads).

dstXStride1

Stride between TX signals (X[ant0] and X[ant1]).

dstXStride0

Stride between quads inside one antenna.

SINRIdx

Index of symbol to calculate the SINR.

pDstSINR

Pointer to an array of SINR for layer 1,2.

scaleFactor

Scale factor, refer to Integer Scaling.

Description

NOTE:
This function is deprecated and will be removed in a future release. If you have concerns, open a ticket and provide feedback at https://supporttickets.intel.com/.

NOTE:

This functionality is available only within the Intel® System Studio suite.

This function implements the MMSE estimator algorithm. The MMSE estimation process consists of the following steps:
  1. Calculate B=HH*H, where H is the channel matrix, and superscript H denotes Hermitian operator (transpose and conjugate).

  2. Calculate A=HH*H+σ2n*INt, where

    Nt is the number of transmit antennas (1 or 2).

  3. Calculate A-1=(HH*H+σ2n*INt)-1.

  4. Calculate Z=HH*y.

  5. Calculate x=A-1*Z=(HH*H+σ2n*INt)-1*HH*y.

  6. Calculate D=W*H=A-1*HH*H.

Signal to interference plus noise ratio (SINR) is computed as follows:

where

M is the number of subcarriers.

The destination data is grouped by four symbols.

Return Values

ippStsNoErr

Indicates no error.

ippStsNullPtrErr

Indicates an error if one of the specified pointers is NULL.

ippStsSizeErr

Indicates an error if numSymb or numSC is less than, or equal to zero.