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.

9 thoughts on “Downlink Massive MIMO Analysis”

  1. Sir, can we use the UL channel estimates in the DL Massive MIMO system based on TDD protocol. I mean whether exact channel estimation expressions can we use in calculating DL spectral efficiency?

    1. Yes, you can use the same estimates, but the spectral efficiency expressions will look different. You can find expressions in textbooks such as “Fundamentals of Massive MIMO” and “Massive MIMO Networks” (

    1. No, not necessarily. It depends on the true channels and the precoding vectors. In practice, the precoding vectors will likely be computed using UL channel estimates, but any selection is supported by the theorem.

  2. Sir,
    The DL spectral efficiency for massive MIMO with M-MMSE precoding and pilot reuse factor=4, the number of antennas M=100 and K varies from 4 to 20 when I plotted with the help of the code provided by you in ( All the other parameter is same as used in the book.
    Sir, for K>16 why spectral efficiency decreases slightly…is it due to a decrease in SINR and Pre-log factor? SINR decrease due to pilot contamination for K>16?

    1. I believe the issue is that there is too much interference and too much resources are used for pilot signaling. I don’t think pilot contamination is the main issue in this scenario. I recommend you to read Section 7.2.2 Scheduling, since it discusses these things.

Leave a Reply

Your email address will not be published. Required fields are marked *