Codebook Design for Beam Alignment

Why Codebooks, Not Steering Vectors?

In Sections 20.1-20.2 we assumed that FRF\mathbf{F}_{\text{RF}} is a continuous variable to be optimized. In deployed mmWave systems, however, the analog phase-shifter states are selected from a discrete codebook F={v(1),,v(F)}\mathcal{F} = \{\mathbf{v}^{(1)}, \ldots, \mathbf{v}^{(|\mathcal{F}|)}\} of pre-designed beams. There are three reasons.

First, the channel is unknown. Before a data link exists, the base station and user must agree on a beam pair through a training (beam-alignment) phase. A finite codebook defines the set of candidates to try. Second, the RF hardware itself supports only a discrete set of phase states. The codebook must respect this hardware constraint. Third, a well-designed codebook offers a hierarchical structure: coarse beams first, refined beams after, which reduces training overhead from O(Nt)O(N_t) (exhaustive) to O(log2Nt)O(\log_2 N_t).

Definition:

DFT Codebook

The DFT codebook for a uniform linear array (ULA) of NtN_t antennas with λ/2\lambda/2 spacing consists of MM unit-norm beams

v(m)=1Nt(1ej2πm/Mej2π(2m)/Mej2π(Nt1)m/M),m=0,1,,M1.\mathbf{v}^{(m)} = \frac{1}{\sqrt{N_t}} \begin{pmatrix} 1 \\ e^{-j 2\pi m / M} \\ e^{-j 2\pi (2m) / M} \\ \vdots \\ e^{-j 2\pi (N_t-1)m/M} \end{pmatrix}, \quad m = 0, 1, \ldots, M - 1.

The mm-th beam points toward the angle θm\theta_m satisfying πsinθm=2πm/M\pi\sin\theta_m = 2\pi m / M, equivalently sinθm=2m/Mmod2\sin\theta_m = 2m/M \bmod 2. When M=NtM = N_t the beams are orthogonal and tile the angular range θ[π/2,π/2]\theta \in [-\pi/2, \pi/2] uniformly in sinθ\sin\theta. The codebook size MM is the angular resolution.

DFT beams are the columns of the M×NtM \times N_t DFT matrix. Their angular beamwidth is 2/Nt\sim 2/N_t radians - inversely proportional to the aperture. The number of orthogonal beams is capped at NtN_t, so oversampling (M>NtM > N_t) produces overlapping beams but finer pointing resolution.

,

Definition:

5G NR Type I and Type II Codebooks

5G NR Type I codebooks are DFT-like with oversampling: each codeword is a Kronecker product of a horizontal DFT vector and a vertical DFT vector, selected from two independent codebooks of oversampling factors O1,O2O_1, O_2. A rank-rr precoder is formed by rr such DFT beams combined with a co-phasing coefficient. The codebook size is O1O2N1N24O_1 O_2 N_1 N_2 \cdot 4 for rank-1 transmission, where N1×N2N_1 \times N_2 is the panel shape.

5G NR Type II codebooks are linear combinations of L4L \leq 4 orthogonal DFT beams per polarization, with amplitudes and phases reported per beam. The feedback overhead scales as L(log2O1O2+bA+bP)L \cdot (\log_2 O_1 O_2 + b_A + b_P) bits, where bAb_A is the amplitude quantization and bPb_P the phase quantization. Type II is used for high-rank multi-user MIMO; Type I is used for single-user rank reporting. Both are specified in 3GPP TS 38.214.

The choice of codebook is one of the most impactful design decisions in 5G NR. Type I is simpler and sufficient for high-mobility single-user cases. Type II enables the fine-grained MU-MIMO precoding of Chapters 6-8 at the cost of higher feedback overhead, and is the target of most 5G-Advanced (Release 18) enhancements.

,

Exhaustive Beam Sweep (Baseline)

Complexity: O(MtxMrx)O(M_{\text{tx}} M_{\text{rx}}) training symbols
Input: Tx codebook Ftx\mathcal{F}_{\text{tx}} of size MtxM_{\text{tx}},
Rx codebook Frx\mathcal{F}_{\text{rx}} of size MrxM_{\text{rx}}.
Output: Best beam pair (m^,n^)(\hat{m}, \hat{n}).
1. for m=1,,Mtxm = 1, \ldots, M_{\text{tx}} do
2. \quad Tx transmits training sequence with beam vtx(m)\mathbf{v}_{\text{tx}}^{(m)}
3. \quad for n=1,,Mrxn = 1, \ldots, M_{\text{rx}} do
4. \qquad Rx receives with beam vrx(n)\mathbf{v}_{\text{rx}}^{(n)}; measures rm,n=vrx(n)HHvtx(m)2r_{m,n} = |\mathbf{v}_{\text{rx}}^{(n)\,H} \mathbf{H} \mathbf{v}_{\text{tx}}^{(m)}|^2
5. \quad end for
6. end for
7. (m^,n^)argmaxm,nrm,n(\hat{m}, \hat{n}) \leftarrow \arg\max_{m,n} r_{m,n}

