Orthogonal Space-Time Block Codes

Generalising Alamouti: The OSTBC Idea

Alamouti's magic is a single algebraic identity: XAXAH∝I2\mathbf{X}_A\mathbf{X}_A^H \propto \mathbf{I}_2. The question that Tarokh, Jafarkhani, and Calderbank asked in 1999 was: for what ntn_t can we construct a codeword matrix with the same orthogonality? If the answer is positive, we immediately get a rate-K/TK/T code with full diversity ntnrn_t n_r and linear matched-filter decoding β€” by the exact same argument as Thm. 2nr2 n_r with Linear Decoding" data-ref-type="theorem">TAlamouti Achieves Full Diversity 2nr2 n_r with Linear Decoding.

The remarkable story of this chapter is that for the real case β€” real-valued symbols drawn from a PAM constellation β€” the question has a beautiful 19th-century answer: orthogonal designs exist at rate 1 for every ntn_t that is a power of 2, via the Hurwitz-Radon-Eckmann family. For the complex case β€” the practical one, with QAM or PSK inputs β€” the rate must drop below 1 as soon as nt>2n_t > 2, and the Liang-Tarokh 2003 bound (Β§3) gives the exact rate ceiling. This section constructs OSTBCs via dispersion matrices, proves full diversity, and works the two canonical examples: rate-1/21/2 for nt=3,4n_t = 3, 4 (with complex symbols) and rate-3/43/4 for nt=3,4n_t = 3, 4 (Tarokh-Jafarkhani-Calderbank 1999).

The central concept is the dispersion matrix expansion: every linear STBC can be written as X=βˆ‘q(Ξ±qAq+jΞ²qBq)\mathbf{X} = \sum_q (\alpha_q \mathbf{A}_q + j\beta_q \mathbf{B}_q) for fixed complex matrices Aq,Bq\mathbf{A}_q, \mathbf{B}_q and real scalars Ξ±q,Ξ²q\alpha_q, \beta_q (the real and imaginary parts of the qq-th information symbol). OSTBCs are the subclass in which the dispersion matrices satisfy Hurwitz-Radon-Eckmann orthogonality relations; LDCs (Β§5) relax these relations to any linear dispersion structure.

Definition:

Dispersion Matrix Expansion of a Linear STBC

A space-time block code C\mathcal{C} is linear in its KK complex information symbols sq=Ξ±q+jΞ²q,q=1,…,Ks_q = \alpha_q + j\beta_q, q=1, \ldots, K if every codeword can be written as Xβ€…β€Š=β€…β€Šβˆ‘q=1K(Ξ±qAq+jΞ²qBq),\mathbf{X} \;=\; \sum_{q=1}^{K} \bigl(\alpha_q \mathbf{A}_q + j\beta_q \mathbf{B}_q\bigr), where {Aq,Bq}q=1KβŠ‚CntΓ—T\{\mathbf{A}_q, \mathbf{B}_q\}_{q=1}^K \subset \mathbb{C}^{n_t \times T} is a fixed set of Q=2KQ = 2K dispersion matrices that depend only on the code (not on the data). Equivalently, every codeword lies in the real span of the QQ matrices {Aq}βˆͺ{jBq}\{\mathbf{A}_q\} \cup \{j\mathbf{B}_q\}.

The code is fully specified by the tuple ({Aq},{Bq},X)(\{\mathbf{A}_q\}, \{\mathbf{B}_q\}, \mathcal{X}) where X\mathcal{X} is the underlying constellation of the sqs_q's.

The dispersion-matrix representation is the most general linear structure an STBC can have. Every linear STBC is determined by its 2K2K matrices β€” Alamouti, OSTBCs, QOSTBCs, V-BLAST, LDCs all fit into this single framework and differ only in the algebra satisfied by the {Aq,Bq}\{\mathbf{A}_q, \mathbf{B}_q\}. For Alamouti, K=2K = 2 and the four dispersion matrices are the real/imaginary parts of A1=(1001),B1=(100βˆ’1),A2=(0βˆ’110),B2=(0110)\mathbf{A}_1 = \begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix}, \mathbf{B}_1 = \begin{pmatrix} 1 & 0 \\ 0 & -1 \end{pmatrix}, \mathbf{A}_2 = \begin{pmatrix} 0 & -1 \\ 1 & 0 \end{pmatrix}, \mathbf{B}_2 = \begin{pmatrix} 0 & 1 \\ 1 & 0 \end{pmatrix}.

