1 Star2 Stars3 Stars4 Stars5 Stars (4 votes, average: 4.5 out of 5)
Loading ... Loading ...
Print Print

Alamouti STBC with 2 receive antenna

by Krishna Sankar on March 15, 2009

In the past, we had discussed two transmit, one receive antenna Alamouti Space Time Block Coding (STBC) 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 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. 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) scheme.

The received signal in the first time slot is,

.

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

where

are the received information at time slot 1 on receive antenna 1, 2 respectively,

are the received information at time slot 2 on receive antenna 1, 2 respectively,

is the channel from receive antenna to transmit antenna,

, are the transmitted symbols,

are the noise at time slot 1 on receive antenna 1, 2 respectively and

are the noise at time slot 2 on receive antenna 1, 2 respectively.

Combining the equations at time slot 1 and 2,

.

Let us define .

To solve for , we know that we need to find the inverse of .

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

.

The term,

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

The estimate of the transmitted symbol is,

.

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.

(d) Equalize the received symbols

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

(f) Repeat for multiple values of and plot the simulation and theoretical results.

Click here to download Matlab/Octave script for computing BER for 2 transmit 2 receive Alamouti STBC for BPSK modulation in flat fading Rayleigh channel

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 receive antennas, the diversity order for 2 transmit antenna Alamouti STBC is .

3. As with the case of 2 transmit, 1 receive Alamouti STBC, the fact that is a diagonal matrix ensured that there is no cross talk between , after the equalizer and the noise term is still white.

Reference

[DIG-COMM-BARRY-LEE-MESSERSCHMITT] Digital Communication: Third Edition, by John R. Barry, Edward A. Lee, David G. Messerschmitt

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

Related posts

  1. Alamouti STBC
  2. MIMO with Zero Forcing equalizer
  3. Transmit beamforming
  4. Receive diversity in AWGN
  5. MIMO with Zero Forcing Successive Interference Cancellation equalizer

D id you like this article? Make sure that you do not miss a new article by subscribing to RSS feed OR subscribing to e-mail newsletter. Note: Subscribing via e-mail entitles you to download the free e-Book on BER of BPSK/QPSK/16QAM/16PSK in AWGN.

{ 68 comments… read them below or add one }

1 Alvina March 16, 2009 at 6:55 pm

very nice and comprehensive.

Reply

2 Alvina March 16, 2009 at 7:21 pm

there is a small errror, at network daigram both channels are marked as h21, wheres as one is h12.

Reply

3 Krishna Pillai March 21, 2009 at 8:51 am

@Alvina: Thanks. Indeed, it was a typo. I corrected and uploaded the new figure.

Reply

4 Joe March 16, 2009 at 9:41 pm

1. h11,h21,h12,h22, are independent fadings, each of one as a rayleigh distribution variable.

2. Consider 2 independent systems:

a. (TX#1 and TX#2) and RX#1 with h11 h21 fadings.
b. (TX#1 and TX#2) and RX#2 with h12 h22 fadings.

Each of both systems are treated like the simple 2×1 Alamouti case including the detection and symbol obtaining (yHat1 and yHat2)

3. The detection rule for MRC and Alamouti are the same (the estimated symbol equation).

With all this considerations i think is correct to take the sum of yHat1 and yHat2 (obtaining maximal ratio combining) and then apply the “hard decision decoding”.

Any comments??

Reply

5 Krishna Pillai March 21, 2009 at 8:57 am

@Joe: hmm… i had thought about it (infact, i recall your earlier comment to Alvina suggesting the same). However, I think that approach is not the optimal way to combine the information from two receive antennas.

I think what you have proposed is like equal gain combining, where as what is discussed in this post is like maximal ratio combining. I would think maximal ratio combining provides better performance. Do you agree? Kindly share your thoughts.

Reply

6 SUCHITRA March 19, 2009 at 6:47 pm

how u r getting theory results? any proof for formulae u have been used?

Reply

7 Krishna Pillai March 21, 2009 at 4:47 pm

@SUCHITRA: For the theoretical results on 1 transmit, 1 receive Rayleigh channel, you may refer to the posts
(a) http://www.dsplog.com/2008/08/10/ber-bpsk-rayleigh-channel/
(b) http://www.dsplog.com/2009/01/22/derivation-ber-rayleigh-channel/

For the results with with Ntx=1, NRx=2 MRC, I used the equations provided in the textbook. The simulations are provided in
(c) http://www.dsplog.com/2008/09/28/maximal-ratio-combining/

And ofcourse, Ntx=2, NRx=1 Alamouti STBC is 3dB poorer than the 1Tx x 2Rx MRC case.
(d) http://www.dsplog.com/2008/10/16/alamouti-stbc/

Hope this helps.

Reply

8 mustafa April 13, 2009 at 4:43 pm

hi Krishna Pillai.
i want thank u in the first about this info.second i want to know about modulation and De-mod 16-PSK. if u ca help me plz.

Regards

Reply

9 Krishna Pillai April 16, 2009 at 5:43 am

@mustafa: Please refer to the post on Symbol error rate for 16PSK
http://www.dsplog.com/2008/03/18/symbol-error-rate-for-16psk/

Reply

10 sasmita March 30, 2009 at 10:31 am

i want to simulate the SNR vs frequency offset in ofdm.krishna plz help me.

Reply

11 Krishna Pillai April 4, 2009 at 4:22 pm

@sasmita: I believe you want to calculate the SNR degradation due to introduction of the frequency offset. A probable quick way is as follows:
(a) Define modulation values for subcarriers in frequency domain X(F). Create the time domain symbol (x) by using IFFT.
(b) Introduce frequency offset at by multiplying x(t) with exp(j*2*pi*f_d*t), where f_d is the frequency offset, y(t) = x(t).*exp(j*2*pi*f_d*t)
(c) Take FFT of y(t) to find Y(F). Find the absolute difference between X(F) and Y(F)
Error Vector Magnitude, EVM = mean(|X(F) – Y (F)|^2
EVM, dB = 10*log10(EVM).

And EVM is good indication of the SNR degradation. Hope this helps.

Reply

12 Student A April 8, 2009 at 6:28 am

Hi Krishna,
Any suggest on how to combine MIMO with OFDM?

Reply

13 Krishna Pillai April 11, 2009 at 6:46 am

@student: extending a single antenna OFDM multiple antenna is reasonably straight forward. At the transmitter, we should have nTx iFFT’s and at the receiver we should have nRx FFT’s. Ofcourse, for each tx/rx chain, we should have the other miscellaneous blocks like filters, cyclic prefix insertion etc.

Reply

14 Solo April 13, 2009 at 7:22 pm

dear sir,
I have given a task to be done in just three days. Please can you help me doing it as it will be helpful to understand all the subject. apprecuated and here is all the question.

MIMO-OFDM: VBLAST versus STBC
The objective here is to compare VBLAST and Alamouti STBC in the context of MIMO-OFDM operating over frequency-selective Rayleigh fading channels. Consider a 2×2 system with N=64 carriers and a cyclic prefix long enough to avoid interblock interference. QPSK is used in STBC and BPSK is used in V-BLAST in order to have the same spectral efficiency. The discrete-time channels are assumed to be mutually uncorrelated and have L taps each. The taps are uncorrelated and obey an exponential power delay profile, i.e. E{|hk|2} = C.exp(- k) where C is a constant; take =0.2. It is assumed that the channel does not vary over two OFDM symbols. Assuming perfect knowledge of the channels at the receiver, provide simulations results depicting the average BERs for the two systems versus the average SNR in the cases where L=1, L=4, L=8, and L=16. Comment on the obtained results.

Reply

15 Krishna Pillai April 16, 2009 at 5:46 am

@Solo: I do not have the precise simulations which you were looking for, but I do have articles on MIMO and on STBC using BPSK on a flat fading Rayleigh channel. It should be reasonably easy for you to adapt to the OFDM case.
http://www.dsplog.com/2008/10/24/mimo-zero-forcing/
http://www.dsplog.com/2008/10/16/alamouti-stbc/

Hope this helps. Good luck.

Reply

16 mimo April 25, 2009 at 10:58 pm

Hello,

why do you multiply for 1/sqrt(2) in the line…
“sCode = 1/sqrt(2)*kron(reshape(s,2,N/2),ones(1,2)) ;”??

Thanks you.

Reply

17 Krishna Pillai April 30, 2009 at 5:17 am

@mimo: To make the total transmit power from both the antenna to be equal to 1.

Reply

18 MIMO April 30, 2009 at 6:30 pm

hello,

I’m thinking that why don’t you multiply for this factor in your post “MIMO with MMSE equalizer” in VBLAST??

thanks you.

Reply

19 Krishna Pillai May 12, 2009 at 4:45 am

@MIMO: Well, in the MIMO case, we have two transmit streams and the time duration to send N bits is reduced by 2. Hence we do multiply by 1/sqrt(2). Agree?

Reply

20 mimo April 26, 2009 at 12:29 am

Hello,

I am using real measures of h AND stbc and see that the channel (h) doesn’t influence in the BER. The simulation SNR-BER is always the same. Why is it??

thanks you.

Reply

21 Krishna Pillai April 30, 2009 at 5:18 am

@mimo: In this simulation, we are assuming independent Rayleigh fading channel and the channel remains the same for two symbols. What’s your assumption on the channel model?

Reply

22 MIMO May 3, 2009 at 11:59 pm

I have measures from a tunel and I have simulated for SNR =10dB the grafic BER-DISTANCE (50-500Metres). This figure is plane, that is to say that the channel doesn’t influence in Alamouti 2×2. Is it because is orthogonal??
thanks you.

Reply

23 Krishna Pillai May 12, 2009 at 5:02 am

@MIMO: Sorry, I was unable to follow your question.

Reply

24 UP April 26, 2009 at 6:35 am

What is the expression for theoritical BER for 2 Rx antennas?

Reply

25 Krishna Pillai April 30, 2009 at 5:23 am

@UP: Did you mean theoretical BER for 2 rx antennas with STBC or with MRC only. If it’s MRC alone, you may refer to the post
http://www.dsplog.com/2008/09/28/maximal-ratio-combining/

Reply

26 jefferson April 27, 2009 at 8:10 am

why no titles for STBC with
1) 4 or more transmitters
2) QPSK coding method
exists~?

Reply

27 Marcus May 1, 2009 at 12:40 pm

what if it’s theoretical BER for 2 rx antennas with STBC? what is the expression. Thank you.

Reply

28 Krishna Pillai May 12, 2009 at 4:47 am

@Marcus: Am just guessing…. I would think that the theoretical BER for Alamouti STBC with 2 rx antennas will be 3dB poorer than the theoretical BER for 1 transmit 4 receive MRC case. Do you agree?

Reply

29 fof May 20, 2009 at 5:24 pm

please would you help me?
i need a very simple code which uses only for loops or while loops for alamouti stbc for BPSK likehood…..not with hard decision…..sorry if i’m bothering you….please help me……thanx

Reply

30 Krishna Pillai May 22, 2009 at 5:28 am

@fof: I think, it should be reasonably easy for you to modify the current code and make it into for-loops.

Reply

31 fof May 23, 2009 at 12:46 pm

ok thanx alot……it’s done :) )

