Zero-Forcing Precoding

The Case for Interference Cancellation

MRT ignores interference. At the other extreme, we can design the precoding matrix to completely eliminate multi-user interference. This is the zero-forcing (ZF) strategy: choose vk\mathbf{v}_{k} so that hjHvk=0\mathbf{h}_j^H \mathbf{v}_{k} = 0 for all j≠kj \neq k. The price is noise amplification, but when the SNR is high enough, removing interference is worth the cost.

Definition:

Zero-Forcing Precoding

The ZF precoding matrix is the normalised pseudo-inverse of the channel:

WZF=HH(HHH)βˆ’1DZF\mathbf{W}^{\text{ZF}} = \mathbf{H}^{H} (\mathbf{H} \mathbf{H}^{H})^{-1} \mathbf{D}_{\text{ZF}}

where DZF\mathbf{D}_{\text{ZF}} is a diagonal normalisation matrix ensuring unit-norm columns: [DZF]kk=1/βˆ₯[HH(HHH)βˆ’1]:,kβˆ₯[\mathbf{D}_{\text{ZF}}]_{kk} = 1/\|[\mathbf{H}^{H}(\mathbf{H}\mathbf{H}^{H})^{-1}]_{:,k}\|.

Equivalently, the unnormalised ZF precoding vector for user kk is the kk-th column of HH(HHH)βˆ’1\mathbf{H}^{H} (\mathbf{H} \mathbf{H}^{H})^{-1}, which is the kk-th row of the right pseudo-inverse of H\mathbf{H}.

ZF exists whenever H\mathbf{H} has full row rank, which requires Ntβ‰₯KN_t \geq K.

The constraint hjHvk=0\mathbf{h}_j^H \mathbf{v}_{k} = 0 for jβ‰ kj \neq k means each user's precoder lies in the null space of all other users' channels. This is possible only when Nt>KN_t > K, leaving Ntβˆ’K+1N_t - K + 1 degrees of freedom for the precoder direction.

,

Theorem: ZF Eliminates Multi-User Interference

With ZF precoding, the received signal at user kk simplifies to

yk=pk sk+wky_k = \sqrt{p_k}\, s_k + w_k

i.e., an interference-free AWGN channel. The achievable rate is

RkZF=log⁑2 ⁣(1+pkΟƒ2).R_k^{\text{ZF}} = \log_2\!\left(1 + \frac{p_k}{\sigma^2}\right).

ZF converts the multi-user MIMO channel into KK parallel single-user channels. The cost is that the effective channel gain for each user is reduced because the precoder must avoid the other users' channel directions.

Theorem: ZF Noise Amplification (Power Penalty)

With ZF precoding and equal power allocation, the effective SNR at user kk is

SNRkZF=Pt/K[(HHH)βˆ’1]kk σ2.\text{SNR}_{k}^{\text{ZF}} = \frac{P_t/K}{[(\mathbf{H}\mathbf{H}^{H})^{-1}]_{kk}\, \sigma^2}.

For i.i.d. Rayleigh fading, [(HHH)βˆ’1]kk[(\mathbf{H}\mathbf{H}^{H})^{-1}]_{kk} is an inverse chi-squared random variable, and

E[1[(HHH)βˆ’1]kk]=Ntβˆ’K.\mathbb{E}\left[\frac{1}{[(\mathbf{H}\mathbf{H}^{H})^{-1}]_{kk}}\right] = N_t - K.

The ZF precoder thus suffers a power penalty of factor Ntβˆ’KN_t - K compared to the single-user MRT gain of NtN_t: it "wastes" KK degrees of freedom on interference nulling.

ZF forces the precoder into the (Ntβˆ’K+1)(N_t - K + 1)-dimensional null space of the other users' channels. With fewer degrees of freedom available, the precoder cannot align as well with the intended user's channel, resulting in a reduced effective channel gain. The penalty vanishes when Nt≫KN_t \gg K.

,

Example: ZF vs MRT for 8 Antennas and 4 Users

A BS with Nt=8N_t = 8 serves K=4K = 4 users with i.i.d. Rayleigh channels. Compare the average per-user SNR (in dB) of MRT and ZF for Pt/Οƒ2=10P_t/\sigma^2 = 10 dB. Assume equal power allocation.

SINR Comparison β€” MRT vs ZF vs Users

Compare the average per-user SINR of MRT and ZF as the number of users KK increases from 1 to Ntβˆ’1N_t - 1. Observe how MRT saturates due to interference while ZF degrades due to the shrinking null space.

Parameters
64

Number of transmit antennas

10

Transmit SNR in dB

Common Mistake: ZF Fails Near Rank Deficiency

Mistake:

Using ZF when KK is close to NtN_t, expecting good performance because "all interference is cancelled."

Correction:

When Kβ†’NtK \to N_t, the matrix HHH\mathbf{H}\mathbf{H}^{H} becomes ill-conditioned. The inverse amplifies noise dramatically: [(HHH)βˆ’1]kkβ†’βˆž[(\mathbf{H}\mathbf{H}^{H})^{-1}]_{kk} \to \infty in expectation as Ntβˆ’Kβ†’0N_t - K \to 0. In practice, if K>0.5NtK > 0.5 N_t, RZF/MMSE precoding should be used instead of ZF.

Common Mistake: ZF Requires Perfect CSI

Mistake:

Applying ZF precoding with estimated channels H^\hat{\mathbf{H}} without accounting for the estimation error.

Correction:

ZF with imperfect CSI does not achieve zero interference. The residual interference is proportional to the estimation error variance. With imperfect CSI, one should either (a) use RZF/MMSE precoding, which inherently accounts for error, or (b) use the UatF bound from Chapter 4 with ZF based on H^\hat{\mathbf{H}}, acknowledging the residual interference term.

Quick Check

A BS with Nt=32N_t = 32 antennas serves K=8K = 8 users with ZF precoding. How many degrees of freedom does each user's precoding vector have for signal enhancement?

3232

2525

2424

88

Why This Matters: ZF Precoding in 5G NR

In 5G NR, ZF-based precoding is the workhorse for MU-MIMO in both sub-6 GHz (FR1) and mmWave (FR2) deployments. The gNB computes the ZF precoder from SRS-based channel estimates in TDD mode, or from Type II CSI feedback in FDD mode. The standard supports up to 12 simultaneously scheduled MU-MIMO layers, and practical implementations typically use RZF (the regularised variant from Section 6.3) for robustness.

Zero-Forcing (ZF) Precoding

A linear precoding strategy that designs each user's precoding vector to lie in the null space of all other users' channels, completely eliminating multi-user interference at the cost of noise amplification.

Related: Maximum Ratio Transmission (MRT), Regularized Zero-Forcing (RZF)

Key Takeaway

ZF precoding eliminates all multi-user interference by projecting each user's precoder into the null space of the other channels. The cost is a power penalty of Ntβˆ’KN_t - K degrees of freedom. ZF outperforms MRT in the high-SNR, moderate-loading regime, but becomes ill-conditioned when Kβ†’NtK \to N_t.