Main Content

Hybrid MIMO Beamforming with QSHB and HBPS Algorithms

This example presents a Simulink® model of a multiple input multiple output (MIMO) wireless communication system. The wireless system uses hybrid beamforming technique to improve system throughput.


5G and other modern wireless communication systems extensively use MIMO beamforming technology for signal to noise ratio (SNR) enhancement and spatial multiplexing to improve the data throughput in scatterer rich environments. In a scatterer-rich environment, there may not exist line-of-sight (LOS) paths between the transmit and receive antennas. To gain the high throughput, MIMO beamforming implements precoding on the transmitter side and combining on the receiver side to increase SNR and separate spatial channels. A full digital beamforming structure requires each antenna to have a dedicated RF-to-baseband chain, which makes the overall hardware expensive and power consumption high. As a solution, hybrid MIMO beamforming is proposed [1], in which fewer RF-to-baseband chains are employed and partial of precoding and combining are implemented in the RF portion. With deliberate selection of the weights for precoding and combining, hybrid beamforming can achieve comparable performance as that of full beamforming.

In this example, we introduce a Simulink model with hybrid MIMO beamforming. This model shows two hybrid beamforming algorithms: Quantized Sparse Hybrid Beamforming (QSHB) [2] and Hybrid Beamforming with Peak Search (HBPS).

The following figure shows the structure of a hybrid beamforming system.

In the figure, $N_s$ is the number of signal streams; $N_T$ is the number of transmit antennas; $N_{RF}^T$ is the number of transmit RF chains; $N_R$ is the number of receive antennas; and $N_{RF}^R$ is the number of receive RF chains. In this example, two signal streams, 64 transmit antennas, 4 transmit RF chains, 16 receive antennas, and 4 receive RF chains.

The scattering channel is denoted by $H$. The hybrid beamforming weights are represented by the analog precoder $F_{RF}$, digital precoder $F_{BB}$, analog combiner $W_{RF}$, and digital combiner $W_{BB}$. For a more detailed introduction to hybrid beamforming, please refer to the MATLAB® Introduction to Hybrid Beamforming example.

Exploring the Model

The Simulink model consists of four main components: MIMO Transmitter, MIMO Channel, MIMO Receiver, and Weights Calculation.

The MIMO transmitter generates the signal stream and then applies the precoding. The modulated signal is propagated through a scattering channel defined in the MIMO channel and then decoded and demodulated at the receiver side.

MIMO Scattering Channel

The MIMO scattering channel is represented by a channel matrix. In addition, this example uses an enabled subsystem to periodically change this matrix to simulate the fact that a MIMO channel may vary over time.

Hybrid Beamforming Weights Computation

In a hybrid beamforming system, both the precoding and the corresponding combining process are done partly at baseband and partly in the RF band. In general, the beamforming achieved in the RF band only involves phase shifts. Therefore, a critical part in such a system is to determine how to distribute the weights between the baseband and the RF band based on the channel. This is done in the Weight Calculation block where the precoding weights, Fbb and FrfAng, and combining weights, Wbb and WrfAng, are computed based on the channel matrix, H. In this example, we assume the channel matrix is known and provide both QSHB and HBPS algorithms.

Quantized Sparse Hybrid Beamforming (QSHB)

Literature [2, 3] shows that given the channel matrix, H, of a MIMO scattering channel, the hybrid beamforming weights can be computed via an iterative algorithm [2]. Using an orthogonal matching pursuit algorithm, the resulting analog precoding/combining weights are just steering vectors corresponding to the dominant modes of the channel matrix. For the detailed description of the algorithm, please refer to the Introduction to Hybrid Beamforming example.

Quantized Sparse Hybrid Beamforming with Peak Search (HBPS)

HBPS is a simplified version of QSHB. Instead of searching for the dominant mode of channel matrix iteratively, HBPS projects all the digital weights into a grid of directions and identifies the $N_{RF}^T$ and $N_{RF}^R$ peaks to form the corresponding analog beamforming weights. This works well especially for large arrays, like arrays used in massive MIMO systems, since for large arrays, the directions are more likely to be orthogonal.

Because the channel matrix can change over time, the weights computation also needs to be performed periodically to accommodate the channel variation.

Results and Displays


Following figures shows the recovered 16 QAM symbol streams at the receiver using QSHB algorithms. The resulting constellation shows that compared to the source constellation, the recovered symbols properly located in both streams. This means that using the hybrid beamforming technique, we can improve the system capacity by sending the two streams simultaneously. In addition, the constellation diagram shows that the variance of the first recovered stream is better than the second recovered stream as the points are less dispersed in the constellation of the first stream. This is because the first stream uses the most dominant mode of the MIMO channel so it has the best SNR.


The result of HBPS is shown in the following figures. The constellation diagram shows that it achieves similar performance compared to QSHB. This means that the HBPS is a good choice for the simulated 64x16 MIMO system.


This example provides the Simulink model of two hybrid beamforming methods, QSHB and HBPS. The MIMO scattering channel is used to provide a realistic channel model for massive MIMO systems. The Simulink model is partitioned according to the functions in the signal flow, which gives guidance for hardware implementation. For a given H, the number of symbols can vary to simulate the variable coherent channel length. With this Simulink model, various system parameters and new hybrid beamforming algorithms can be studied. The system structure facilitates the hardware implementation.


[1] Andreas F. Molisch, et al. "Hybrid Beamforming for Massive MIMO: A Survey", IEEE Communications Magazine, Vol. 55, No. 9, September 2017, pp. 134-141

[2] Oma El Ayach, et al. "Spatially Sparse Precoding in Millimeter wave MIMO Systems, IEEE Transactions on Wireless Communications", Vol. 13, No. 3, March 2014

[3] Emil Bjornson, Jakob Hoydis, Luca Sanguinetti, "Massive MIMO Networks: Spectral, Energy, and Hardware Efficiency", Foundations and Trends in Signal Processing: Vol. 11, No. 3-4, 2017