Space–time block code

From Wikipedia, the free encyclopedia

Space–time block coding is a technique used in wireless communications to transmit multiple copies of a data stream across a number of antennas and to exploit the various received versions of the data to improve the reliability of data transfer. The fact that the transmitted signal must traverse a potentially difficult environment with scattering, reflection, refraction and so on and may then be further corrupted by thermal noise in the receiver means that some of the received copies of the data may be closer to the original signal than others. This redundancy results in a higher chance of being able to use one or more of the received copies to correctly decode the received signal. In fact, space–time coding combines all the copies of the received signal in an optimal way to extract as much information from each of them as possible.


Most work on wireless communications until the early 1990s had focused on having an antenna array at only one end of the wireless link — usually at the receiver.[1] Seminal papers by Gerard J. Foschini and Michael J. Gans,[2] Foschini[3] and Emre Telatar[4] enlarged the scope of wireless communication possibilities by showing that for the highly scattering environment, substantial capacity gains are enabled when antenna arrays are used at both ends of a link. An alternative approach to utilizing multiple antennas relies on having multiple transmit antennas and only optionally multiple receive antennas. Proposed by Vahid Tarokh, Nambi Seshadri and Robert Calderbank, these space–time codes[5] (STCs) achieve significant error rate improvements over single-antenna systems. Their original scheme was based on trellis codes but the simpler block codes were utilised by Siavash Alamouti,[6] and later Vahid Tarokh, Hamid Jafarkhani and Robert Calderbank[7] to develop space–time block-codes (STBCs). STC involves the transmission of multiple redundant copies of data to compensate for fading and thermal noise in the hope that some of them may arrive at the receiver in a better state than others. In the case of STBC in particular, the data stream to be transmitted is encoded in blocks, which are distributed among spaced antennas and across time. While it is necessary to have multiple transmit antennas, it is not necessary to have multiple receive antennas, although to do so improves performance. This process of receiving diverse copies of the data is known as diversity reception and is what was largely studied until Foschini's 1998 paper.

An STBC is usually represented by a matrix. Each row represents a time slot and each column represents one antenna's transmissions over time.

Here, is the modulated symbol to be transmitted in time slot from antenna . There are to be time slots and transmit antennas as well as receive antennas. This block is usually considered to be of 'length'

The code rate of an STBC measures how many symbols per time slot it transmits on average over the course of one block.[7] If a block encodes symbols, the code-rate is

Only one standard STBC can achieve full-rate (rate 1) — Alamouti's code.


