Successive Interference Cancellation and V-BLAST
Detecting One Stream at a Time
If we could decode one symbol perfectly, subtract its contribution from the received vector, and then face a smaller MIMO problem with one less interferer, the whole task would become iterative rather than combinatorial. This is the idea behind Successive Interference Cancellation. The remarkable fact is that, when the ordering is chosen correctly and the receiver uses MMSE filters, this greedy procedure achieves MIMO capacity. The reason is the chain rule of mutual information: every decoded stream appears as genuine side information to the streams that follow.
Definition: Successive Interference Cancellation (SIC)
Successive Interference Cancellation (SIC)
SIC detects the streams sequentially. At each step ():
- Form a linear estimate of the -th transmitted symbol using a ZF or MMSE filter matched to the remaining channel submatrix.
- Make a hard decision .
- Subtract the reconstructed contribution: , where is the -th column of .
- Deflate by removing its -th column.
The permutation determines the detection order.
The V-BLAST algorithm (Foschini et al., 1998) is the archetype: MMSE filters at each stage, with chosen to maximize the post-detection SINR at every step.
Definition: Optimal V-BLAST Ordering
Optimal V-BLAST Ordering
At step , the optimal ordering rule selects where is the post-MMSE SINR on stream when the streams already decoded have been subtracted off. Equivalently, is the index of the smallest diagonal entry of the MMSE error-covariance matrix at stage .
The intuition: decode the strongest (most reliable) stream first. Its decision is most likely correct, so its subtraction injects the least residual error into the subsequent stages.
MMSE-SIC with Optimal Ordering (V-BLAST)
Complexity: naive; with recursive updatesThe -fold inversion can be replaced by a single QR decomposition with column pivoting β this is the numerically preferred implementation.
Theorem: MMSE-SIC Achieves Gaussian MIMO Capacity
Let with diagonal and noise . The sum rate achieved by MMSE-SIC β with any ordering , assuming genie-aided error-free decoding at each stage β equals the Gaussian MIMO mutual information:
Each decoded stream becomes side information for the next. The chain rule of mutual information says nothing is lost when conditional information is used; SIC just instantiates the chain rule operationally.
Chain rule setup
By the chain rule for mutual information, With genie-aided SIC, the conditioning on reflects the receiver's state: those symbols have been decoded and subtracted.
Post-cancellation channel
After canceling , the residual channel for and the remaining streams is where contains only columns of .
MMSE achieves the single-user bound
For a Gaussian input and Gaussian additive noise with interference, the MMSE receiver achieves the log-det mutual information where is the post-MMSE SINR on stream with the remaining streams as unknown interferers (a classical result β the MMSE filter is information-lossless).
Sum the chain
Summing over from 1 to and applying the chain rule identity gives .
Ordering is irrelevant for the sum
The chain rule holds for any permutation β the order changes the individual rate terms but not the sum. Ordering only matters for finite-block-length error propagation (which the genie assumption eliminates) and for matching each stream's decoder to a fixed rate.
Key Takeaway
MMSE-SIC is not merely a good heuristic β it is, up to ordering and coding details, an optimal receiver architecture for the Gaussian MIMO channel. The chain rule of mutual information is the theoretical engine; SIC is the algorithm that mechanizes it.
Error Propagation β The Honest Caveat
The capacity result assumes error-free cancellation at every stage. In practice, a single wrong decision at step contaminates every subsequent step. The effect is called error propagation and it is the reason uncoded MMSE-SIC loses several dB to coded systems. Proper ordering mitigates but does not eliminate propagation. Modern implementations combine SIC with strong per-stream channel coding (LDPC, Polar) so that early decoding errors are vanishingly rare.
Ordering Impact on V-BLAST BER
Compare the BER of V-BLAST with optimal ordering versus a fixed (arbitrary) ordering. At low-to-moderate SNR the ordering can buy 2-4 dB.
Parameters
Example: Two-Stream SIC Walkthrough
With , , and observation , run MMSE-SIC with optimal ordering on real BPSK (alphabet ). Report the detection order and the two decisions.
Stage 1: find the stronger stream
. Its inverse has diagonal entries approximately . The smallest diagonal (hence highest SINR) is stream 2.
Stage 1: filter and decide stream 2
The MMSE filter for stream 2 gives . Slicing to BPSK: .
Stage 1: subtract
.
Stage 2: decode stream 1
The remaining channel is , a rank-1 column. MMSE-combining: . Slicing: .
Summary
Detection order: . Decisions: . Reversing the order would have forced us to decode stream 1 first through a more polluted residual channel β a concrete instance of why ordering matters.
Historical Note: V-BLAST at Bell Labs
1996β1998In 1996 Foschini proposed Diagonal-BLAST (D-BLAST) as the first architecture aimed at approaching MIMO capacity. Its practical descendant, V-BLAST (1998, Wolniansky, Foschini, Golden, and Valenzuela), was demonstrated on a Bell Labs testbed that achieved 20-40 bit/s/Hz over the same bandwidth used by a single-antenna link. The demonstration was a turning point: it made the capacity gains of MIMO tangible for industry and set the tone for the next two decades of wireless design.
SIC Implementation in Modern Receivers
Industrial SIC receivers almost always run with QR-based recursive updates rather than repeated matrix inversions. The ordering is often computed once per coherence interval (not per symbol) and reused across many OFDM tones. Error propagation is managed by: (i) strong per-layer channel coding with interleaving, so a bad stream error becomes a burst the outer code can fix; (ii) list-SIC, where several candidate decisions are carried forward at each stage; (iii) iterative feedback between SIC and the outer decoder.
- β’
LTE/5G NR turbo-receivers iterate between SIC and LDPC/Polar decoding
- β’
Fixed-point SIC on commercial modems runs at under 10-bit internal precision
Integer-Forcing Linear Receivers
The integer-forcing receiver reinterprets MIMO detection as decoding integer linear combinations of lattice codewords rather than individual symbols. By matching the receiver's "effective channel" to a full-rank integer matrix , one obtains a novel linear receiver that strictly outperforms MMSE and, in many regimes, closes most of the gap to MMSE-SIC without its error-propagation issues. The algorithm hinges on LLL-type lattice reduction (Section 12.5) to find a good integer matrix, and it is one of the cleanest bridges between lattice-code theory and practical MIMO receiver design.
Successive Interference Cancellation
A multi-user / multi-stream receiver architecture that decodes one signal at a time, subtracting its contribution from the aggregate observation before decoding the next. Optimal for the Gaussian MIMO channel under the chain rule of mutual information.
Related: Optimal V-BLAST Ordering, MMSE Detector
V-BLAST
Vertical Bell Labs Layered Space-Time architecture. A specific MMSE-SIC receiver that decodes the highest-SINR stream first, subtracts its contribution, and iterates. Invented at Bell Labs in 1998.
Related: Successive Interference Cancellation (SIC), Foschini
Quick Check
In V-BLAST with optimal ordering, which stream is decoded FIRST at each stage?
The stream with the smallest channel gain
The stream with the highest post-detection SINR
The stream with the first index () for simplicity
A random stream (ordering does not matter)
Highest SINR means highest reliability, minimizing the propagation of errors.