Category Archives: Education

Downlink Massive MIMO Analysis

The tedious, time-consuming, and buggy nature of system-level simulations is exacerbated with massive MIMO. This post offers some relieve in the form of analytical expressions for downlink conjugate beamforming [1]. These expressions enable the testing and calibration of simulators—say to determine how many cells are needed to represent an infinitely large network with some desired accuracy. The trick that makes the analysis feasible is to let the shadowing grow strong, yet the ensuing expressions capture very well the behaviors with practical shadowings.

The setting is an infinitely large cellular network where each N-antenna base station (BS) serves K single-antenna users. The large-scale channel gains include pathloss with exponent $\eta$ and shadowing having log-scale standard deviation \sigma_{\scriptscriptstyle \rm dB}, with the gain between the \ellth BS and the kth user served by a BS of interest denoted by G_{\ell;k}.  With conjugate beamforming and receivers reliant on channel hardening, the signal-to-interference ratio (SIR) at such user is [2]

    $$\mathsf{SIR}_k = \frac{N p_k\,G_{k}}{\sum_{\ell} G_{\ell:k} } . $$

where G_{k} is the gain from the serving BS and p_k is the share of that BS’s power allocated to user k. Two power allocations can be analyzed:

  1. Uniform: p_k = 1/K.
  2. SIR-equalizing [3]: p_{k} \propto \frac{\sum_{\ell} G_{\ell;k}}{G_{k}}, with the proportionality constant ensuring that \sum_k p_k = 1. This makes \mathsf{SIR}_k = \mathsf{SIR} \, \forall k. Moreover, as N and K grow large, \mathsf{SIR} \rightarrow \frac{N}{K} \, (1- 2 / \eta) .

The analysis is conducted for \sigma_{\scriptscriptstyle \rm dB} \to \infty, which makes it valid for arbitrary BS locations.


For notational compactness, let \delta = 2/\eta. Define s<0 as the solution to  {s}^\delta \,\gamma(-\delta,s)=0, where \gamma(\cdot) is the lower incomplete gamma function. For \eta=4, in particular, s = -0.85. Under a uniform power allocation, the CDF of \mathsf{SIR}_k is available in an explicit form involving the Gauss hypergeometric function {}_2 F_1 (available in MATLAB and Mathematica):

$\!\!\!\!\!\!\begin{cases} F_{\mathsf{SIR}_k}(\theta) \simeq e^{s \left(\frac{N}{\theta \,K}-1\right)}  & 0 \leq \theta < \frac{N/K}{3 + \epsilon} \\ F_{\mathsf{SIR}_k}(\theta) = 1 - \left(\frac{N}{\theta \,K}-1\right)^{\delta} \mathrm{sinc} \, \delta + B \! \left(\frac{\theta \,K}{N-2\,\theta \,K}\right) & \frac{N/K}{3} \leq \theta < \frac{N / K}{2 } \\ F_{\mathsf{SIR}_k}(\theta) = 1 - \left(\frac{N}{\theta \,K}-1\right)^{\delta} \mathrm{sinc} \, \delta \quad\qquad & \frac{N / K}{2} \leq \theta<\frac{N}{K}\end{cases}$

where “\simeq” indicates asymptotic (\theta \to 0) equality, \epsilon is such that the CDF is continuous, and

    $$B(x) = \frac{ {}_2 F_1 \big(1, \delta+1; 2 \, \delta + 2; -1/x \big) \, \delta }{x^{1+2\,\delta}\;\Gamma (2\,\delta + 2)\,{\Gamma^2 (1-\delta)}} .$$

Alternatively, the CDF can be obtained by solving (e.g., with Mathematica) a single integral involving the Kummer function {}_1 F_1:

$\!\!\!\!\!\! F_{\mathsf{SIR}_k}(\theta)=\frac{1}{2}-\frac{1}{\pi}\int_{0}^{\infty}\Im\!\left\{\frac{e^{\frac{i\omega}{1-\theta K/N}}}{{}_1 F_1\left(1,1-\delta,\frac{i\theta\omega}{N/K-\theta}\right)}\right\}\frac{d\omega}{\omega}\,\,\,0<\theta<\frac{N}{K}.$

This latter solution can be modified for the SIR-equalizing power allocation as

$\!\!\!\!\!\!\!\!F_{\mathsf{SIR}}(\theta) = \frac{1}{2} - \frac{1}{\pi} \int_{0}^{\infty} \Im \! \left\{\frac{e^{i\,\omega}}{\left\{{}_1 F_1\!\left(1,1-\delta,i \,\theta\,\omega/N\right)\right\}^K}\right\} \frac{d\omega}{\omega} \,\,\, 0<\theta<\frac{N}{K}.$

Spectral Efficiency

