Hybrid Beamforming

Why Hybrid Beamforming?

Full digital beamforming requires one RF chain per antenna. At mmWave with 256 elements, this is prohibitively expensive. Hybrid beamforming splits processing into analog (phase shifters) and digital (baseband), using far fewer RF chains.

Definition:

Hybrid Beamforming Architecture

The hybrid precoder decomposes into analog and digital parts:

W=FRFFBB\mathbf{W} = \mathbf{F}_{\text{RF}} \mathbf{F}_{\text{BB}}

where FRF∈CNtΓ—NRF\mathbf{F}_{\text{RF}} \in \mathbb{C}^{N_t \times N_{\text{RF}}} (analog, constant-modulus entries) and FBB∈CNRFΓ—Ns\mathbf{F}_{\text{BB}} \in \mathbb{C}^{N_{\text{RF}} \times N_s} (digital). NRFβ‰ͺNtN_{\text{RF}} \ll N_t is the number of RF chains.

def hybrid_precoder(H, N_rf, codebook):
    """Simple codebook-based hybrid precoding."""
    # Analog: select best beams from codebook
    beam_gains = np.abs(codebook.conj().T @ H.conj().T)
    best_beams = np.argsort(beam_gains.max(axis=1))[-N_rf:]
    F_rf = codebook[:, best_beams]
    # Digital: ZF on effective channel
    H_eff = H @ F_rf
    F_bb = np.linalg.pinv(H_eff)
    F_bb /= np.linalg.norm(F_rf @ F_bb, 'fro')
    return F_rf, F_bb

Definition:

DFT Codebook

A DFT codebook provides NN orthogonal beam directions:

fm=a(ΞΈm),ΞΈm=arcsin⁑(2m/Nβˆ’1)\mathbf{f}_m = \mathbf{a}(\theta_m), \quad \theta_m = \arcsin(2m/N - 1)

for m=0,1,…,Nβˆ’1m = 0, 1, \dots, N-1. This uniformly covers the visible range.

def dft_codebook(N, d_lambda=0.5):
    codebook = np.zeros((N, N), dtype=complex)
    for m in range(N):
        theta = np.arcsin(2*m/N - 1)
        codebook[:, m] = steering_vector(N, d_lambda, theta)
    return codebook / np.sqrt(N)

Theorem: Performance Loss of Hybrid vs Fully Digital

With NRFβ‰₯2NsN_{\text{RF}} \ge 2N_s RF chains (where NsN_s is the number of streams), hybrid beamforming can approach within 1-2 dB of fully digital beamforming. The loss comes from the constant-modulus constraint on analog weights.

The analog part steers beams coarsely; the digital part provides fine control. More RF chains allow finer analog control.

Example: Hybrid Beamforming Simulation

Simulate hybrid beamforming with 64 antennas and 4 RF chains, comparing with fully digital beamforming.

Hybrid vs Digital Beamforming

Compare hybrid and fully digital beamforming performance.

Parameters

Common Mistake: Ignoring Constant-Modulus Constraint

Mistake:

Designing the analog precoder with arbitrary complex entries, when in practice phase shifters can only change the phase (not amplitude).

Correction:

Enforce ∣[FRF]ij∣=1/Nt|[\mathbf{F}_{\text{RF}}]_{ij}| = 1/\sqrt{N_t} by using only the phase of each entry.

Hybrid Beamforming

A beamforming architecture that combines analog (phase shifter) and digital (baseband) processing, using fewer RF chains than antennas.

Beam Codebook

A predefined set of beamforming vectors used for beam sweeping and selection in practical systems.