When Are Downlink Pilots Needed?

Pilots are predefined reference signals that are transmitted to let the receiver estimate the channel. While many communication systems have pilot transmissions in both uplink and downlink, the canonical communication protocol in Massive MIMO only contains uplink pilots. In this blog post, I will explain when downlink pilots are needed and why we can omit them in Massive MIMO.

Consider the communication link between a single-antenna user and an M-antenna base station (BS). The channel vector $\mathbf{h} \in \mathbb{C}^M$ varies over time and frequency in a way that is often modeled as random fading. In each channel coherence blocks, the BS selects a precoding vector $\mathbf{w} \in \mathbb{C}^M$ and uses it for downlink transmission. The precoding reduces the multiantenna vector channel to an effective single-antenna scalar channel

    $$g = \mathbf{h}^{T} \mathbf{w}.$$

The receiving user does not need to know the full M-dimensional vectors $\mathbf{h}$ and $\mathbf{w}$. However, to decode the downlink data in a successful way, it needs to learn the complex scalar channel $g$. The difficulty in learning $g$ depends strongly on the mechanism of precoding selection. Two examples are considered below.

Codebook-based precoding

In this case, the BS tries out a set of different precoding vectors from a codebook (e.g., a grid of beams, as shown to the right) by sending one downlink pilot signal through each one of them. The user measures $g$ for each one of them and feeds back the index of the one that maximizes the channel gain |g|. The BS will then transmit data using that precoding vector. During the data transmission, $g \in \mathbb{C}$ can have any phase, but the user already knows the phase and can compensate for it in the decoding algorithm.

If multiple users are spatially multiplexed in the downlink, the BS might use another precoding vector than the one selected by the user. For example, regularized zero-forcing might be used to suppress interference. In that case, the magnitude |g| of the channel changes, but the phase remains the same. If phase-shift keying (PSK) is used for communication, such that no information is encoded in the signal amplitude, no estimation of |g| is needed for decoding (but it can help to reduce the error probability). If quadrature amplitude modulation (QAM) is used instead, the user needs to learn also |g| to decode the data. The unknown magnitude can be estimated blindly based on the received signals. Hence, no further pilot transmission is needed.

Reciprocity-based precoding

In this case, the user transmits a pilot signal in the uplink, which enables the BS to directly estimate the entire channel vector $\mathbf{h}$. For the sake of argument, suppose this estimation is perfect and that maximum ratio transmission with $\mathbf{w}=\mathbf{h}^*/\| \mathbf{h} \|$ is used for downlink data transmission. The effective channel gain will then be

    $$g = \mathbf{h}^{T} \frac{\mathbf{h}^*}{\| \mathbf{h} \|} = \| \mathbf{h} \|,$$

which is a positive scalar. Hence, the user only needs to learn the magnitude of  $g$ because the phase is always zero. Estimation of  |g| can be implemented without downlink pilots, either by relying on channel hardening or by blind estimation based on the received signals. The former only works well in Massive MIMO with very many antennas, while the latter can be done in any system (including codebook-based precoding).


We generally need to compensate for the channel’s phase-shift at some place in a wireless system. In codebook-based precoding, the compensation is done at the user-side, based on the received signals from the downlink pilots. This is the main approach in 4G systems, which is why downlink pilots are so commonly used. In contrast, when using reciprocity-based precoding, the phase-shifts are compensated for at the BS-side using the uplink pilots. In either case, explicit pilot signals are only needed in one direction: uplink or downlink. If the estimation is imperfect, there will be some remaining phase ambiguity, which can be estimated blindly since we know that it is small (i.e., of all possible phase-rotations that could have resulted in the received signal, the smallest one is most likely).

When we have access to TDD spectrum, we can choose between the two precoding methods mentioned above. The reciprocity-based approach is preferable in terms of less overhead signaling; one pilot per user instead of one per index in the codebook (the codebook size needs to grow with the number of antennas), and no feedback is needed. That is why this approach is taken in the canonical form of Massive MIMO.

4 thoughts on “When Are Downlink Pilots Needed?”

  1. Dear Prof. Björnson, I fully agree with your argumentation. However, an often asked question I got on the topic of massive MIMO TDD is the extension towards multiple antennas at the user side.
    In reciprocity-based precoding the user has to send an uplink pilot sequentially (in time) for each antenna in order to obtain the downlink channel at the BS.
    This maybe become a problem in mm-wave systems when both ends use many antennas.
    Do you also work on massive MIMO considering multiple antennas at the user side?

    1. I wrote a paper about this a few years ago:

      Xueru Li, Emil Björnson, Shidong Zhou, Jing Wang, “Massive MIMO with Multi-Antenna Users: When are Additional User Antennas Beneficial?,” Proceedings of International Conference on Telecommunications (ICT), Thessaloniki, Greece, May 2016. (http://arxiv.org/pdf/1603.09052)

      If the number of antennas is small, we could potentially assign multiple pilots per user to enable multiple data streams or coherent combining of the signals to/from the antennas. But if the user has a large number of antennas, we can probably not afford that. Using grid of beams at one side (or both sides) of the link could be a potential solution. This seems to be what 3GPP has in mind. But as far as I know, there is theory that support it begin the optimal way operating.

  2. Is there an application in Massive MIMO that code-book pre-coding is used? What metrics are applied to design a code book?

    1. Codebook-based precoding is supported in 5G as a complement to reciprocity-based precoding. Codebooks are needed in FDD mode, and it is also a convenient solution when having a hybrid or analog implementation. You can read the details about the 5G codebooks in books on the standard. I would guess that the codebooks contains a grid of beams that cover all angular directions of interest.

Leave a Reply

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