Space–time block code

Space–time block code

:"This article deals with coherent space–time block codes (STBCs). For differential space–time block codes, see differential space–time codes.

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 will be 'better' 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 had focused on having an antenna array at only one end of the wireless link — usually at the receiver. Seminal papers by Gerard J. Foschini and Michael J. Gans [cite journal|author=Gerard J. Foschini and Michael. J. Gans|title=On limits of wireless communications in a fading environment when using multiple antennas|journal=Wireless Personal Communications|pages=311–335|volume=6|issue=3|month=January | year=1998|doi=10.1023/A:1008889222784] , Foschini [cite journal|author=Gerard J. Foschini|title=Layered space-time architecture for wireless communications in a fading environment when using multi-element antennas|journal=Bell Labs Technical Journal |pages=41–59|volume=1|number=2|date=autumn 1996|doi=10.1002/bltj.2015] and Emre Telatar [cite journal|author=I. Emre Telatar|title=Capacity of multi-antenna gaussian channels|journal=European Transactions on Telecommunications ,|month=November | year=1999|pages=585–595|volume=10|number=6] 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 codescite journal|author=Vahid Tarokh, Nambi Seshadri, and A. R. Calderbank|title=Space–time codes for high data rate wireless communication: Performance analysis and code construction|journal=IEEE Transactions on Information Theory|pages=744–765|volume=44|issue=2|month=March | year=1998|doi=10.1109/18.661517] (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 Alamouticite journal|author=S.M. Alamouti|title=A simple transmit diversity technique for wireless communications|journal=IEEE Journal on Selected Areas in Communications|pages=1451–1458|volume=16|issue=8|month=October | year=1998|doi=10.1109/49.730453] , and later Vahid Tarokh, Hamid Jafarkhani and Robert Calderbankcite journal|author=Vahid Tarokh, Hamid Jafarkhani, and A. R. Calderbank|title=Space–time block codes from orthogonal designs|journal=IEEE Transactions on Information Theory|pages=744–765|volume=45|issue=5|month=July | year=1999|url=|doi=10.1109/18.771146] 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.:mbox{time-slots}egin{matrix}mbox{transmit antennas}\left downarrowoverrightarrow{egin{bmatrix}s_{11} & s_{12} & cdots & s_{1n_T} \s_{21} & s_{22} & cdots & s_{2n_T} \vdots & vdots & & vdots \s_{T1} & s_{T2} & cdots & s_{Tn_T}end{bmatrix ight.end{matrix}Here, s_{ij} is the modulated symbol to be transmitted in time slot i from antenna j. There are to be T time slots and n_T transmit antennas as well as n_R receive antennas. This block is usually considered to be of 'length' T

The code rate of an STBC measures how many symbols per time slot it transmits on average over the course of one block. If a block encodes k symbols, the code-rate is:r = frac{k}{T} .

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).

There are also 'quasi-orthogonal STBCs' that allow some inter-symbol interference but can achieve a higher data rate, and even a better error-rate performance, in harsh conditions.

Design of STBCs

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. Orthogonal STBCs can be shown to achieve the maximum diversity allowed by this criterion.

Diversity criterion

Call a codeword:mathbf{c} = c_1^1c_1^2...c_1^{n_T}c_2^1c_2^2...c_2^{n_T}...c_T^1c_T^2...c_T^{n_T}and call an erroneously decoded received codeword:mathbf{e} = e_1^1e_1^2...e_1^{n_T}e_2^1e_2^2...e_2^{n_T}...e_T^1e_T^2...e_T^{n_T}.Then the matrix:mathbf{B}(mathbf{c},mathbf{e}) =egin{bmatrix}e_1^1 - c_1^1 & e_2^1 - c_2^1 & cdots & e_T^1 - c_T^1\e_1^2 - c_1^2 & e_2^2 - c_2^2 & cdots & e_T^2 - c_T^2\vdots & vdots & ddots & vdots\e_1^{n_T} - c_1^{n_T} & e_2^{n_T} - c_2^{n_T} & cdots & e_T^{n_T} - c_T^{n_T}\end{bmatrix}has to be full-rank for any pair of distinct codewords mathbf{c} and mathbf{e} to give the maximum possible diversity order of n_Tn_R. If instead, mathbf{B}(mathbf{c},mathbf{e}) has minimum rank b over the set of pairs of distinct codewords, then the space–time code offers diversity order bn_R. 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

Alamouti invented the simplest of all the STBCs in 1998, 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::C_2 = egin{bmatrix} s_1 & s_2\ -s_2^* & s_1^* end{bmatrix},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 2n_R-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 n_R copies received.

This is a very special STBC. It is the only orthogonal STBC that achieves rate-14. 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

Tarokh et al. discovered a set of STBCscite journal|author=Vahid Tarokh, Hamid Jafarkhani, and A. Robert Calderbank|title=Space–time block coding for wireless communications: performance results|journal=IEEE Journal on Selected Areas in Communications|pages=451–460|volume=17|issue=3|month=March | year=1999|url=|doi=10.1109/49.753730|format=PDF] 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

