Intel® System Studio: Wireless Support Functions

Applicable Products

Intel® System Studio 2014 (and later)

Intel® Integrated Performance Primitives 8.0.1 (and later)


Modern wireless communication standards such as Long Term Evolution (LTE) demand an effective use of antenna technology in order to enable high data rates (within a limited bandwidth), reliable operation, and low energy consumption (longer use duration with fixed battery pack, low human body impact, etc.). Moreover, users demand designs that are often not ideal for wireless operation and also showing usage patterns that ask for shaping the overall antenna beam accordingly.

Intel® Integrated Performance Primitives (Intel® IPP)

The signal processing function domain is now supporting the Multiple Input Multiple Output (MIMO) algorithm as used for Long Term Evolution (LTE) wireless transmissions. The algorithm takes a receiver (RX) signal and returns an estimated transmit (TX) signal so that a Minimum Mean Square Error (MMSE) is achieved. For this signal fitting process, the MIMO algorithm also calculates and returns the signal to interference plus noise ratio (SINR).

Please have a look at the Long Term Evolution (LTE) Wireless Support Functions, or open the Volume 1 "Signal Processing" of the reference manual. The actual function declarations look like:

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

The function names are prefixed with "ipps" denoting the signal processing domain within Intel IPP, whereas "16sc" for instance is the usual postfix denoting the main input data type. The T := { 1, 2 } in the function name denotes the number of transmit (TX) antennas, whereas the R := { 2, 4 } denotes the number of receiver (RX) antennas. Due to not overloading function names (e.g., via function templates), the above prototype declaration stands for a set of functions where each of the functions can be called using the C calling convention (unmangled symbols, etc.). In terms of the inputs, such a function takes the channel matrix (line #1 of the argument list), the receiver (RX) signal (line #2), and other arguments along with these two main inputs (e.g., number of elements, stride, etc.). Beside of returning the IppStatus, such a function returns its results via the signature's pointer arguments with "Dst" in the argument name. The actual outputs are the transmit (TX) signal (line #3) and the theoretical upper bounds for the rate of information transfer (line #4 of the argument list).


The Long Term Evolution (LTE) Wireless Support Functions in Volume 1 "Signal Processing" of the Intel IPP Reference Manual.

An overview of the MIMO algorithm, the MMSE fitting, and the SINR measure as a courtesy of Wikipedia.

Known limitations and status of the LTE Wireless Support Functions.

For more complete information about compiler optimizations, see our Optimization Notice.