MMSE-SIC and the MAC Capacity Region

Breaking the Linear Barrier

All three linear receivers β€” MRC, ZF, MMSE β€” treat the multi-user interference as noise and detect all users simultaneously. But information theory tells us that the optimal strategy for the multiple access channel (MAC) is successive interference cancellation (SIC): decode one user, subtract its contribution from the received signal, then decode the next user in a cleaner channel.

MMSE-SIC combines the MMSE linear filter with SIC and achieves the entire MAC capacity region. This is the strongest result in this chapter β€” it shows that the fundamental limit of the uplink is attainable with a structured, implementable receiver.

Definition:

MAC Capacity Region

The capacity region of the MIMO MAC with channel matrix H\mathbf{H} and per-user power constraint PkP_k is the set of rate tuples (R1,…,RK)(R_1, \ldots, R_{K}) satisfying, for every subset SβŠ†{1,…,K}\mathcal{S} \subseteq \{1, \ldots, K\}:

βˆ‘k∈SRk≀log⁑2det⁑(I+1Οƒ2βˆ‘k∈SPkhkhkH).\sum_{k \in \mathcal{S}} R_k \leq \log_2 \det\left(\mathbf{I} + \frac{1}{\sigma^2} \sum_{k \in \mathcal{S}} P_k \mathbf{h}_k \mathbf{h}_k^H\right).

The sum capacity is

Csum=log⁑2det⁑(I+1Οƒ2HPHH)=βˆ‘i=1Klog⁑2(1+Ξ»iΟƒ2),C_{\text{sum}} = \log_2 \det\left(\mathbf{I} + \frac{1}{\sigma^2} \mathbf{H} \mathbf{P} \mathbf{H}^{H}\right) = \sum_{i=1}^{K} \log_2\left(1 + \frac{\lambda_i}{\sigma^2}\right),

where Ξ»i\lambda_i are the eigenvalues of HPHH\mathbf{H} \mathbf{P} \mathbf{H}^{H}.

The MAC capacity region is a polymatroid β€” a convex set described by 2Kβˆ’12^{K} - 1 constraints (one per non-empty subset). Every corner point corresponds to a particular decoding order in SIC.

Definition:

MMSE-SIC Receiver

The MMSE-SIC receiver operates as follows for a decoding order Ο€(1),Ο€(2),…,Ο€(K)\pi(1), \pi(2), \ldots, \pi(K):

  1. Stage 1: Apply the MMSE filter to detect user Ο€(1)\pi(1), treating all other users as interference. Decode x^Ο€(1)\hat{x}_{\pi(1)}.
  2. Stage 2: Subtract the contribution of user Ο€(1)\pi(1): y2=yβˆ’hΟ€(1)x^Ο€(1)\mathbf{y}_2 = \mathbf{y} - \mathbf{h}_{\pi(1)} \hat{x}_{\pi(1)}. Apply the MMSE filter to detect user Ο€(2)\pi(2) from y2\mathbf{y}_2, with one fewer interferer.
  3. Stage kk: Subtract all previously decoded users: yk=yβˆ’βˆ‘i=1kβˆ’1hΟ€(i)x^Ο€(i)\mathbf{y}_k = \mathbf{y} - \sum_{i=1}^{k-1} \mathbf{h}_{\pi(i)} \hat{x}_{\pi(i)}. Apply MMSE to detect Ο€(k)\pi(k).

If decoding is error-free (ideal SIC), user Ο€(k)\pi(k) sees an effective SINR

SINRΟ€(k)SIC=PΟ€(k)hΟ€(k)H(βˆ‘j=k+1KPΟ€(j)hΟ€(j)hΟ€(j)H+Οƒ2I)βˆ’1hΟ€(k).\text{SINR}_{\pi(k)}^{\text{SIC}} = P_{\pi(k)} \mathbf{h}_{\pi(k)}^H \left(\sum_{j=k+1}^{K} P_{\pi(j)} \mathbf{h}_{\pi(j)} \mathbf{h}_{\pi(j)}^H + \sigma^2 \mathbf{I}\right)^{-1} \mathbf{h}_{\pi(k)}.

The last user decoded (Ο€(K)\pi(K)) sees no interference at all and achieves the single-user MMSE rate. The first user decoded faces all Kβˆ’1K - 1 interferers.

Theorem: MMSE-SIC Achieves the MAC Sum Capacity

For any decoding order Ο€\pi, the sum of rates achieved by MMSE-SIC equals the MAC sum capacity:

βˆ‘k=1Klog⁑2(1+SINRΟ€(k)SIC)=log⁑2det⁑(I+1Οƒ2HPHH).\sum_{k=1}^{K} \log_2(1 + \text{SINR}_{\pi(k)}^{\text{SIC}}) = \log_2 \det\left(\mathbf{I} + \frac{1}{\sigma^2} \mathbf{H} \mathbf{P} \mathbf{H}^{H}\right).

Moreover, by varying the decoding order and using time-sharing, MMSE-SIC achieves the entire MAC capacity region.

This is a telescoping product identity. At each SIC stage, the MMSE filter extracts exactly the "information increment" that the new user contributes. The individual rates may change with the decoding order, but the sum is always the same β€” equal to the mutual information I(x;y)I(\mathbf{x}; \mathbf{y}).

Key Takeaway