STBCs as originally introduced, and as usually studied, are orthogonal. This means that the STBC is designed such that the vectors representing any pair of columns taken from the coding matrix is orthogonal. The result of this is simple, linear, optimal decoding at the receiver. Its most serious disadvantage is that all but one of the codes that satisfy this criterion must sacrifice some proportion of their data rate (see Alamouti's code).

Moreover, there exist quasi-orthogonal STBCs that achieve higher data rates at the cost of inter-symbol interference (ISI). Thus, their error-rate performance is lower bounded by the one of orthogonal rate 1 STBCs, that provide ISI free transmissions due to orthogonality.

Design of STBCs[edit]

The design of STBCs is based on the so-called diversity criterion derived by Tarokh et al. in their earlier paper on space–time trellis codes.[5] Orthogonal STBCs can be shown to achieve the maximum diversity allowed by this criterion.

Diversity criterion[edit]

Call a codeword

and call an erroneously decoded received codeword

Then the matrix

has to be full-rank for any pair of distinct codewords and to give the maximum possible diversity order of . If instead, has minimum rank over the set of pairs of distinct codewords, then the space–time code offers diversity order . An examination of the example STBCs shown below reveals that they all satisfy this criterion for maximum diversity.

STBCs offer only diversity gain (compared to single-antenna schemes) and not coding gain. There is no coding scheme included here — the redundancy purely provides diversity in space and time. This is contrast with space–time trellis codes which provide both diversity and coding gain since they spread a conventional trellis code over space and time.


Alamouti's code[edit]

Bit-error ratio performance of the simulated Alamouti transmission over the partially time-invariant MISO and MIMO channels (K = 0.6). Note that the case of Alamouti 2x1 completely matched with the theoretical 2nd order diversity, however, Alamouti 2x2 has the better BER performance due to additional array gain.[8]

Siavash Alamouti invented the simplest of all the STBCs in 1998,[6] although he did not coin the term "space–time block code" himself. It was designed for a two-transmit antenna system and has the coding matrix:

where * denotes complex conjugate.

It is readily apparent that this is a rate-1 code. It takes two time-slots to transmit two symbols. Using the optimal decoding scheme discussed below, the bit-error rate (BER) of this STBC is equivalent to -branch maximal ratio combining (MRC). This is a result of the perfect orthogonality between the symbols after receive processing — there are two copies of each symbol transmitted and copies received.

This is a very special STBC. It is the only orthogonal STBC that achieves rate-1.[5] That is to say that it is the only STBC that can achieve its full diversity gain without needing to sacrifice its data rate. Strictly, this is only true for complex modulation symbols. Since almost all constellation diagrams rely on complex numbers however, this property usually gives Alamouti's code a significant advantage over the higher-order STBCs even though they achieve a better error-rate performance. See 'Rate limits' for more detail.

The significance of Alamouti's proposal in 1998 is that it was the first demonstration of a method of encoding which enables full diversity with linear processing at the receiver. Earlier proposals for transmit diversity required processing schemes which scaled exponentially with the number of transmit antennas. Furthermore, it was the first open-loop transmit diversity technique which had this capability. Subsequent generalizations of Alamouti's concept have led to a tremendous impact on the wireless communications industry.

Higher order STBCs[edit]

Tarokh et al. discovered a set of STBCs[7][9] that are particularly straightforward, and coined the scheme's name. They also proved that no code for more than 2 transmit antennas could achieve full-rate. Their codes have since been improved upon (both by the original authors and by many others). Nevertheless, they serve as clear examples of why the rate cannot reach 1, and what other problems must be solved to produce 'good' STBCs. They also demonstrated the simple, linear decoding scheme that goes with their codes under perfect channel state information assumption.

3 transmit antennas[edit]

Two straightforward codes for 3 transmit antennas are:

These codes achieve rate-1/2 and rate-3/4 respectively. These two matrices give examples of why codes for more than two antennas must sacrifice rate — it is the only way to achieve orthogonality. One particular problem with is that it has uneven power among the symbols it transmits. This means that the signal does not have a constant envelope and that the power each antenna must transmit has to vary, both of which are undesirable. Modified versions of this code that overcome this problem have since been designed.

4 transmit antennas[edit]

Two straightforward codes for 4 transmit antennas are:

These codes achieve rate-1/2 and rate-3/4 respectively, as for their 3-antenna counterparts. exhibits the same uneven power problems as . An improved version of is[10]

which has equal power from all antennas in all time-slots.


One particularly attractive feature of orthogonal STBCs is that maximum likelihood decoding can be achieved at the receiver with only linear processing. In order to consider a decoding method, a model of the wireless communications system is needed.

At time , the signal received at antenna is:

where is the path gain from transmit antenna to receive antenna , is the signal transmitted by transmit antenna and is a sample of additive white Gaussian noise (AWGN).

The maximum-likelihood detection rule[9] is to form the decision variables

where is the sign of in the th row of the coding matrix, denotes that is (up to a sign difference), the element of the coding matrix, for and then decide on constellation symbol that satisfies

with the constellation alphabet. Despite its appearance, this is a simple, linear decoding scheme that provides maximal diversity.

Rate limits[edit]

Apart from there being no full-rate, complex, orthogonal STBC for more than 2 antennas, it has been further shown that, for more than two antennas, the maximum possible rate is 3/4.[11] Codes have been designed which achieve a good proportion of this, but they have very long block-length. This makes them unsuitable for practical use, because decoding cannot proceed until all transmissions in a block have been received, and so a longer block-length, , results in a longer decoding delay. One particular example, for 16 transmit antennas, has rate-9/16 and a block length of 22 880 time-slots![12]

It has been proven[13] that the highest rate any -antenna code can achieve is

where or , if no linear processing is allowed in the code matrix (the above maximal rate proved in[13] only applies to the original definition of orthogonal designs, i.e., any entry in the matrix is , or , which forces that any variable can not be repeated in any column of the matrix). This rate limit is conjectured to hold for any complex orthogonal space–time block codes even when any linear processing is allowed among the complex variables.[11] Closed-form recursive designs have been found.[14]

Quasi-orthogonal STBCs[edit]

These codes exhibit partial orthogonality and provide only part of the diversity gain mentioned above. An example reported by Hamid Jafarkhani is:[15]

The orthogonality criterion only holds for columns (1 and 2), (1 and 3), (2 and 4) and (3 and 4). Crucially, however, the code is full-rate and still only requires linear processing at the receiver, although decoding is slightly more complex than for orthogonal STBCs. Results show that this Q-STBC outperforms (in a bit-error rate sense) the fully orthogonal 4-antenna STBC over a good range of signal-to-noise ratios (SNRs). At high SNRs, though (above about 22 dB in this particular case), the increased diversity offered by orthogonal STBCs yields a better BER. Beyond this point, the relative merits of the schemes have to be considered in terms of useful data throughput.

Q-STBCs have also been developed considerably from the basic example shown.

See also[edit]


  1. ^ E. Larsson and P. Stoica,Space-Time Block Coding For Wireless Communications. Cambridge University Press, UK, 2003 (Chinese Edition, 2006).
  2. ^ Gerard J. Foschini & Michael. J. Gans (January 1998). "On limits of wireless communications in a fading environment when using multiple antennas". Wireless Personal Communications. 6 (3): 311–335. doi:10.1023/A:1008889222784.
  3. ^ Gerard J. Foschini (Autumn 1996). "Layered space-time architecture for wireless communications in a fading environment when using multi-element antennas". Bell Labs Technical Journal. 1 (2): 41–59. doi:10.1002/bltj.2015.
  4. ^ I. Emre Telatar (November 1999). "Capacity of multi-antenna gaussian channels". European Transactions on Telecommunications. 10 (6): 585–595. doi:10.1002/ett.4460100604.
  5. ^ a b c Vahid Tarokh; Nambi Seshadri & A. R. Calderbank (March 1998). "Space–time codes for high data rate wireless communication: Performance analysis and code construction". IEEE Transactions on Information Theory. 44 (2): 744–765. CiteSeerX doi:10.1109/18.661517.
  6. ^ a b S.M. Alamouti (October 1998). "A simple transmit diversity technique for wireless communications". IEEE Journal on Selected Areas in Communications. 16 (8): 1451–1458. doi:10.1109/49.730453.
  7. ^ a b c Vahid Tarokh; Hamid Jafarkhani & A. R. Calderbank (July 1999). "Space–time block codes from orthogonal designs" (PDF). IEEE Transactions on Information Theory. 45 (5): 744–765. CiteSeerX doi:10.1109/18.771146. Archived from the original (PDF) on 2009-12-29.
  8. ^ Introduction to MIMO Systems (MathWorks)
  9. ^ a b Vahid Tarokh; Hamid Jafarkhani & A. Robert Calderbank (March 1999). "Space–time block coding for wireless communications: performance results" (PDF). IEEE Journal on Selected Areas in Communications. 17 (3): 451–460. doi:10.1109/49.753730. Archived from the original (PDF) on 2009-12-29.
  10. ^ G. Ganesan & P. Stoica (May 2001). "Space–time block codes: A maximum SNR approach". IEEE Transactions on Information Theory. 47 (4): 1650–1656. doi:10.1109/18.923754.
  11. ^ a b Haiquan Wang & Xiang-Gen Xia (October 2003). "Upper bounds of rates of complex orthogonal space–time block codes". IEEE Transactions on Information Theory. 49 (10): 2788–2796. CiteSeerX doi:10.1109/TIT.2003.817830.
  12. ^ Weifeng Su; Xiang-Gen Xia & K. J. Ray Liu (June 2004). "A systematic design of high-rate complex orthogonal space-time block codes". IEEE Communications Letters. 8 (6): 380–382. CiteSeerX doi:10.1109/LCOMM.2004.827429.
  13. ^ a b Xue-Bin Liang (October 2003). "Orthogonal Designs With Maximum Rates". IEEE Transactions on Information Theory. 49 (10): 2468–2503. doi:10.1109/TIT.2003.817426.
  14. ^ Kejie Lu; Shengli Fu & Xiang-Gen Xia (December 2005). "Closed-Form Designs of Complex Orthogonal Space-Time Block Codes of Rates (k+1)/(2k) for 2k-1 or 2k Transmit Antennas". IEEE Transactions on Information Theory. 51 (12): 4340–4347. doi:10.1109/TIT.2005.858943.
  15. ^ Hamid Jafarkhani (January 2001). "A quasi-orthogonal space–time block code". IEEE Transactions on Communications. 49 (1): 1–4. CiteSeerX doi:10.1109/26.898239.