{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Space-Time codes (Alamouti)\n", "## (MATLAB tutorial)\n", "### M.Sc. Vladimir Fadeev\n", "#### Kazan, 04.02.2019" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Introduction" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "There are a lot of problems of the radiowave transmission in the mobile communication networks. For example, attenuations, reflections, refractions, scatterings, frequency Doppler shifts etc. You can find some of the aspects of this topic in the [following tutorial](https://github.com/kirlf/CSP/blob/master/Channels/RicianFlatFading.ipynb). All of the multiplicative random distortions can be collected under the **fading** term.\n", "\n", "Different techniques exist for the fading supression, let us count some of them:\n", "\n", "1. [Frequency hopping](http://www.teletopix.org/gsm/slow-and-fast-frequency-hopping-in-gsm/) (to suppress frequency selectivity);\n", "2. Channel estimation and equalization via feedbacks (GSM, to suppress time variability);\n", "3. [Spectrum spreading](https://www.tu-ilmenau.de/fileadmin/public/iks/files/lehre/UMTS/09_WCDMA_ws18_19.pdf) (UMTS);\n", "4. Pilots (since UMTS) in Down-link and signal tracking in Up-link (to suppress time variability);\n", "5. [OFDM](https://www.tu-ilmenau.de/fileadmin/public/iks/files/lehre/UMTS/11_LTE_Radio_ws18.pdf) (LTE, to suppress frequency selectivity);\n", "6. [Time diversity (channel coding)](https://github.com/kirlf/CSP/tree/master/FEC);\n", "7. Polarization diversity (transmitter side) + Combiners (receiver side);\n", "8. **Space diversity** (see below).\n", "\n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Space diversity and array gain" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Applying the MISO, SIMO or MIMO techniques (in other words, using more antennas) we can achieve increasing of the **devirsity order**: the same information can be collected from the different directions (pathes) and, hence, with lower probability to be corrupted. Theoretical limit of the diversity order is the $M_TM_R$, where $M_T$ is the number of the transmit antennas, and $M_R$ is the number of the receive antennas.\n", "\n", "\"div\"\n", "\n", "> *Fig.1. Link stability induced with increasing orders of spatial diversity. In the limit, as $M_TM_R \\to \\infty$, the channel is perfectly stabilized and approaches an AWGN link \\[1, p.101\\]*.\n", "\n", "> **NOTE**:\n", "> Considered trerm means also that we sacrifice the data rate (compared to spatial multiplexing schemes) to achieve better quality. \n", "\n", "Moreover, using SIMO, MIMO or MISO (in case of the known channel) techniques **array gain** can be achieved. This means that application of the several receive antennas allows to increase the Signal-to-Noise ratio (SNR) on the receiver side. Theoretical limit of the array gain is the $M_R$.\n", "\n", "Diversity orders and array gains of the differnt configurations can be summarized in the tabel 1. for both channel is unknown (CU) and channel is known (CK) on the transmitter side.\n", "\n", ">Table. 1. Array gain and diversity order for \n", ">different multiple antenna configurations\n", "\n", "| Configuration | Diversity order | Array gain |\n", "| ------------- |:-------------:| -----:|\n", "| SIMO (CU) | $M_R$ | $M_R$ |\n", "| SIMO (CK) | $M_R$ | $M_R$ |\n", "| MISO (CU) | $M_T$ | 1 |\n", "| MISO (CK) | $M_T$ | $M_T$ |\n", "| MIMO (CU) | $M_TM_R$ | $M_R$ |\n", "| MIMO (CK) (DET)| $M_TM_R$ | $M_TM_R$ |\n", "\n", "\n", "Now we have a picture about theoretical aspects of the fading suppression. The next question is how to achieve these theoretical limits? What activation techniqes exist?\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Alamouti" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The widespread approach is Alamouti scheme which use for transmission following form:\n", "\n", "\"AlamF\"\n", "\n", "where $c_i$ is the input symbols ($i=1,2$), $t_i$ is the certain timeslot ($i=1,2$) and $\\mathbf{S}$ is the transmission matrix. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Alamouti scheme is **ortogonal** [1, p.93-95, 97-98] and does not require the channel state information.\n", "\n", "> **Task for the self-education**:\n", ">\n", "> Learn more about other transmission cases: \n", "> * receiver side diversity - Rx-MRC (Maximum Ratio Combining);\n", "> * transmitter side diversity (channel is known for the transmitter) - Tx-MRC;\n", "> * MIMO case (channel is known for the transmitter) - DET (Dominant Eigenmode Transmission)\n", "\n", "![Alam1](https://raw.githubusercontent.com/kirlf/CSP/master/MIMO/assets/Alamouti_1.jpg)\n", "![Alam2](https://raw.githubusercontent.com/kirlf/CSP/master/MIMO/assets/Alamouti_2.jpg)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# MATLAB Simulation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The following blocks (objects) can be used to simulate Alamouti transmission:\n", "\n", "* [comm.OSTBCEncoder](https://www.mathworks.com/help/comm/ref/comm.ostbcencoder-system-object.html?s_tid=doc_ta) - Ortogonal Space-Time Block Codes Encoder (Communications ToolBox);\n", "\n", "* [comm.OSTBCCombiner](https://www.mathworks.com/help/comm/ref/comm.ostbccombiner-system-object.html) - Ortogonal Space-Time Block Codes Combiner (Communications ToolBox);\n", "\n", "> **NOTE THAT**:\n", ">\n", "> According to [1, p.113] $r = \\frac{N}{T}$ (the spatial code rate defined as the average number of independent symbols (constructed from the N input symbols) transmitted from the $M_T$ antennas over $T$ symbol periods). E.g, for Alamouti scheme $r$ = 1.\n", ">\n", "> However, MathWorks use [another formula](https://www.mathworks.com/help/comm/ref/ostbcencoder.html) for similar variable.\n", "\n", "The channel was simulated according to the following tutorial: [Introduction to MIMO Systems](https://www.mathworks.com/help/comm/examples/introduction-to-mimo-systems.html), i.e. the channel is the invariant during the couple of snapshots (in other words, during the one Alamouti symbol transmission)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Simulation script**:\n", "\n", "> Vladimir Fadeev (2019). Alamouti over Rician flat fading channel (https://www.mathworks.com/matlabcentral/fileexchange/70557-alamouti-over-rician-flat-fading-channel), MATLAB Central File Exchange. Retrieved October 7, 2019." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![4.0](https://raw.githubusercontent.com/kirlf/CSP/master/MIMO/assets/Alamouti_4.png)\n", ">*Fig. 2. Bit-error ratio performance for simulated partly time invariant MISO and MIMO channels (light shadowing)*\n", "\n", "![0.6](https://raw.githubusercontent.com/kirlf/CSP/master/MIMO/assets/Alamouti_06.png)\n", ">*Fig. 3. Bit-error ratio performance for simulated partly time invariant MISO and MIMO channels (strong shadowing)*\n", "\n", "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**." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Tarokh codes\n", "\n", "As you may mention, Alamouti is the case when we have only two transmitt antennas ($M_T=2$). However other configurations are also available. For example, according to \\[2\\]:\n", "\n", "\"Tarokh\"\n", "\n", "> *Fig. 4. Transmission schemes of the $M_T=3$ and $M_T=4$ cases \\[2\\].*\n", "\n", "Actually, these codes require the same routines for the encoding and decoding as the Alamouti code and therefore they are collected into the **Ortogonal Space-Time Codes** term. \n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# References\n", "\n", "1. Paulraj, Arogyaswami, Rohit Nabar, and Dhananjay Gore. Introduction to space-time wireless communications. Cambridge university press, 2003.\n", "\n", "2. Tarokh, V., Jafarkhani, H., & Calderbank, A. R. (1999). Space-time block codes from orthogonal designs. IEEE Transactions on Information theory, 45(5), 1456-1467.\n", "\n", "# Suggested literature\n", "\n", "1. Tiwari, K., & Saini, D. S. (2014, December). BER performance comparison of MIMO system with STBC and MRC over different fading channels. In High Performance Computing and Applications (ICHPCA), 2014 International Conference on (pp. 1-6). IEEE.\n", "\n" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.4" } }, "nbformat": 4, "nbformat_minor": 2 }