In this series:


“In radio, multi-user MIMO (MU-MIMO) is a set of advanced MIMO, multiple-input and multiple-output, technologies where the available antennas are spread over a multitude of independent access points and independent radio terminals – each having one or multiple antennas. In contrast, single-user MIMO considers a single multi-antenna transmitter communicating with a single multi-antenna receiver”


In multi-user MIMO systems, the spatial degrees of freedom offered by multiple antennas can be exploited to enhance the overall system capacity by scheduling multiple users to simultaneously share the spatial channel [2]. The claimed performance improvement over single-user MIMO is only achieved, however, if the transmitter uses precoding where the channel state information at the transmitter (CSIT) is considered.

Progress in the field of multi-user information theory has led to a better understanding of the impact of MIMO antennas on performance in multi-user communications [3]. Information theory suggests that the optimum transmit strategy for the MU-MIMO broadcast channel (downlink path) requires a pre-interference cancellation technique known as dirty paper coding (DPC) [4] combined with an implicit user scheduling algorithm.

While there is substantial cost to knowing the channel state information at the transmitter, MU-MIMO techniques possess several key advantages:

  • MU-MIMO is immune to propagation channel impairments like channel rank loss and antenna correlation.
  • There is no need to have multiple antennas at the terminal level to obtain spatial multiplexing gain at the base station.
  • MU-MIMO techniques enable capacity improvements proportional to the number of antennas at the base station.

MU-MIMO technology is usually divided into the following topics [2]:

  • Precoding
  • Feedback
  • Scheduling
  • MAC-PHY cross-layer design

In this blog post, we focus on the first topic, precoding. The other topics will be discussed in future blog posts.


Several works have addressed precoding when the channel matrix is available at the transmitter end. The Tomlinson-Harashima non-linear precoder (THP) [5], for instance, adopts the DPC approach [4]. The THP precoder attempts to cancel interference from the last user after applying a computationally demanding QR decomposition of the MIMO channel in a lower triangular matrix. On the other hand, many suboptimal precoding techniques based on zero-forcing (ZF) and minimum mean squared error (MMSE), referred as channel inversion methods, have been proposed [6]. The block diagonalization (BD) method breaks down the MU-MIMO channel into multiple single-user MIMO parallel and orthogonal channels using singular value decomposition (SVD) in order to cancel interference using the null space [7]. Unfortunately, the need for CSIT feedback places a significant burden on the uplink capacity for most systems, especially on systems with high bandwidths (e.g. OFDM) and/or high mobility (e.g. 3GPP-LTE or WiMAX) [2]. A practical solution is to use limited feedback where the receiver searches the codebook for vectors that can maximize the overall system performance and sends the index of the codeword to the transmitter. Using this approach, several techniques based on vector quantization [8], Grassmannian packing [9], and discrete Fourier transforms [10] have been designed.

Implementation Challenges

The complexity of these techniques makes real-time implementation in multi-core DSPs difficult due to their irregular data flow and the large number of operations to be executed. Field-programmable gate array (FPGA) devices with a Matlab/HDL-based design flow provides a powerful means to go from theory to real-time implementation and testing. Matlab/Simulink-HDL design flow can greatly speed up the development phase, especially for the computationally intensive algorithms used in MU-MIMO precoding [11]. The Nutaq PicoSDR is a table-top software-defined radio (SDR) solution that, when combined with Nutaq’s software frameworks, greatly accelerates your time to market while bringing you the performance and features you need. Built-around impressive FPGA logic and memory, PicoSDR lets you can combine powerful multi-mode SDR transceiver modules to achieve a 2×2 or 4×4 MIMO turnkey solution that covers everything from baseband processing to the air interface [12].


[1] http:/

[2] D. Gesbert, M. Kountouris, R.W. Heath Jr., C.-B. Chae, and T. Sälzer, “From single user to multiuser communications: Shifting the MIMO paradigm,” IEEE Signal Processing Magazine, vol. 24, no. 5, pp. 36-46, 2007.

[3] A. El Gamal and T.M. Cover, “Multiple user information theory,” Proc. IEEE, vol. 68, no. 12, pp. 1466–1483, Dec. 1980.

[4] M. Costa, “Writing on dirty paper,” IEEE Transactions on Information Theory, vol. 29, no.3, May 1983, pp. 439-441.

[5] V. Stankovic and M. Haardt, “Successive optimization Tomlinson-Harashima precoding (SO-THP) for multi-user MIMO systems,” IEEE ICASSP, vol. 3, March 2005, pp. 18-23.

[6] C. Peel, B. Hochwald, A. Swindlehurst, “Vector-perturbation technique for near-capacity multiantenna multiuser communication-part I: channel inversion and regularization,” IEEE Trans. On Communications, vol. 53, no.1, pp. 195-202, 2005.

[7] Q.H. Spencer, A.L. Swindlehurst, and M. Haardt, “Zeroforcing methods for downlink spatial multiplexing in multiuser MIMO channels,” IEEE Trans. Signal Processing, vol. 52, no. 2, pp.461-471, Feb. 2004.

[8] J. Roh and B. Rao, “Design and analysis of MIMO spatial multiplexing systems with quantized feedback,” IEEE Trans. Signal Process., vol. 54, no. 8, pp. 2874-2886, 2006.

[9] D. J. Love, R. W. Heath, Jr., and T. Strohmer, “Grassmannian beamforming for multiple-input multiple-output wireless systems,” IEEE Trans. Inf. Theory, vol. 49, no. 10, pp. 2735-2747, 2003.

[10] D. J. Love and R. W. Heath, Jr., “Limited feedback unitary precoding for spatial multiplexing systems,” IEEE Trans. Inf. Theory, vol. 51, no. 8, pp. 2967–2976, 2005.

[11] D. Quinn, “How Nutaq’s Products Speed Up Your Design Flow When Using Xilinx System Generator: Part 1 and 2,”’s-products-speed-your-design-flow-when-using-xilinx-system-generator-part-1

[12] Nutaq Inc., “Table-Top FPGA-based, MIMO-Enabled, SDR solutions,” Nutaq Inc.,