Two straightforward codes for 3 transmit antennas are::C_{3,1/2}=egin{bmatrix}s_1 & s_2 & s_3\-s_2 &s_1&s_4\-s_3&s_4&s_1\-s_4&-s_3&s_2\s_1^* & s_2^*&s_3^*\-s_2^* &s_1^*&s_4^*\-s_3^*&s_4^*&s_1^*\-s_4^*&-s_3^*&s_2^*end{bmatrix}quadmbox{and}quadC_{3,3/4}=egin{bmatrix}s_1&s_2&frac{s_3}{sqrt 2}\-s_2^*&s_1^*&frac{s_3}{sqrt 2}\frac{s_3^*}{sqrt 2}&frac{s_3^*}{sqrt 2}&frac{left(-s_1-s_1^*+s_2-s_2* ight)}{2}\frac{s_3^*}{sqrt 2}&-frac{s_3^*}{sqrt 2}&frac{left(s_2+s_2^*+s_1-s_1^* ight)}{2}end{bmatrix}.

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 C_{3,3/4} 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

Two straightforward codes for 4 transmit antennas are::C_{4,1/2}=egin{bmatrix}s_1 & s_2 & s_3&s_4\-s_2 &s_1&-s_4&s_3\-s_3&s_4&s_1&-s_2\-s_4&-s_3&s_2&s_1\s_1^* & s_2^*&s_3^*&s_4^*\-s_2^* &s_1^*&-s_4^*&s_3^*\-s_3^*&s_4^*&s_1^*&-s_2^*\-s_4^*&-s_3^*&s_2^*&s_1^*end{bmatrix}quadmbox{and}quad{}C_{4,3/4}=egin{bmatrix}s_1&s_2&frac{s_3}{sqrt 2}&frac{s_3}{sqrt 2}\-s_2^*&s_1^*&frac{s_3}{sqrt 2}&-frac{s_3}{sqrt 2}\frac{s_3^*}{sqrt 2}&frac{s_3^*}{sqrt 2}&frac{left(-s_1-s_1^*+s_2-s_2* ight)}{2}&frac{left(-s_2-s_2^*+s_1-s_1^* ight)}{2}\frac{s_3^*}{sqrt 2}&-frac{s_3^*}{sqrt 2}&frac{left(s_2+s_2^*+s_1-s_1^* ight)}{2}&-frac{left(s_1+s_1^*+s_2-s_2^* ight)}{2}end{bmatrix}.

These codes achieve rate-1/2 and rate-3/4 respectively, as for their 3-antenna counterparts. C_{4,3/4} exhibits the same uneven power problems as C_{3,3/4}. An improved version of C_{4,3/4} is [cite journal|author=G. Ganesan and P. Stoica|title=Space–time block codes: A maximum SNR approach|journal=IEEE Transactions on Information Theory|pages=1650–1656|volume=47|issue=4|month=May | year=2001|doi=10.1109/18.923754] :C_{4,3/4}=egin{bmatrix}s_1&s_2&s_3&0\-s_2^*&s_1^*&0&s_3\-s_3^*&0&s_1^*&-s_2\0&-s_3^*&s_2^*&s_1end{bmatrix},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 t, the signal r_t^j received at antenna j is::r_t^j = sum_{i=1}^{n_T}alpha_{ij}s_t^i + n_t^j,where alpha_{ij} is the path gain from transmit antenna i to receive antenna j, s_t^i is the signal transmitted by transmit antenna i and n_t^j is a sample of additive white Gaussian noise (AWGN).