Reply

32 fof May 20, 2009 at 5:28 pm

would you help me??
i need a very simple code which uses only for loops or while loops….for alamouti STBC (likelihood detection)….for BPSK
sorry if i’m bothering you…..please help me…..thanx

Reply

33 Ken May 25, 2009 at 7:39 pm

Hello there!

Great codes! Is there a way to calculate the theoretical value of BER VS SNR for the 2X2 Alamouti Scheme?

Thanks alot!

Reply

34 Krishna Pillai May 31, 2009 at 8:19 pm

@Ken: Well, I would expect that Alamouti with 2 receive antennas will perform 3dB poorer than 1-transmit 4-receive Maximal Ratio Combining case. Agree?

Reply

35 mohammed June 4, 2009 at 5:41 pm

how can i calculate the transmitted power while using 2*2 Alamouti scheme. where BW, data rate,Path loss and distance between transmitter and receiver is given,,,,,

is there any formula available to calculate that,,,

sorry am bothering you,, please help me…

Reply

36 Krishna Pillai June 7, 2009 at 2:17 pm

@mohammed: Well, the transmit power is something which is controlled by power amplifier in the transmitter. I am guessing that your question is, given the value of transmit power, path loss, distance etc, how can i calculate the power received at the receiver. For computing the received power, you may refer to the path loss equations @
http://en.wikipedia.org/wiki/Log-distance_path_loss_model

Hope this helps.

Reply

37 Ustun July 3, 2009 at 3:20 am

