- DSP log - http://www.dsplog.com -

Alamouti STBC with 2 receive antenna

Posted By Krishna Sankar On March 15, 2009 @ 9:01 pm In MIMO | 147 Comments

In the past, we had discussed two transmit, one receive antenna Alamouti Space Time Block Coding (STBC) [1] scheme. In this post, lets us discuss the impact of having two antennas at the receiver. For the discussion, we will assume that the channel is a flat fading Rayleigh multipath channel [2] and the modulation is BPSK.

## Alamouti STBC with two receive antenna

The principle of space time block coding with 2 transmit antenna and one receive antenna is explained in the post on Alamouti STBC [1]. With two receive antenna’s the system can be modeled as shown in the figure below.

Figure: 2 Transmit 2 Receive Alamouti STBC

For discussion on the channel and noise model, please refer to the post on two transmit, one receive antenna Alamouti Space Time Block Coding (STBC) [1] scheme.

The received signal in the first time slot is,

$\left[\begin{eqnarray}y_1^1 \\ y_2^1\end{eqnarray}\right] = {\left[\begin{array}{rr}\ h_{11}\ h_{12} \\h_{21}\ h_{22}\end{enarray}\right]}\left[\begin{eqnarray}x_1 \\ x_2 \end{eqnarray}\right]+\left[\begin{array}n_1^1\\n_2^1 \end{eqnarray}\right]$.

Assuming that the channel remains constant for the second time slot, the received signal is in the second time slot is,

$\left[\begin{eqnarray}y_1^2 \\ y_2^2\end{eqnarray}\right] = {\left[\begin{array}{rr}\ h_{11}\ h_{12} \\h_{21}\ h_{22}\end{enarray}\right]}\left[\begin{eqnarray}-x_2^* \\ x_1^* \end{eqnarray}\right]+\left[\begin{array}n_1^2\\n_2^2 \end{eqnarray}\right]$

where

$\left[\begin{eqnarray}y_1^1 \\ y_2^1\end{eqnarray}\right]$ are the received information at time slot 1 on receive antenna 1, 2 respectively,

$\left[\begin{eqnarray}y_1^2 \\ y_2^2\end{eqnarray}\right]$ are the received information at time slot 2 on receive antenna 1, 2 respectively,

$h_{ij}$ is the channel from $i^{th}$ receive antenna to $j^{th}$ transmit antenna,

$x_1$, $x_2$are the transmitted symbols,

$\left[\begin{eqnarray}n_1^1 \\ n_2^1\end{eqnarray}\right]$ are the noise at time slot 1 on receive antenna 1, 2 respectively and

$\left[\begin{eqnarray}n_1^2 \\ n_2^2\end{eqnarray}\right]$ are the noise at time slot 2 on receive antenna 1, 2 respectively.

Combining the equations at time slot 1 and 2,

$\left[\begin{array}{ll}y_1^1 \\ y_2^1 \\ y_1^2^* \\y_2^2^*\end{array}\right] = {\left[\begin{array}{rr}h_{11} & h_{12}\\h_{21} & h_{22}\\h_{12}^* & -h_{11}^*\\h_{22}^* & -h_{21}^* \end{enarray}\right]}\left[\begin{eqnarray}x_1 \\ x_2 \end{eqnarray}\right]+\left[\begin{array}n_1^1\\n_2^1 \\ n_1^2^*\\n_2^2^*\end{array}\right]$.

Let us define $\mathbf{H}= {\left[\begin{array}{rr}h_{11} & h_{12}\\h_{21} & h_{22}\\h_{12}^* & -h_{11}^*\\h_{22}^* & -h_{21}^* \end{enarray}\right]}$.

To solve for $\left[\begin{eqnarray}x_1 \\ x_2 \end{eqnarray}\right]$, we know that we need to find the inverse of $\mathbf{H}$.

We know, for a general m x n matrix, the pseudo inverse [3] is defined as,

$\mathbf{H^+}=(H^HH)^{-1}H^H$.

The term,

$(H^HH) =\left[\begin{array}{cc}|h_{11}|^2+|h_{21}|^2+ |h_{12}|^2 + |h_{22}|^2 & 0 \\ 0 & |h_{11}|^2+|h_{21}|^2+ |h_{12}|^2 + |h_{22}|^2\end{array}\right]$

Since this is a diagonal matrix, the inverse is just the inverse of the diagonal elements, i.e

$(H^HH)^{-1} =\left[\begin{array}{cc}\frac{1}{|h_{11}|^2+|h_{21}|^2+ |h_{12}|^2 + |h_{22}|^2} & 0 \\ 0 & \frac{1}{|h_{11}|^2+|h_{21}|^2+ |h_{12}|^2 + |h_{22}|^2}\end{array}\right]$

The estimate of the transmitted symbol is,

$\hat{\left[\begin{eqnarray}x_1 \\ x_2^*\end{eqnarray}\right]} = (H^HH)^{-1}H^H\left[\begin{array}{ll}y_1^1 \\ y_2^1 \\ y_1^2^* \\y_2^2^*\end{array}\right]$.

## Simulation Model

The Matlab/Octave script performs the following

(a) Generate random binary sequence of +1′s and -1′s.

(b) Group them into pair of two symbols

(c) Code it per the Alamouti Space Time code, multiply the symbols with the channel and then add white Gaussian noise.

(e) Perform hard decision decoding and count the bit errors

(f) Repeat for multiple values of $\frac{E_b}{N_0}$ and plot the simulation and theoretical results.

Figure: BER plot for 2 transmi 2 receive Alamouti STBC

## Observations

1. Can observe that the BER performance is much better than 1 transmit 2 receive MRC case. This is because the effective channel concatenating the information from 2 receive antennas over two symbols results in a diversity order of 4.

2. In general, with $m$ receive antennas, the diversity order for 2 transmit antenna Alamouti STBC is $2m$.

3. As with the case of 2 transmit, 1 receive Alamouti STBC [1], the fact that $(H^HH)$ is a diagonal matrix ensured that there is no cross talk between $x_1$, $x_2$ after the equalizer and the noise term is still white.

## Reference

A [6] Simple Transmit Diversity Technique for Wireless Communication [7]Siavash M Alamouti, IEEE Journal on selected areas in Communication, Vol 16, No, 8, October 1998

URLs in this post:

[1] two transmit, one receive antenna Alamouti Space Time Block Coding (STBC): http://www.dsplog.com/2008/10/16/alamouti-stbc/

[2] Rayleigh multipath channel: http://www.dsplog.com/2008/07/14/rayleigh-multipath-channel/

[3] pseudo inverse: http://planetmath.org/encyclopedia/Pseudoinverse.html

[4] Matlab/Octave script for computing BER for 2 transmit 2 receive Alamouti STBC for BPSK modulation in flat fading Rayleigh channel: http://www.dsplog.com/db-install/wp-content/uploads/2009/03/script_ber_2x2_alamouti_stbc_code_bpsk_rayleigh_channel.m