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
Hybrid Beamforming Architecture
The hybrid precoder decomposes into analog and digital parts:
where (analog, constant-modulus entries) and (digital). 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
DFT Codebook
A DFT codebook provides orthogonal beam directions:
for . 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 RF chains (where 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.
Implementation
# See code supplement ch24/python/hybrid_beamforming.py
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 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.