Thanks for the great website, it is very helpful.

I observe that if we use only AWGN channel, and omit the Rayleigh channel, Alamouti scheme yields

- about 3dB better for 2×2 case compared to SISO,

- but yields the same performance as SISO for 2×1 case.

Could you comment on why that happens?

Reply

38 Krishna Pillai July 6, 2009 at 5:27 pm

@Ustun: By AWGN channel for 2×2 MIMO case, I believe you used a diagonal channel, right? That is equivalent to having two single channel SISO case.
One question: How did you make a 2 transmit, 1 receive AWGN channel?

Reply

39 surbhi August 24, 2009 at 12:01 pm

hi krishna,
u r doing very good job…
i have a one doubt plz find some time to clarify that.
tell what is the physical significance of using “KRON” that is based on the kronecker product while implementing ALMOUTI

surbhi

Reply

40 Krishna Sankar August 25, 2009 at 5:41 am

@surbhi: kron does not have any physical significance in understanding Alamouti STBC. However, I used it to make the matlab code run faster by performing matrix operations (instead of for loops).

Reply

41 mak_m September 9, 2009 at 3:15 pm

thanks very much ..this post is very helpful can u plz tel me the name of the book ur following ..so i can read about it in much detail as well as if i need i can reference it in my report.. can i get access that book online for free..
plz reply me
Many thanks in advance.

Reply

42 WiMAX September 19, 2009 at 5:12 pm

Hi Krishna, i’m working on Diversity exploitation in MIMO-OFDM (using STBC). I want to make a simulation with the help of Matlab of 2×2 system.

Any ideas or help regarding this subject?
Can i use OFDM instead of BPSK and if yes how can i do that?

P.S Your post are great!

Thanks in advance.

Reply

43 Krishna Sankar October 1, 2009 at 4:53 am

@WiMAX: Yes, you can use BPSK sent over OFDM. You may look at an example OFDM BER simulation in Rayleigh channel @
http://www.dsplog.com/2008/08/26/ofdm-rayleigh-channel-ber-bpsk/

Reply

44 praneeth September 30, 2009 at 10:32 pm

hi sir,
Is there any ieee (or any conference) papers published on this work?

Reply

45 Krishna Sankar October 1, 2009 at 5:32 am

@praneeth: The contents are discussed in text books, so am sure that IEEE papers should be available. However, I have not done the search and hence unable to provide you pointers.

Reply

46 WiMAX October 4, 2009 at 10:24 pm

Thanks Krishna, i will work on it!

Reply

47 najat shalash October 6, 2009 at 5:01 am

Dear kreshna:
I am a student work on OFDM.I know the bit error rate increase when the channel is frequency selective fading more than flat fading channel by using any modulation techniques like binary phase shift key in transmission the data. Can you help me writing a program by MATLAB show that.
I also need to show that OFDM is effective technique in case frequency selective fading channel because it improves the bit error rate.

Reply

48 najat yahya October 6, 2009 at 5:03 am

Dear kreshna:
I am najat i work on OFDM.I know the bit error rate increase when the channel is frequency selective fading more than flat fading channel by using any modulation techniques like binary phase shift key in transmission the data. Can you help me writing a program by MATLAB show that.
I also need to show that OFDM is effective technique in case frequency selective fading channel because it improves the bit error rate.

Reply

49 Krishna Sankar October 8, 2009 at 5:29 am

@najat: Please refer to the post
http://www.dsplog.com/2008/08/26/ofdm-rayleigh-channel-ber-bpsk/
It shows that BER for OFDM with a 10 tap Rayleigh channel is equivalent to flat fading case.

Reply

50 sotiiis October 17, 2009 at 8:14 pm

Hallo Krishna ,first of all congradulations for your posts,are really enlightening.One thing i cant understand is the calculation of H(hermitian)*H which is critical to show diversity of 4 for this alamouti scheme,Could you be more detailed and show this calculation..thnks!!!!

Reply

51 Krishna Sankar October 27, 2009 at 5:08 am

@sotiiis: One way to look at that is:
If you see the y = Hx + n equation, we can see that we have four copies of x1 and four copies of x2 at the receiver. Since the code is orthogonal, they do not interfere with each other. Hence the diversity order is four.
Does this help?

Reply

52 wosamw November 3, 2009 at 2:04 am

