Wednesday, 6 July 2011


A space time code is a method employed to improve the reliability of data transmission in wireless communication systems using multiple transmit antennas.
            Essentially, two different space-time coding methods, namely space-time trellis codes (STTCs) and Space time block codes (STBCs) have been proposed. STTC has been introduced as a coding technique that promises full diversity and substantial coding gain at the price of a quite high decoding complexity. To avoid this disadvantage, STBCs have been proposed by the pioneering work of Alamouti.
             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.
             In our posts, we consider only coherent STBCs; i.e. the receiver knows the channel impairments through training or some other form of estimation.Matlab simulations and the relevant results are given for each of the STBCs discussed.
             We start off with the description of the simplest STBC which is the Alamouti STBC for 2 transmit and 1 receive antenna.Then, we discuss the Alamouti code for 2 transmit and 2 receive antennasThe decoding is done by  Zero Forcing( ZF ) technique. The modulation used is 16-QAM. 
             We describe the Golden code, a code for 2 transmit and 2 receive antennas which achieves full diversity and full rate. In the subsequent pages, we describe  two decoding algorithms for Golden code. They are Brute force ML and Sphere decoding.
             We give a comparision of Alamouti code and the Golden code. For the comparision to be fair, we maintain the  bit rates same  for both the codes. So we use 4-QAM modulation for the Golden code.
             We describe the Silver code, a code for 2 transmit and 2 receive antennas whose coding gain is slightly less than that of the Golden code but easier in implementation owing to its lesser decoding complexity. We decode it using the Sphere decoder.

              We then describe an
8X8 MIMO system that does not use any coding and decode it using ZF and V-BLAST techniques. Our aim here is to compare the performances of these two decoders.

Related Posts
     Alamouti Code
     Golden Code
     Silver Code
     8 X 8 Uncoded MIMO using VBlast and ZF


  1. there is an error in the vblast code...
    something to do with the [~,dd]
    plz..check it out..

  2. Hi .. the code works with matlab latest versions .. If u r working on older versions of matlab, replace '~' with some unused variable name. Anyhow, we have recently updated the code which runs on old compilers too.

  3. can i get practical application on golden code
    what want to be change to produce 16-QAM ?plz help me

    1. As of my knowledge, golden code is not yet practically implemented because of its high complexity of implementation. Although extensive research is carrying out on reducing the receiver complexities. If you want to implement golden code 16-QAM with ML decoder then the searches you have to made is 16^16 at the time of decoding.... you have to modify modulation part and decoding for loop which in the current code is running from 0 to 255

  4. can u tell how to integrate stbc with ofdm for 10000 bits

  5. what is the difference between viterbi algo used in decoding of STTC and for convolution codes