,

Definition:

Orthogonal Space-Time Block Code (OSTBC)

A linear STBC C\mathcal{C} with dispersion matrices {Aq,Bq}\{\mathbf{A}_q, \mathbf{B}_q\} is an orthogonal space-time block code (OSTBC) if every codeword satisfies XXHβ€…β€Š=β€…β€Š(∣s1∣2+∣s2∣2+β‹―+∣sK∣2) Int\mathbf{X}\mathbf{X}^H \;=\; \bigl(|s_1|^2 + |s_2|^2 + \cdots + |s_K|^2\bigr)\,\mathbf{I}_{n_t} for every (s1,…,sK)∈XK(s_1, \ldots, s_K) \in \mathcal{X}^K. Equivalently, the dispersion matrices satisfy the Hurwitz-Radon-Eckmann relations: ApAqH+AqApHβ€…β€Š=β€…β€Š2Ξ΄pq Int,\mathbf{A}_p \mathbf{A}_q^H + \mathbf{A}_q \mathbf{A}_p^H \;=\; 2 \delta_{pq}\,\mathbf{I}_{n_t}, BpBqH+BqBpHβ€…β€Š=β€…β€Š2Ξ΄pq Int,\mathbf{B}_p \mathbf{B}_q^H + \mathbf{B}_q \mathbf{B}_p^H \;=\; 2 \delta_{pq}\,\mathbf{I}_{n_t}, ApBqH+BqApHβ€…β€Š=β€…β€Š0forΒ allΒ p,q.\mathbf{A}_p \mathbf{B}_q^H + \mathbf{B}_q \mathbf{A}_p^H \;=\; \mathbf{0} \quad \text{for all } p, q.

These three relations are exactly what is needed to make the cross terms in XXH\mathbf{X}\mathbf{X}^H vanish after expansion. They are called Hurwitz-Radon-Eckmann because they are the anti-commutation relations satisfied by the generators of a real Clifford algebra β€” the same algebra that underlies the classical sums-of-squares identities of Hurwitz (1898) and Radon (1922). The maximum number of such matrices of size nn is the Hurwitz-Radon number ρ(n)\rho(n), which is ≀n\le n for all nn and equals nn only for n∈{1,2,4,8}n \in \{1, 2, 4, 8\}. This is the deep algebraic reason why complex OSTBCs lose rate beyond nt=2n_t = 2 β€” see Β§3.

,

Theorem: Every OSTBC Achieves Full Diversity ntnrn_t n_r

Let C\mathcal{C} be an OSTBC with KK information symbols drawn from a constellation X\mathcal{X} and block length TT over the quasi-static i.i.d. Rayleigh MIMO channel. Then:

(a) The ML decoder decouples into KK independent scalar decisions, one per information symbol sqs_q: for each qq, the sufficient statistic is y~q=βˆ₯Hβˆ₯F2β‹…sq+w~q\tilde y_q = \|\mathbf{H}\|_F^2 \cdot s_q + \tilde w_q with w~q\tilde w_q white Gaussian.

(b) Each scalar decision has effective SNR SNReff=(SNR/nt)βˆ‘i,j∣hi,j∣2\text{SNR}_{\mathrm{eff}} = (\text{SNR}/n_t)\sum_{i,j}|h_{i,j}|^2 β€” a sum of ntnrn_t n_r Rayleigh magnitudes.

(c) Consequently, C\mathcal{C} achieves diversity d=ntnrd = n_t n_r β€” the full MIMO diversity order.

This theorem is a one-paragraph lift of the Alamouti argument. The OSTBC orthogonality XXH∝I\mathbf{X}\mathbf{X}^H \propto \mathbf{I} means that after any linear receiver processing, each information symbol appears with a noise that is independent of the other symbols and whose variance is scaled by βˆ₯Hβˆ₯F2\|\mathbf{H}\|_F^2 β€” a sum of ntnrn_t n_r i.i.d. squared Rayleigh magnitudes. The scaling 1/nt1/n_t is the transmit-power-splitting penalty (generalising the 3 dB of Alamouti to 10log⁑10nt10\log_{10} n_t).