hi
my dear
Krishna Sankar
can you provide me simulink model for STBC MIMO OFDM in wimax IEEE802.16e
thanks

Reply

53 Krishna Sankar November 8, 2009 at 8:40 am

@wosamw: Sorry, I have not discussed STBC used in 802.16e

Reply

54 martin November 15, 2009 at 3:20 am

thanks for your good website and codes, If I want to use lognormal distribution fading channel instead of rayleigh how do I generate the lognormal fading symbols?

Reply

55 Krishna Sankar December 3, 2009 at 5:37 am

@martin: I have not discussed log-normal distribution in posts till date. Hope the wiki entry helps you
http://en.wikipedia.org/wiki/Log-normal_distribution

Reply

56 wosamw November 23, 2009 at 9:46 pm

hi
ok but how can implemention ofdm and ofdma in STBC withot discuss about 802.16e
thanks

Reply

57 apanong December 7, 2009 at 4:07 am

hi,
I’m trying with Alamouti 2*2 and QPSK modulation. I used your code, but change at the part of creating signal and the part of counting the errors to suitable to QPSK. I think the channels and the noise are still the same, rite?
but i could not get the result.
don’t know why.
could u give me some suggestions?

Reply

58 Krishna Sankar December 7, 2009 at 5:40 am

@apanong: Are you getting zero BER with no noise and the channel taps as unity?

Reply

59 apanong December 11, 2009 at 1:15 pm

I got BER as a line at 10^-0.6 with no noise and the channel taps as unity. so do u know what is my problem?

Reply

60 Krishna Sankar December 22, 2009 at 5:18 am

@apanong: hmm… getting 25% error in ideal condition is not desirable, though I am unable to guess what is wrong. Are you using BPSK modulation?

Reply

61 Dobs December 19, 2009 at 4:38 pm

Thank you for the post, i was going to ask you..what if we transmit the same symbol at the same time on the two different antennas,i.e. tranmitting s0 and s0 instead of s0 and s1 in 2tx and 1rx alamouti scheme?please can you explain what happens in this case?
Thank you,

Reply

62 Krishna Sankar December 23, 2009 at 5:43 am

@Dobs: If we transmit the same symbol on both the antennas, then there will be no diversity gain. You can see a brief discussion on this in the post on beamforming
http://www.dsplog.com/2009/04/13/transmit-beamforming/

Reply

63 ehab December 26, 2009 at 1:45 am

Dear Sir;

I just want to know why you change the matlab code for making the Alamouti STBC from the previous (Alamouti STBC) you used
“sCode = zeros(2,N);
sCode(:,1:2:end) = (1/sqrt(2))*reshape(s,2,N/2); % [x1 x2 ...]
sCode(:,2:2:end) = (1/sqrt(2))*(kron(ones(1,N/2),[-1;1]).*flipud(reshape(conj(s),2,N/2)));”

and now you use

“sCode = 1/sqrt(2)*kron(reshape(s,2,N/2),ones(1,2));”

Thank you

Regards

Reply

64 norbert January 5, 2010 at 3:35 pm

Hi,

My question would be that why there is no transmission power in the received signal equations? Or are the signal powers assumed to be one on all transmit antennas? Or are they comprised in the H channel matrix?

Thanks in advance.

Reply

65 wap January 13, 2010 at 11:15 am

hi sir………….
hi krishna……….

i wanted to ask u…………

how to combine stbc+mimo or stbc+ofdm??if it could??
you”ve tried it??where i can get tutorial about it??

in alamouti stbc with 2 antenna transmitter and receiver, if I want to add an antenna to be many, for example, 1 transmitter with many receiver or transmitter and receiver of many, which one should be changed in your program?

thanks before…………..

Reply

66 niks February 4, 2010 at 2:51 pm

hiii
in alamouti matrix why complex conjugate is taken for complex signal??
any technical reason????

Reply

67 dilla February 18, 2010 at 7:08 am

how to put the correlation at the transceiver or receiver…where should i put the function? plizzz help me..

Reply

68 WiMAX February 17, 2010 at 3:12 am

Hi Krishna, i have the same question with wap.
Can you guide us?

Reply

Leave a Comment

You can use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Previous post: IQ imbalance in transmitter

Next post: Milestone 1000+ subscribers 1100+ comments