The spectral efficiency of user k is C_k=\log_2(1+\mathsf{SIR}_k), with CDF F_{C_k}(\zeta) = F_{\mathsf{SIR}_k}(2^\zeta-1) readily characterizable from the expressions given earlier. From C_k, the sum spectral efficiency at the BS of interest can be found as C_{\Sigma} = \sum_{k} C_k . Expressions for the averages \bar{C} = \mathbb{E} \big[ C_k \big] and \bar{C}_{\scriptscriptstyle \Sigma} = \mathbb{E} \! \left[ C_{\scriptscriptstyle \Sigma} \right] are further available in the form of single integrals.

With a uniform power allocation,

(1)   \begin{equation*}\bar{C} =  \log_2(e) \,\int_{0}^{\infty} \frac{ 1-e^{-z N/K}}{ {}_1 F_1 \big( 1,1-\delta,z \big)} \, \frac{{d}z}{z}\end{equation*}

and \bar{C}_{\scriptscriptstyle \Sigma} = K \bar{C}. For the special case of \eta=4, the Kummer function simplifies giving

(2)   \begin{equation*}\bar{C}=\log_2(e) \,\int_{0}^{\infty} \frac{ 1-e^{-z N/K}}{1 + e^z \sqrt{\pi z} \, \erf\sqrt{z}} \, \frac{{d}z}{z} .\end{equation*}

With an equal-SIR power allocation

(3)   \begin{equation*}\bar{C}=\log_2(e)\,\int_{0}^{\infty} \frac{ 1-e^{-z}}{{}_1 F_1\left(1,1-\delta,z/N \right)^K} \, \frac{{d}z}{z}\end{equation*}

and \bar{C}_{\scriptscriptstyle \Sigma} = K \bar{C}.

Application to Relevant Networks

Let us now contrast the analytical expressions (computable instantaneously and exactly, and valid for arbitrary topologies, but asymptotic in the shadowing strength) with some Monte-Carlo simulations (lengthy, noisy, and bug-prone, but for precise shadowing strengths and topologies).

First, we simulate a 500-cell hexagonal lattice with N=100, K=10 and \eta=4. Figs. 1a-1b compare the simulations for \sigma_{\scriptscriptstyle \rm dB}= 1014 dB with the analysis. The behaviors with these typical outdoor values of \sigma_{\scriptscriptstyle \rm dB} are well represented by the analysis and, as it turns out, in rigidly homogeneous networks such as this one is where the gap is largest.

Figure 1: Analysis vs hexagonal network simulations with lognormal shadowing

For a more irregular deployment, let us next consider a network whose BSs are uniformly distributed. BSs (500 on average) are dropped around a central one of interest. For each network snapshot, users are then uniformly dropped until K of them are served by the central BS. As before, N=100, K = 10 and \eta =4. Figs. 2a-2b compare the simulations for \sigma_{\scriptscriptstyle \rm dB} = 10 dB with the analysis, and the agreement is now complete. The simulated average spectral efficiency with a uniform power allocation is \bar{C}=2.77 b/s/Hz/user while (2) gives \bar{C}=2.76 b/s/Hz/user.

Figure 2: Analysis vs Poisson network simulations with lognornmal shadowing.

The analysis presented in this post is not without limitations, chiefly the absence of noise and pilot contamination. However, as argued in [1], there is a broad operating range (N \lesssim 150200 with very conservative premises) where these effects are rather minor, and the analysis is hence applicable.

[1] G. George, A. Lozano, M. Haenggi, “Massive MIMO forward link analysis for cellular networks,” arXiv:1811.00110, 2018.

[2] T. Marzetta, E. Larsson, H. Yang, and H. Ngo, Fundamentals of Massive MIMO. Cambridge University Press, 2016.

[3] H. Yang and T. L. Marzetta, “A macro cellular wireless network with uniformly high user throughputs,” IEEE Veh. Techn. Conf. (VTC’14), Sep. 2014.

Free PDF of Massive MIMO Networks

The textbook Massive MIMO Networks: Spectral, Energy, and Hardware Efficiency, that I’ve written together with Jakob Hoydis and Luca Sanguinetti, is from now on available for free download from If you want a physical copy, you can buy the color-printed hardback edition from now publishers and major online shops, such as Amazon.

You can read more about this book in a previous blog post and also watch this new video, where I talk about the content and motivation behind the writing of the book.

The Role of Massive MIMO in Designing Energy Efficient Networks

The next generation of cellular networks need to be much more energy-efficient than the current generation, if we should deliver 100-1000 times more data in a cost-efficient and environmentally friendly manner. In this video, I explain the methodology that can be used to design energy efficient 5G networks, and also the key role that Massive MIMO will play.

Massive MIMO Hardware Distortion Measured in the Lab

I wrote this paper to make a single point: the hardware distortion (especially out-band radiation) stemming from transmitter nonlinearities in massive MIMO is a deterministic function of the transmitted signals. One consequence of this is that in most cases of practical relevance, the distortion is correlated among the antennas. Specifically, under line-of-sight propagation conditions this distortion is radiated in specific directions: in the single-user case the distortion is radiated into the same direction as the signal of interest, and in the two-user case the distortion is radiated into two other directions.

