8 X 8 Uncoded MIMO using VBlast and ZF








MATLAB SIMULATION
Uncoded System for 8 transmitters and 8 receivers(8X8) in 4-QAM

In this case, 64 channels are involved in every time slot whose channel impulse responses follow Rayleigh distribution.i.e h=x+iy; where x and y are Gaussian random variables.First generate H matrix(Channel matrix) and then generate X matrix(4-QAM modulated input symbols) .
         Y=HX+N is the received matrix

                                    DECODING OF 8X8 UNCODED SYSTEM

The decoding is done using ZF and VBLAST techniques and the results are compared.

                                                         Zero Forcing (ZF)


                                                                  VBLAST



         
                    
Click the link to view matlab code for 8 X 8 uncoded MIMO system with ZF decoding.
8x8 uncoded 4 QAM using ZF.m

 
Click the link to view matlab code for 8 X 8 uncoded MIMO system with VBLAST / ZF decoding.
8x8 uncoded 4 QAM using VBlast.m

 
We see that VBLAST / ZF performs significantly better than ZF.


Related Posts

     Alamouti Code
     Golden Code
     Silver Code

18 comments:

  1. HI

    Thanks for the code, I want to ask why you used this line:

    b=b(:,1)+b(:,2)+b(:,3)+b(:,4);
    shouldn't be all columns?

    ReplyDelete
    Replies
    1. Hello, This should be used to indicates the number of antennas for example:
      2x2 MIMO: b=b(:,1);
      4x4 MIMO: b=b(:,1)+b(:,2);
      8x8 MIMO: b=b(:,1)+b(:,2)+b(:,3);
      and so on.
      Hopefully it became more clear to you.

      Delete
  2. Hi,

    Do you know how to simulate SER of 16QAM 4X4 Spatial Modulation using MATLAB?

    ReplyDelete
    Replies
    1. Hi,
      I have not simulated SER of 4X4 using 16 QAM, But I can suggest you to refer my matlab code on 8x8 uncoded 4 QAM using ZF in which I have simulated BER for 8X8 4-QAM with zero forcing decoder. In this code you can change modulation technique by editing these two lines (x = randi([0 3],1,N);xmod=qammod(x,4);) to x = randi([0 15],1,N);xmod=qammod(x,16);) and model the H matrix accordingly.(please refer above theory on modelling H for Rayliegh channel). I hope it helps.

      Delete
  3. Hi
    Do you know how to simulink BER of QPSK 10x10 MIMO? Please help me

    ReplyDelete
  4. Thanks for the code, kindly, why did you use this line, do you have any reference for this issue?

    b=b(:,1)+b(:,2)+b(:,3)+b(:,4);

    ReplyDelete
  5. how can design decoder for mimo zero forcing 8x8 by simlink

    ReplyDelete
  6. i need matlab cod for cooperative MIMO V-BLAST

    ReplyDelete
  7. I am not sure why you use 10log(16) while adding the noise in the last line below:

    N1=1/sqrt(2)*(randn(1,N)+1i*randn(1,N));
    N1=reshape(N1,8,N/8);
    ynoisy=y+10^(-(snr(ii)-10*log10(16))/20)*N1;

    Can you please provide a small explanation of it

    ReplyDelete
    Replies
    1. Can anyone please provide me 3X1 or 4X1 stbc codes email me: zahid_ford@hotmail.com

      Delete
  8. Can anyone please provide me 3X1 or 4X1 stbc codes email me: zahid_ford@hotmail.com

    ReplyDelete
  9. can anyone provide me code for mimo ofdm using qpsk modulation and ml decoding

    ReplyDelete
  10. Has anyone had STBC 8 antennas transmiter * 1 antennas receiver Matlab code? please help me
    nguyenquangvinh93@gmail.com

    ReplyDelete
  11. i need mimo encoder matlab code

    ReplyDelete
  12. This comment has been removed by the author.

    ReplyDelete
  13. Hello, sorry, I don't speak english very well. Thanks for your code is excellent. My first question is this code can be used for 2x3 or 3x4 MIMO systems, Do you know how to simulate them?

    My other question is in a system 3x3, how is this?
    2x2 MIMO: b=b(:,1);
    4x4 MIMO: b=b(:,1)+b(:,2);
    8x8 MIMO: b=b(:,1)+b(:,2)+b(:,3);

    ReplyDelete
  14. can you please provide the code for spatial Modulation?

    ReplyDelete