MMSE-SIC achieves the MAC sum capacity for any decoding order. The individual user rates depend on the order, but the sum rate is always log⁑2det⁑(I+1Οƒ2HPHH)\log_2 \det(\mathbf{I} + \frac{1}{\sigma^2} \mathbf{H}\mathbf{P}\mathbf{H}^{H}). This is the strongest achievability result for the MIMO uplink and directly connects to ITA Ch. 15 on MAC coding.

MAC Rate Region: MMSE-SIC Corner Points

Visualize the two-user MAC rate region and the corner points achieved by the two SIC decoding orders. Observe that the sum rate is the same at both corners, and that linear receivers (MRC, ZF, MMSE without SIC) operate strictly inside the region.

Parameters
10
0.5

Path loss ratio between user 2 and user 1

16

MMSE-SIC Detection

Complexity: O(K2Nt)\mathcal{O}(K^{2} N_t) per symbol vector (recomputing the MMSE filter at each stage uses rank-one downdating rather than full re-inversion).
Input: Received signal y\mathbf{y}, channel matrix H\mathbf{H}, noise variance Οƒ2\sigma^2, powers P1,…,PKP_1, \ldots, P_{K}, decoding order Ο€\pi
Output: Detected symbols x^1,…,x^K\hat{x}_1, \ldots, \hat{x}_{K}
1. y1←y\mathbf{y}_1 \leftarrow \mathbf{y}
2. for k=1,…,Kk = 1, \ldots, K do
3. \quad Compute MMSE filter: gΟ€(k)←PΟ€(k)(βˆ‘j=kKPΟ€(j)hΟ€(j)hΟ€(j)H+Οƒ2I)βˆ’1hΟ€(k)\mathbf{g}_{\pi(k)} \leftarrow P_{\pi(k)} \left(\sum_{j=k}^{K} P_{\pi(j)} \mathbf{h}_{\pi(j)} \mathbf{h}_{\pi(j)}^H + \sigma^2\mathbf{I}\right)^{-1} \mathbf{h}_{\pi(k)}
4. \quad Soft estimate: x~Ο€(k)←gΟ€(k)Hyk\tilde{x}_{\pi(k)} \leftarrow \mathbf{g}_{\pi(k)}^H \mathbf{y}_k
5. \quad Hard decision: x^Ο€(k)←slice(x~Ο€(k))\hat{x}_{\pi(k)} \leftarrow \text{slice}(\tilde{x}_{\pi(k)})
6. \quad Cancel: yk+1←ykβˆ’hΟ€(k)x^Ο€(k)\mathbf{y}_{k+1} \leftarrow \mathbf{y}_k - \mathbf{h}_{\pi(k)} \hat{x}_{\pi(k)}
7. end for

Error propagation is the Achilles' heel of SIC: if user Ο€(k)\pi(k) is decoded incorrectly, the cancellation in step 6 adds interference rather than removing it, degrading all subsequent stages.

Common Mistake: Error Propagation in SIC

Mistake:

Analyzing MMSE-SIC assuming perfect cancellation (error-free decoding at each stage) and then directly applying the result to systems with finite-alphabet signaling and imperfect coding.

Correction:

In practice, decoding errors at early stages propagate to later stages, causing a BER floor. Strong channel codes (e.g., LDPC at rates below capacity) are essential to make the perfect-cancellation assumption approximately valid. Soft-output SIC (where log-likelihood ratios rather than hard decisions are subtracted) mitigates error propagation.

Historical Note: SIC: From Information Theory to Practical Receivers

1972–1998

Successive decoding for the MAC was established by Cover (1972) and Wyner (1974) as a capacity-achieving scheme. The connection between SIC and MMSE filtering was formalized in the BLAST (Bell Labs Layered Space-Time) architecture by Foschini (1996) and implemented by Wolniansky et al. (1998) in the first real-time MIMO prototype. BLAST used ZF-SIC (V-BLAST) rather than MMSE-SIC, but the insight β€” that successive cancellation turns a MIMO channel into a sequence of scalar channels β€” launched the practical MIMO era.

⚠️Engineering Note

Latency Impact of SIC

SIC introduces sequential processing: user Ο€(k)\pi(k) cannot begin decoding until user Ο€(kβˆ’1)\pi(k-1) is fully decoded. For coded systems with iterative decoding (e.g., LDPC), this adds significant latency.

In 5G NR, the uplink grant structure (DCI format 0_1) schedules users for simultaneous transmission on the same PRBs (MU-MIMO). The gNB typically uses linear detection (MMSE) rather than SIC to meet the latency budget. SIC is considered for NOMA-style overloaded scenarios where more users than layers are scheduled.

Practical Constraints
  • β€’

    Per-stage decoding latency: 0.1–0.5 ms for LDPC at typical code rates

  • β€’

    Total SIC latency for KK users: KΓ—K \times single-user decoding time

  • β€’

    5G NR HARQ timing budget: 4–8 ms round trip, limiting SIC depth to 2–4 stages

πŸ“‹ Ref: 3GPP TS 38.212, Section 6.2 (LDPC coding)

SIC (Successive Interference Cancellation)

A detection strategy that decodes users one at a time, subtracting each decoded user's contribution before detecting the next. Combined with MMSE filtering, achieves the MAC capacity region.

Related: MAC Capacity Region, Blast, Noma

Quick Check

If the MAC sum capacity is Csum=12C_{\text{sum}} = 12 bits/s/Hz, what is the sum rate achieved by MMSE-SIC (with perfect cancellation)?

Less than 12 bits/s/Hz (SIC has overhead)

Exactly 12 bits/s/Hz

More than 12 bits/s/Hz (SIC provides coding gain)

Depends on the decoding order