Each round is one pilot symbol and one RSRP measurement. For Mtx=Mrx=64M_{\text{tx}} = M_{\text{rx}} = 64, this is 4096 pilot symbols per alignment event - minutes at low SNR, seconds at high SNR. IEEE 802.11ad uses this scheme with small codebooks; 5G NR and 802.11ay use hierarchical refinement instead.

Theorem: Quantization Loss of a DFT Codebook

Let v\mathbf{v}^{\star} be the optimal continuous-phase transmit beamformer for a rank-1 LOS channel of direction θt\theta_t. Let v(m)\mathbf{v}^{(m^{\star})} be the closest DFT codeword of size MM, selected to minimize θtθm|\theta_t - \theta_m|. The beamforming-gain loss satisfies

v(m)Ha(θt)2vHa(θt)2sinc2 ⁣(NtM),\frac{|\mathbf{v}^{(m^{\star})\,H} \mathbf{a}(\theta_t)|^2}{|\mathbf{v}^{\star\,H} \mathbf{a}(\theta_t)|^2} \geq \text{sinc}^2\!\left(\frac{N_t}{M}\right),

where sinc(x)=sin(πx)/(πx)\text{sinc}(x) = \sin(\pi x)/(\pi x). In particular, with M=NtM = N_t (orthogonal DFT codebook) the worst-case loss is sinc2(1)0\text{sinc}^2(1) \approx 0, realized at the midpoint between two codewords; doubling MM reduces the worst-case loss to about 1 dB.

The DFT beampattern in the angular direction is a sinc-shaped lobe of width 2/Nt2/N_t. If the actual target direction falls exactly between two codebook beams, the loss is governed by the sinc sidelobe at the midpoint - a deep null at half-codebook spacing. Oversampling (larger MM) moves the midpoint closer to the main lobe of the nearest codeword.

Hierarchical Beam Codebook Patterns

Visualize the beam patterns of a hierarchical codebook across levels. Each level doubles the angular resolution (halves the beamwidth). The plot shows the angular gain versus direction θ\theta for a selectable codebook size and level.

Parameters
32
3

Level $k$ has $2^k$ beams covering the aperture

3

Example: Training Overhead: Exhaustive vs. Hierarchical

A mmWave link uses Nt=128N_t = 128 transmit antennas and Nr=16N_r = 16 receive antennas, each with its own codebook. Compare the training overhead (in pilot symbols) of exhaustive beam sweep and hierarchical refinement. Assume no beam ambiguity.

Common Mistake: Hierarchical Search Needs Enough SNR Per Level

Mistake:

Hierarchical beam search sounds strictly better than exhaustive sweep, so one might conclude to always use it.

Correction:

A wide beam covering 2Kk2^{K-k} fine directions has array gain Nt/2Kk\N_t/2^{K-k}, not Nt\N_t. At the coarsest level the gain may be 88-1616 dB below the best beam, and if the per-symbol SNR is insufficient, the wide-beam measurement collapses into noise and the wrong half is chosen. At very low SNR (deep shadow, initial access from afar) an exhaustive sweep with the highest-gain beams can be more reliable despite its overhead.

Beam Alignment

The process by which a transmitter and receiver agree on a pair of analog beams prior to data transmission. In mmWave and sub-THz systems, beam alignment dominates the link-acquisition time because the high path loss demands beamforming gain before any reliable communication can occur.

Related: Multi-Panel Array and Codebook, Exhaustive Search, Hierarchical Search, Initial Access

Why This Matters: Beam Management in 5G NR

5G NR implements beam alignment through the SSB/CSI-RS beam-sweeping protocol of Section 6.1 in TS 38.213. The base station transmits Synchronization Signal Blocks (SSBs) on a sequence of beams during the P1 procedure, allowing the UE to select the best one. Fine refinement follows in procedures P2 (Tx refinement) and P3 (Rx refinement). The number of SSBs per burst is up to 64, directly reflecting the DFT codebook size used at initial access. Failure of beam tracking during mobility triggers a beam-failure recovery procedure - the mmWave counterpart of a handover.

Key Takeaway

Beam codebooks are not a compromise forced by hardware - they are the enabling data structure that makes mmWave link setup tractable. An oversampled DFT codebook provides the angular resolution; a hierarchical structure reduces training overhead from O(Nt)O(N_t) to O(\logNt)O(\logN_t); and the 3GPP Type I/II codebooks embed both into a deployable standard. Understanding codebook design is understanding where 5G mmWave actually happens.