The maximum-likelihood detection rule is to form the decision variables:R_i = sum_{t=1}^{n_T}sum_{j=1}^{n_R}r_t^jalpha_{epsilon_{t}(i)j}delta_t(i)where delta_k(i) is the sign of s_i in the kth row of the coding matrix, epsilon_k(p)=q denotes that s_p is (up to a sign difference), the (k,q) element of the coding matrix, for i=1,2...n_T and then decide on constellation symbol s_i that satisfies:s_i = arg{}min_{sinmathcal{Aleft|R_i - s ight|^2 + left(-1 + sum_{k,l}^{}left|alpha_{kl} ight|^2 ight)left|s ight|^2,with mathcal{A} the constellation alphabet. Despite its appearance, this is a simple, linear decoding scheme that provides maximal diversity.

Rate limits

Apart from there being no full-rate, complex, orthogonal STBC for more than 2 antennas, it has been further shown that, for more than three antennas, the maximum possible rate is 3/4cite journal|author=Haiquan Wang and Xiang-Gen Xia|title=Upper bounds of rates of complex orthogonal space–time block codes|journal=IEEE Transactions on Information Theory|pages=2788–2796|volume=49|issue=10|month=October | year=2003|doi=10.1109/TIT.2003.817830] . Codes have been designed which achieve a good proportion of this, but they have very long block-length and are unsuitable for practical use. This is because decoding cannot proceed until "all" transmissions in a block have been received, so a longer block-length, T 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! [cite journal|author=Weifeng Su, Xiang-Gen Xia, and K. J. Ray Liu|title=A systematic design of high-rate complex orthogonal space-time block codes|journal=IEEE Communications Letters|pages=380–382|volume=8|issue=6|month=June | year=2004|doi=10.1109/LCOMM.2004.827429]

It has been proven [cite journal|author=Xue-Bin Liang|title=Orthogonal Designs With Maximum Rates|journal=IEEE Transactions on Information Theory|pages=2468–2503|volume=49|issue=10|month=October | year=2003|doi=10.1109/TIT.2003.817426] that the highest rate any n_T-antenna code can achieve is:r_{mathrm{max = frac{n_0 + 1}{2n_0},where n_T = 2n_0 or n_T = 2n_0 - 1.

Quasi-orthogonal STBCs

These codes exhibit partial orthogonality and provide only part of the diversity gain mentioned above. An example reported by Hamid Jafarkhani is: [cite journal|author=Hamid Jafarkhani|title=A quasi-orthogonal space–time block code|journal=IEEE Transactions on Communications|pages=1–4|volume=49|issue=1|month=January | year=2001|doi=10.1109/26.898239] :C_{4,1} =egin{bmatrix}s_1 & s_2 & s_3 & s_4\-s_2^* & s_1^* & -s_4^* & s_3^*\-s_3^* & -s_4^* & s_1^* & s_2^*\s_4 & -s_3 & -s_2 & s_1end{bmatrix}.

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 22dB 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.

ee also

*Multiple-input and multiple-output (MIMO)
*Space-time block coding based transmit diversity (STTD)
*Space–time code
*Space–time trellis code
*Differential space–time code


Wikimedia Foundation. 2010.

Look at other dictionaries:

  • Space–time trellis code — Space–time trellis codes (STTCs) are a type of space–time code used in multiple antenna wireless communications. This scheme transmits multiple, redundant copies of a trellis (or convolutional) code distributed over time and a number of antennas… …   Wikipedia

  • Space-time block coding based transmit diversity — (STTD) is a method of transmit diversity used in UMTS third generation cellular systems. STTD is optional in the UTRAN air interface but mandatory for user equipment (UE). STTD utilizes space time block code (STBC) in order to exploit redundancy… …   Wikipedia

  • Space–time code — A space ndash;time code (STC) is a method employed to improve the reliability of data transmission in wireless communication systems using multiple transmit antennas. STCs rely on transmitting multiple, redundant copies of a data stream to the… …   Wikipedia

  • Differential space–time code — Differential space–time codes[1][2] are ways of transmitting data in wireless communications. They are forms of space–time code that do not need to know the channel impairments at the receiver in order to be able to decode the signal. They are… …   Wikipedia

  • Code — redirects here. CODE may also refer to Cultural Olympiad Digital Edition. Decoded redirects here. For the television show, see Brad Meltzer s Decoded. For code (computer programming), see source code. For other uses, see Code (disambiguation).… …   Wikipedia

  • Time Lord — This article is about the civilisation from Doctor Who. For other uses, see Time Lord (disambiguation). Doctor Who alien Time Lord Type …   Wikipedia

  • Code Monkeys — For the phrase on which this program s title is based, see code monkey. Code Monkeys Code Monkeys title card; main characters from left to right: Black Steve, Dave, Todd, Clare, Jerry, Mary, Mr. Larrity, Dean and Benny. G …   Wikipedia

  • Code page 437 — Code page 437, as rendered by the IBM PC using a VGA adapter. IBM PC or MS DOS code page 437, often abbreviated CP437 and also known as DOS US, OEM US or sometimes misleadingly referred to as the OEM font, High ASCII or Extended ASCII,[1][2] is… …   Wikipedia

  • Code Geass — Code Geass: Lelouch of the Rebellion First Code Geass DVD volume released in Japan. コードギアス 反逆のルルーシュ (Kōdo Giasu: Hangyaku no Rurūshu) …   Wikipedia

  • Space Shuttle — STS redirects here. For other uses, see STS (disambiguation). This article is about the NASA Space Transportation System vehicle. For the associated NASA STS program, see Space Shuttle program. For other shuttles and aerospace vehicles, see… …   Wikipedia