,

Example: Alamouti with QPSK: Two Scalar QPSK Decisions

Specialise the Alamouti scheme of Β§1 to QPSK input (X={Β±1Β±j}/2\mathcal{X} = \{\pm 1 \pm j\}/\sqrt{2}), nt=2,nr=2n_t = 2, n_r = 2, i.i.d. Rayleigh channel at SNR SNR=10\text{SNR} = 10 dB per receive antenna. Compute the ML decoder decision rule, the expected effective SNR per symbol, and the approximate symbol-error probability PeP_e.

,

Example: Rate-3/43/4 OSTBC for nt=4n_t = 4: Tarokh-Jafarkhani-Calderbank 1999

Write down the rate-3/43/4 OSTBC of Tarokh-Jafarkhani-Calderbank 1999 for nt=4,T=4,K=3n_t = 4, T = 4, K = 3. Verify the orthogonality property XXH=(∣s1∣2+∣s2∣2+∣s3∣2)I4\mathbf{X}\mathbf{X}^H = (|s_1|^2 + |s_2|^2 + |s_3|^2)\mathbf{I}_4. Compare the rate to the Liang-Tarokh upper bound (§3).

,

Common Mistake: Codeword Orthogonality Is Not Channel Orthogonality

Mistake:

Reading "OSTBC has XXH=βˆ₯sβˆ₯2I\mathbf{X}\mathbf{X}^H = \|\mathbf{s}\|^2 \mathbf{I}" as the claim that the channel H\mathbf{H} becomes orthogonal somehow, or that the code requires HHH\mathbf{H}\mathbf{H}^{H} to be diagonal.

Correction:

The orthogonality is purely a codebook property β€” it holds for every channel realisation H\mathbf{H}. The receiver uses this codebook property to build an effective virtual channel whose columns are orthogonal (after symbol-wise conjugate-stacking as in the Alamouti proof). The actual MIMO channel H\mathbf{H} remains whatever it is β€” typically non-orthogonal i.i.d. Rayleigh.

The gain from OSTBC comes from exploiting channel randomness (the ntnrn_t n_r-fold diversity sum), not from orthogonalising it. Confusing the two would lead to the wrong conclusion that the OSTBC receiver needs to pre-whiten H\mathbf{H}, which it does not.

,

Quick Check

Which algebraic condition on the dispersion matrices {Aq,Bq}\{\mathbf{A}_q, \mathbf{B}_q\} distinguishes an OSTBC from a general linear dispersion code?

The 2K2K matrices satisfy Hurwitz-Radon-Eckmann anti-commutation relations (OSTBC only)

The dispersion matrices are all unitary

The codeword matrix X\mathbf{X} itself is unitary

The rate K/TK/T equals 1 (one complex symbol per channel use)

Orthogonal Space-Time Block Code (OSTBC)

A linear STBC whose codewords satisfy XXH=βˆ₯sβˆ₯2Int\mathbf{X}\mathbf{X}^H = \|\mathbf{s}\|^2 \mathbf{I}_{n_t} for every symbol choice, equivalently whose dispersion matrices satisfy Hurwitz-Radon-Eckmann anti-commutation. OSTBCs achieve full diversity ntnrn_t n_r with linear matched-filter decoding (Tarokh-Jafarkhani-Calderbank 1999).

Related: Alamouti Code, Dispersion Matrix, Hurwitz-Radon Number, Linear Space-Time Block Code

Dispersion Matrix

Fixed complex matrix Aq\mathbf{A}_q or Bq∈CntΓ—T\mathbf{B}_q \in \mathbb{C}^{n_t \times T} that multiplies the real (respectively imaginary) part of the qq-th information symbol in a linear STBC's codeword expansion X=βˆ‘q(Ξ±qAq+jΞ²qBq)\mathbf{X} = \sum_q (\alpha_q \mathbf{A}_q + j\beta_q \mathbf{B}_q). Introduced in the Hassibi-Hochwald 2002 LDC framework.

Related: Linear Space-Time Block Code, Orthogonal Space-Time Block Code (OSTBC), Linear Dispersion Code (LDC)