The derivation was based on a very simple third-order polynomial model. Questioning that model, or contesting the conclusions? Let’s run WebLab. WebLab is a web-server-based interface to a real power amplifier operating in the lab, developed and run by colleagues at Chalmers University of Technology in Sweden. Anyone can access the equipment in real time (though there might be a queue) by submitting a waveform and retrieving the amplified waveform using a special Matlab function, “weblab.m”, obtainable from their webpages. Since accurate characterization and modeling of amplifiers is a hard nonlinear identification problem, WebLab is a great tool to researchers who want to go beyond polynomial and truncated Volterra-type toy models.

A $\lambda/2$-spaced uniform linear array with 50 elements beamforms in free space line-of-sight to two terminals at (arbitrarily chosen) angles -9 respectively +34 degrees. A sinusoid with frequency $f_1=\pi/10$ is sent to the first terminal, and a sinusoid with frequency $f_2=2\pi/10$ is transmitted to the other terminal. (Frequencies are in discrete time, see the Weblab documentation for details.) The actual radiation diagram is computed numerically: line-of-sight in free space is fairly uncontroversial: superposition for wave propagation applies. However, importantly, the actual amplification all signals is run on actual hardware in the lab.

The computed radiation diagram is shown below. (Some lines overlap.) There are two large peaks at -9 and +34 degrees angle, corresponding to the two signals of interest with frequencies $f_1$ and $f_2$. There are also secondary peaks, at angles approximately -44 and -64 degrees, at frequencies different from $f_1$ respectively $f_2$. These peaks originate from intermodulation products, and represent the out-band radiation caused by the amplifier non-linearity. (Homework: read the paper and verify that these angles are equal to those predicted by the theory.)

The Matlab code for reproduction of this experiment can be downloaded here.

3D Beamforming, is that Massive MIMO?

No, these are two different but somewhat related concepts, as I will explain in detail below.

Contemporary multiantenna base stations for cellular communications are equipped with 2-8 antennas, which are deployed along a horizontal line. One example is a uniform linear array (ULA), as illustrated in Figure 1 below, where the antenna spacing is uniform. All the antennas in the ULA have the same physical down-tilt, with respect to the ground, and a fixed radiation pattern and directivity.

Figure 1: Azimuth 2D beamforming from a horizontal ULA.

By sending the same signal from all antennas, but with different phase-shifts, we can steer beams in different angular directions and thereby make the directivity of the radiated signal different from the directivity of the individual antennas. Since the antennas are deployed on a one-dimensional horizontal line in this example, the ULA can only steer beams in the two-dimensional (2D) azimuth plane as illustrated in Figure 1. The elevation angle is the same for all beams, which is why this is called 2D beamforming. The beamwidth in the azimuth domain shrinks the more antennas are deployed. If the array is used for multiuser MIMO, then multiple beams with different azimuth angles are created simultaneously, as illustrated by the colored beams in Figure 1.

Figure 2: Elevation 2D beamforming from a vertical ULA.

If we would rotate the ULA so that the antennas are instead deployed at different heights above the ground, then the array can instead steer beams in different elevation angles. This is illustrated in Figure 2. Note that this is still a form of 2D beamforming since every beam will have the same directivity with respect to the azimuth plane. This antenna array can be used to steer beams towards users at different floors of a building. It is also useful to serve flying objects, such as UAVs, jointly with ground users. The beamwidth in the elevation domain shrinks the more antennas are deployed.

Figure 3: 3D beamforming from a planar array.

If we instead deploy multiple ULAs on top of each other, it is possible to control both the azimuth and elevation angle of a beam. This is called 3D beamforming and is illustrated in Figure 3 using a planar array with a “massive” number of antennas. This gives the flexibility to not only steer beams towards different buildings but also towards different floors of these buildings, to provide a beamforming gain wherever the user is in the coverage area. It is not necessary to have many antennas to perform 3D beamforming – it is basically enough to have three antennas deployed in a triangle. However, as more antennas are added, the beams become narrower and easier to jointly steer in specific azimuth-elevation directions. This increases the array gain and reduces the interference between beams directed to different users, as illustrated by the colors in Figure 3.

The detailed answer to the question “3D Beamforming, is that Massive MIMO?” is as follows. Massive MIMO and 3D beamforming are two different concepts. 3D beamforming can be performed with few antennas and Massive MIMO can be deployed to only perform 2D beamforming. However, Massive MIMO and 3D beamforming is a great combination in many applications; for example, to spatially multiplex many users in a city with high-rise buildings. One should also bear in mind that, in general, only a fraction of the users are located in line-of-sight so the formation of angular beams (as shown above) might be of limited importance. The ability to control the array’s radiation pattern in 3D is nonetheless helpful to control the multipath environment such that the many signal components add constructively at the location of the intended receiver.