Content deleted Content added
Link suggestions feature: 3 links added. Tags: Visual edit Mobile edit Mobile web edit Newcomer task Suggested: add links |
|||
(197 intermediate revisions by more than 100 users not shown) | |||
Line 1:
{{Short description|WiFi option}}
{{About-distinguish|coherent space–time block codes|Differential space–time code}}
'''
==Introduction==
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.<ref>E. Larsson and P. Stoica,''Space-Time Block Coding For Wireless Communications''. Cambridge University Press, UK, 2003 (Chinese Edition, 2006).</ref> Seminal papers by [[Gerard J. Foschini]] and Michael J. Gans,<ref>{{cite journal|author1=Gerard J. Foschini |author2=Michael. J. Gans |name-list-style=amp |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|date=January 1998|doi=10.1023/A:1008889222784}}</ref> Foschini<ref>{{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|date=Autumn 1996|doi=10.1002/bltj.2015|issue=2}}</ref> and Emre Telatar<ref>{{cite journal|author=I. Emre Telatar|title=Capacity of multi-antenna gaussian channels|journal=European Transactions on Telecommunications|date=November 1999|pages=585–595|volume=10|doi=10.1002/ett.4460100604|issue=6|url=http://infoscience.epfl.ch/record/125918}}</ref> 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<ref name="sttc">{{cite journal|author1=Vahid Tarokh |author2=Nambi Seshadri |author3=A. R. Calderbank |name-list-style=amp |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|date=March 1998|doi=10.1109/18.661517|citeseerx=10.1.1.112.4293 }}</ref> (STCs) achieve significant [[bit error rate|error rate]] improvements over single-antenna systems. Their original scheme was based on [[convolutional code|trellis codes]] but the simpler [[block code]]s were utilised by [[Siavash Alamouti]],<ref name="alamouti">{{cite 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|date=October 1998|doi=10.1109/49.730453}}</ref> and later [[Vahid Tarokh]], [[Hamid Jafarkhani]] and [[Robert Calderbank]]<ref name="stbc">{{cite journal|author1=Vahid Tarokh|author2=Hamid Jafarkhani|author3=A. R. Calderbank|name-list-style=amp|title=Space–time block codes from orthogonal designs|journal=[[IEEE Transactions on Information Theory]]|pages=744–765|volume=45|issue=5|date=July 1999|url=http://www.mast.queensu.ca/~math800/W03/papers/TrkhJafarkCldb_IT99.pdf|doi=10.1109/18.771146|url-status=dead|archive-url=https://web.archive.org/web/20091229160912/http://www.mast.queensu.ca/~math800/W03/papers/TrkhJafarkCldb_IT99.pdf|archive-date=2009-12-29|citeseerx=10.1.1.138.4537}}</ref> 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 [[block code|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.
: <math>▼
▲The usual, and simplest representation of STBCs is in [[matrix (mathematics)|matrix]] form. In this form, each ''row'' represent a time-slot and each ''column'' represents one antenna's transmissions over time e.g.
▲:<math>
▲\mbox{time-slots}
\begin{matrix}
\
\left \downarrow
\overrightarrow{
Line 23 ⟶ 24:
}\right.
\end{matrix}
</math>
Here, <math>s_{ij}</math> is the [[modulation|modulated]] symbol to be transmitted
The [[code rate]] of an STBC measures how many symbols per time
▲The [[code rate]] of an STBC measures how many symbols per time-slot it transmits on average over the course of one block{{ref label|stbc|4|a}}. If a block encodes <math>k</math> symbols, the code-rate is
▲:<math>r = \frac{k}{T} </math>.
===Orthogonality===
STBCs as originally introduced, and as usually studied, are [[orthogonal]]. This means that the STBC is designed such that the [[vector (
==Design of STBCs==
The design of STBCs is based on the so-called
===Diversity criterion===
Call a codeword
:<math>\mathbf{c} = c_1^1c_1^2
and call an erroneously decoded received codeword
:<math>\mathbf{e} = e_1^1e_1^2
Then the matrix
:<math>\mathbf{B}(\mathbf{c},\mathbf{e}) =
\begin{bmatrix}
Line 50 ⟶ 58:
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}
</math>
has to be full-[[rank (linear algebra)|rank]] for any pair of distinct codewords <math>\mathbf{c}</math> and <math>\mathbf{e}</math> to give the maximum possible diversity order of <math>n_Tn_R</math>. If instead, <math>\mathbf{B}(\mathbf{c},\mathbf{e})</math> has minimum rank <math>b</math> over the set of pairs of distinct codewords, then the space-time code offers diversity order <math>bn_R</math>. An examination of the example STBCs shown [[#Encoding|below]] reveals that they all satisfy this criterion for maximum diversity.▼
▲has to be full-[[rank (linear algebra)|rank]] for any pair of distinct codewords <math>\mathbf{c}</math> and <math>\mathbf{e}</math> to give the maximum possible diversity order of <math>n_Tn_R</math>. If instead, <math>\mathbf{B}(\mathbf{c},\mathbf{e})</math> has minimum rank <math>b</math> over the set of pairs of distinct codewords, then the
As an aside, note that 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 code|space–time trellis codes]] which provide ''both'' diversity and coding gain since they spread a conventional trellis code over space and time.▼
▲
==Encoding==
===Alamouti's code===
Alamouti invented the simplest of all the STBCs in 1998{{ref label|alamouti|3|a}}, although he did not coin the term ''"space–time code"'' himself. It was designed for a two-transmit antenna system and has the coding matrix:▼
[[File:Alamouti 06.png|thumb|400px|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.<ref>[https://www.mathworks.com/help/comm/examples/introduction-to-mimo-systems.html Introduction to MIMO Systems (MathWorks)]</ref>]]
▲[[Siavash Alamouti]] invented the simplest of all the STBCs in 1998
:<math>C_2 = \begin{bmatrix}
-
\end{bmatrix},
</math>
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|decoding]] scheme discussed below, the [[bit error rate|bit-error rate]] (BER) of this STBC is equivalent to <math>2n_R</math>-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 <math>n_R</math> copies received.
This is a very special STBC. It is the '''only''' orthogonal STBC that achieves rate-1.<
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 controller|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===▼
▲===Higher order STBCs===
Tarokh et al. discovered a set of STBCs<ref name="stbc" /><ref name="perform">{{cite journal|author1=Vahid Tarokh|author2=Hamid Jafarkhani|author3=A. Robert Calderbank|name-list-style=amp|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|date=March 1999|url=http://www.mast.queensu.ca/~math800/W03/papers/TrkhJafarkCldb_JSAC99.pdf|doi=10.1109/49.753730|url-status=dead|archive-url=https://web.archive.org/web/20091229175920/http://www.mast.queensu.ca/~math800/W03/papers/TrkhJafarkCldb_JSAC99.pdf|archive-date=2009-12-29}}</ref> 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|decoding]] scheme that goes with their codes under perfect [[channel state information]] assumption.
====3 transmit antennas====
Line 80 ⟶ 94:
C_{3,1/2}=
\begin{bmatrix}
-
-
-
-
-
-
\end{bmatrix}
\quad\
C_{3,3/4}=
\begin{bmatrix}
-
\frac{
\frac{
\end{bmatrix}
</math>
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 <math>C_{3,3/4}</math> is that it has uneven power among the symbols it transmits. This means that the signal does not have a
====4 transmit antennas====
Line 106 ⟶ 120:
C_{4,1/2}=
\begin{bmatrix}
-
-
-
-
-
-
\end{bmatrix}
\quad\
C_{4,3/4}=
\begin{bmatrix}
-
\frac{
\frac{
\end{bmatrix}.
</math>
These codes achieve rate-1/2 and rate-3/4 respectively, as for their 3-antenna counterparts. <math>C_{4,3/4}</math> exhibits the same uneven power problems as <math>C_{3,3/4}</math>. An improved version of <math>C_{4,3/4}</math> is<ref>{{
:<math>
C_{4,3/4}=
\begin{bmatrix}
-
-
0&-
\end{bmatrix},
</math>
which has equal power from all antennas in all time-slots.
==Decoding==
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 <math>t</math>, the signal <math>r_t^j</math> received at antenna <math>j</math> is:
:<math>r_t^j = \sum_{i=1}^{n_T}\alpha_{ij}s_t^i + n_t^j</math>,▼
where <math>\alpha_{ij}</math> is the path gain from transmit antenna <math>i</math> to receive antenna <math>j</math> and <math>n_t^j</math> is a sample of [[additive white Gaussian noise|additive]] [[white noise|white]] [[Gaussian noise]] ([[AWGN]]).▼
The maximum-likelihood detection rule{{ref label|perform|6|a}} is to form the decision variables▼
▲where <math>\alpha_{ij}</math> is the path gain from transmit antenna <math>i</math> to receive antenna <math>j</math>, <math>s_t^i</math> is the signal transmitted by transmit antenna <math>i</math> and <math>n_t^j</math> is a sample of [[additive white
▲The maximum-likelihood detection rule
:<math>R_i = \sum_{t=1}^{n_T}\sum_{j=1}^{n_R}r_t^j\alpha_{\epsilon_{t}(i)j}\delta_t(i)</math>
where <math>\delta_k(i)</math> is the sign of <math>s_i</math> in the <math>k</math><sup>th</sup> row of the coding matrix, <math>\epsilon_k(p)=q</math> denotes that <math>s_p</math> is (up to a sign difference), the <math>(k,q)</math> element of the coding matrix,
for <math>i=1,2
:<math>s_i = \arg{}\min_{s\in\mathcal{A}}\left(\left|R_i - s\right|^2 + \left(-1 + \sum_{k,l}^{}\left|\alpha_{kl}\right|^2\right)\left|s\right|^2\right),</math>
with <math>\mathcal{A}</math> the [[constellation diagram|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
It has been
where <math>n_T = 2n_0</math> or <math>n_T = 2n_0 - 1</math>, if no linear processing is allowed in the code matrix (the above maximal rate proved in<ref name="COD"/> only applies to the original definition of orthogonal designs, i.e., any entry in the matrix is <math>0, c_i, -c_i, c_i^*,</math>, or <math>-c_i^*</math>, which forces that any variable <math>c_i</math> 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.<ref name="bounds" /> Closed-form recursive designs have been found.<ref>{{cite journal|author1=Kejie Lu |author2=Shengli Fu |author3=Xiang-Gen Xia |name-list-style=amp |title=Closed-Form Designs of Complex Orthogonal Space-Time Block Codes of Rates (k+1)/(2k) for 2k-1 or 2k Transmit Antennas|journal=IEEE Transactions on Information Theory|pages=4340–4347|volume=51|issue=12|date=December 2005|doi=10.1109/TIT.2005.858943|doi-access=free}}</ref>
==Quasi-orthogonal STBCs==
These codes exhibit partial orthogonality and provide only part of the diversity gain mentioned [[#Diversity criterion|above]]. An example reported by [[Hamid Jafarkhani]] is:<ref>{{
:<math>C_{4,1} =
\begin{bmatrix}
-
-
\end{bmatrix}.
</math>
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
Q-STBCs have also been developed considerably from the basic example shown.
==See also==
*[[Multiple-input and multiple-output]] (MIMO)
*[[Space–time block coding based transmit diversity]] (STTD)
*[[Space–time code]]
*[[
*[[Differential space–time code]]
==References==
{{Reflist|2}}
{{DEFAULTSORT:Space-time block code}}
[[Category:Wireless
|