Spatial Multiplexing
Spatial Multiplexing transmits multiple independent data streams simultaneously over the same time-frequency resource by exploiting the spatial dimension of a MIMO channel. Covers MIMO fundamentals, SVD, SU/MU-MIMO, precoding, CSI feedback with Type I/Type II codebooks and subband/wideband reporting — from LTE through 5G NR Massive MIMO to the 6G frontier.
#1The MIMO Promise — Why Spatial Multiplexing
MIMO capacity scales linearly with min(N_Tx, N_Rx) — same bandwidth, same power, just more antennas:
Drag sliders to see how MIMO capacity scales with antenna count, SNR, and bandwidth
MIMO Capacity Formula
C = min(NTx, NRx) × B × log2(1 + SNR)
No extra spectrum. No extra power. Spatial multiplexing gain multiplies throughput by the number of independent spatial streams.
#2MIMO Channel Model Foundation
2.1 The Channel Matrix H
H (N_Rx × N_Tx): Received signal: y = H × x + n ┌ h₁₁ h₁₂ h₁₃ h₁₄ ┐ x = Tx signal vector │ h₂₁ h₂₂ h₂₃ h₂₄ │ y = Rx signal vector │ h₃₁ h₃₂ h₃₃ h₃₄ │ n = noise └ h₄₁ h₄₂ h₄₃ h₄₄ ┘ h_ij = complex gain from Tx_j to Rx_i
2.2 Rich Scattering vs Limited Scattering
Rich Scattering → Full Rank
Urban/indoor: many reflectors create independent paths → H is full rank → spatial multiplexing works
Limited Scattering → Rank 1
Rural LOS: single dominant path → columns of H are correlated → multiplexing fails, use diversity instead
#3SVD — Parallel Spatial Channels
The Singular Value Decomposition decomposes any MIMO channel into independent parallel sub-channels:
Adjust scattering richness — see how singular values change and how many parallel channels are available
Water-Filling Power Allocation
More power is allocated to stronger channels — weak channels below the water level get zero power
#4Channel Rank & Degrees of Freedom
The rank of H determines how many independent spatial streams can be transmitted:
Increase antenna correlation to see rank collapse — singular values drop to zero, reducing usable streams
Condition Number: κ = σmax / σmin
- κ ≈ 1 (0 dB) → All channels equally strong — ideal
- κ < 10 (10 dB) → Good spatial separation — usable
- κ > 100 (20 dB) → Poor separation — streams interfere heavily
#5SU-MIMO — Single-User Spatial Multiplexing
Multiple independent data streams sent to a single UE over the same time-frequency resource:
Data flows from codewords → layers → DMRS ports → antenna ports. Adjust layers to see the mapping change
| Scenario | Max DL Layers | Max UL Layers | Typical UE |
|---|---|---|---|
| FR1 (sub-6 GHz) | 8 | 4 | 2–4 DL (commercial) |
| FR2 (mmWave) | 4 | 2 | 2 DL (typical) |
#6MU-MIMO — Multi-User Spatial Multiplexing
Multiple UEs share the same time-frequency resource, separated spatially by precoding:
Good pairs have spatially separated channels (low correlation). Bad pairs are co-located → interference dominates
| Aspect | SU-MIMO | MU-MIMO |
|---|---|---|
| Streams go to | One UE | Multiple UEs |
| Per-UE throughput | Higher (all layers) | Lower (shared) |
| Cell throughput | Limited by single UE rank | Higher (aggregated) |
| Scheduling | Simpler | Complex pairing |
#7Precoding for Spatial Multiplexing
Precoding adjusts transmitted signals to cancel inter-stream interference at the receiver:
See how different precoders handle interference between streams — ZF forces zero interference, MMSE balances interference vs noise
| Precoder | Complexity | Performance | Used In |
|---|---|---|---|
| ZF | High (matrix inv) | Good (high SNR) | 5G NR baseline |
| MMSE | High | Better (all SNR) | 5G NR preferred |
| DPC | Extreme | Optimal | Theoretical only |
| BD | High | Good (MU-MIMO) | Advanced MU-MIMO |
#85G NR Layer Mapping & DMRS
| Parameter | Type 1 | Type 2 |
|---|---|---|
| Ports per CDM group | 2 | 3 |
| Max CDM groups | 2 | 2 |
| Max DMRS ports | 4 / 8 | 6 / 12 |
| Used for | ≤ 4 layers | > 4 layers, dense MU-MIMO |
#9CSI Feedback — RI, PMI, CQI
| Parameter | What It Reports | gNB Uses For |
|---|---|---|
| RI (Rank Indicator) | How many layers the channel supports | Set number of spatial streams |
| PMI (Precoding Matrix) | Best precoding weights for those layers | Apply beamforming weights |
| CQI (Channel Quality) | Supported MCS at target BLER | Set modulation order & code rate |
Rank Adaptation Simulation
Simulated UE moving through an urban environment — watch rank, CQI, and throughput adapt in real-time
Why Codebook-Based Precoding?
In FDD and FR2 mmWave, the gNB does not have direct access to the downlink channel matrix H. Sending the full H matrix would require enormous overhead — codebooks solve this by pre-defining a finite set of precoding matrices known to both ends (TS 38.214).
Codebook Principle
UE measures H → picks best matching matrix from codebook → feeds back only the PMI index (6–10 bits) instead of 640+ bits for full H. gNB receives PMI → looks up same matrix → applies precoding. ~100× overhead reduction.
DFT Beam Grid & Two-Stage Precoding: W = W1 × W2
5G NR codebooks are built from DFT beams — a grid of fixed beams covering all spatial directions. The precoding matrix uses a two-stage structure:
W1 — Wideband (Long-term)
Selects a subset of DFT beams from the oversampled grid. Captures coarse spatial direction. Changes slowly. Reported as wideband PMI.
W2 — Subband (Short-term)
Applies co-phasing and amplitude weighting to selected beams. Captures fine-grained per-subband variations. Reported as subband PMI.
DFT beam grid with oversampled angular resolution — adjust rank to see beam selection, oversampling for finer resolution
Type I Codebook — Single Beam Selection
Type I is the basic codebook for SU-MIMO. It selects a single dominant DFT beam direction per layer:
Type I — Single DFT Beam Per Layer ────────────────────────────────── Rank 1: One beam per polarization, co-phased Rank 2–4: Different beam per layer (from same W1 subset) PMI Payload: ~10–30 bits (W1: 4–8 bits wideband + W2: 3–6 bits/subband) Used when: SU-MIMO, ≤ 4 layers, FR1 sub-6 GHz 3GPP spec: TS 38.214 Section 5.2.2.2
Type II Codebook — Linear Combination of Beams
Type II is the advanced codebook for MU-MIMO and high-resolution precoding. It combines L = 2, 3, or 4 beams with individual amplitude and phase coefficients:
Type II — L Beams Combined Per Layer
─────────────────────────────────────
Precoder: W_l = W1 × Σ (p_l,i × c_l,i) × b_i (i = 1..L)
p_l,i = amplitude {1, √0.5, √0.25, √0.125} (3 bits/beam)
c_l,i = phase: QPSK (4 phases) or 8-PSK (8 phases)
PMI Payload: ~50–300 bits (10–20× more than Type I!)
Used when: MU-MIMO, high-order SU-MIMO, massive MIMO
3GPP spec: TS 38.214 Section 5.2.2.2.3
Type I vs Type II — Head-to-Head
| Aspect | Type I (Single Beam) | Type II (Multi-Beam) |
|---|---|---|
| Beams per layer | 1 (best single beam) | L = 2, 3, or 4 (linear combination) |
| PMI overhead | Low (10–30 bits) | High (50–300 bits) |
| Precoding accuracy | Moderate (one beam) | High (amplitude + phase per beam) |
| MU-MIMO suitability | Limited (coarse nulls) | Excellent (precise null steering) |
| Feedback channel | PUCCH or PUSCH | PUSCH only (too large for PUCCH) |
| Amplitude quantization | None (fixed) | 4 levels: {1, √0.5, √0.25, √0.125} |
| Phase quantization | QPSK (4 phases) | QPSK or 8-PSK (4 or 8 phases) |
| 3GPP release | Rel-15 baseline | Rel-15 enhanced, Rel-16 Port Selection |
Compare single-beam (Type I) vs multi-beam combining (Type II) — see how beam resolution improves precoding accuracy
Wideband vs Subband Feedback
CSI feedback can be reported with different frequency granularity:
| Aspect | Wideband (WB) | Subband (SB) |
|---|---|---|
| PMI granularity | 1 PMI for all subbands | 1 PMI per subband |
| CQI granularity | 1 CQI for all subbands | 1 CQI per subband |
| Overhead | Low (10–14 bits) | High (50–500+ bits) |
| Feedback channel | PUCCH or PUSCH | PUSCH only |
| Freq-selective gain | None | 10–30% throughput improvement |
| Best for | Cell edge, high mobility | Cell center, stationary, rich scatter |
Wideband applies one MCS everywhere; subband adapts per-subband — toggle to see the throughput difference in frequency-selective channels
CSI Reporting Modes — Periodic, Aperiodic, Semi-Persistent
5G NR supports three CSI reporting modes, each triggered differently and carried on different physical channels:
| Mode | Trigger | Channel | Payload | Best For |
|---|---|---|---|---|
| Periodic (P-CSI) | RRC configured | PUCCH | Small (WB), Type I only | Cell-edge, basic tracking |
| Aperiodic (A-CSI) | DCI request | PUSCH | Large (SB), Type I/II | On-demand, full CSI |
| Semi-Persistent (SP-CSI) | MAC CE / DCI | PUCCH or PUSCH | Medium | Stable channels |
Practical Decision Flow
- Cell edge / low SNR? → Periodic CSI (PUCCH, wideband Type I only)
- Cell center / good SNR? → Aperiodic CSI (PUSCH, subband Type II for MU-MIMO)
- Stationary UE? → Semi-persistent (activated, regular reports without per-report DCI)
- High mobility? → Periodic (short period) + aperiodic for rank adaptation
#10Diversity vs Multiplexing Trade-off
Zheng-Tse fundamental trade-off: you cannot simultaneously maximize both diversity and multiplexing gain
| Condition | Strategy | Why |
|---|---|---|
| High SNR + rich scatter | Spatial multiplexing | Channel supports multiple streams |
| Low SNR | Diversity (coding) | Need reliability, not rate |
| High mobility | Lower rank | Channel unstable, rank fluctuates |
| Cell center, good channel | Full multiplexing | Strong channel, high rank |
#11Massive MIMO Multiplexing
Favorable Propagation & Channel Hardening
As N grows, user channels become nearly orthogonal automatically — simple ZF becomes near-optimal
Massive MIMO Rule of Thumb
N ≥ 2K for good performance. 64 antennas → serve ~30 UEs simultaneously. 128 antennas → ~60 UEs. Each UE gets its own spatial stream on the same time-frequency resource.
#12Beam-Domain Multiplexing (6G)
Transform to the beam domain via lens array or DFT — channel becomes sparse, reducing processing complexity:
Spatial Domain
Process N×N channel matrix — high complexity. All elements contribute. Standard MIMO processing.
Beam Domain
Channel is SPARSE — only a few beams carry energy. Reduced RF chains. Better for mmWave/THz.
#13AI/ML-Driven Multiplexing (6G)
Traditional Precoding
H → compute WZF = H⁻¹ → apply. Fixed algorithm, assumes linear model, matrix inverse every slot.
Neural Precoding (6G)
H + environment → Neural Network → Woptimal. Handles hardware imperfections, adapts to context, O(1) inference.
6G AI/ML Applications
- Learned user pairing — GNN predicts optimal MU-MIMO groups in O(1)
- Adaptive rank prediction — AI predicts rank drop before it happens
- Neural precoding — end-to-end learned precoder outperforms ZF/MMSE
#14Complete Evolution — LTE → 5G → 6G
| Aspect | LTE | 5G NR | 6G (~2030) |
|---|---|---|---|
| Max DL layers | 4 | 8 (FR1), 4 (FR2) | 16+ |
| Max MU-MIMO users | 2 | 12+ | 100+ (cell-free) |
| Precoding | Codebook (LTE TM) | Type I + Type II codebook + non-codebook | AI/ML-optimized |
| CSI feedback | Periodic PMI/CQI/RI (WB) | Aperiodic (SB+WB) + semi-persistent; Type I/II | AI-predicted, reduced |
| Rank adaptation | Slow (10s of ms) | Fast (per-slot) | Predictive (pre-adapt) |
| Multiplexing domain | Spatial | Spatial + beam | Spatial + beam + near-field |
| Spatial model | Far-field only | Far-field dominant | Near-field dominant |
| Pairing algorithm | Greedy heuristic | Proportional fair | GNN-based learned |
#15Practical Field Considerations
| Pitfall | Impact | Best Practice |
|---|---|---|
| Assuming full rank everywhere | Overestimated throughput | Monitor RI distribution per cell |
| MU-MIMO with correlated UEs | Interference → throughput drop | Pair UEs with low channel correlation |
| No rank adaptation in mobility | Layer failures at high speed | Doppler-aware rank restriction |
| Ignoring antenna correlation | Effective rank < N_Rx | Check UE antenna spacing |
| Confusing layers with antennas | Wrong capacity estimates | Layers = streams, not physical antennas |
| Using Type I for MU-MIMO | Coarse nulls → inter-user interference | Enable Type II codebook (via RRC) |
| Subband feedback on PUCCH | Payload too large → report drop | Use aperiodic (PUSCH) for subband |
MU-MIMO Reality Check
Theoretical gain: K× cell throughput. Actual gain: 1.3× to 2× in commercial deployments. Gap causes: imperfect CSI, UE mobility, limited pairing options, hardware impairments, overhead.
#16Further Reading
3GPP Specifications
- TS 38.211 — NR Physical Channels (layer mapping, DMRS)
- TS 38.212 — NR Multiplexing and Channel Coding
- TS 38.213 — NR Physical Layer Procedures (CSI reporting triggers, periodic/aperiodic/semi-persistent)
- TS 38.214 — NR Physical Layer Procedures for Data (Type I/Type II codebooks, precoding, spatial multiplexing)
Research Papers
- "MIMO Wireless Communications" — Biglieri et al., Cambridge
- "Noncooperative Cellular Wireless with Unlimited Numbers of BS Antennas" — Marzetta, 2010
- "Diversity and Multiplexing: A Fundamental Tradeoff" — Zheng & Tse, IEEE 2003
- "Ultra-Massive MIMO in Spatial and Beam Domains" — Southeast University / IEEE 2025
Companion Resources
Telecom Leaders Podcast Beamforming Page → ☆ Cell-Free MAC →