Friday, October 20, 2017

matlab - Using MIMO with DS-CDMA and spread spectrum


I have a question about using MIMO with DS-CDMA. suppose we are using 4 TX antennas, and 4 RX antennas, then the Reyleigh channel generated randomly of MIMO system will be of dimension H = [4x4], assuming also the transmitted signal using QAM modulation is x done as below:



x = 
[0.7 + 0.7i;
0.7 - 0.7i;
-0.7 + 0.7i;
-0.7 -0.7i];

So the received signal r is supposed to be r = H*x , which is of dimension of [4x1].


Now, suppose we are spreading that signal with PN/walsh code of dimension [4x1], by using the function of "kron" in MATLAB, so the dimension of the new transmitted signal will be [16x1], equivalent that x_1 = kron(x,c); where c is the code used to spread the signal before transmission.


My question is, how can we transmit that signal after spreading it x_1 over the noted channel H of dimension H with dimension [4x4]?


Thank you




Answer



Assuming one antenna transmits one symbol per time unit, then 16 symbols require 4 time units to be out. Then it is simply that


r_1 = H_1 * x_1(1:4)
r_2 = H_2 * x_1(5:8)
r_3 = H_3 * x_1(9:12)
r_4 = H_4 * x_1(13:16)

If channel H is fixed during these 4 time units,


[r_1 r_2 r_3 r_4] = H * [x_1(1:4) x_1(5:8) x_1(9:12) x_1(13:16)];


or


r = reshape(H*reshape(x_1,4,[]),[],1);

This can be generalized to any MIMO size and to any spreading size.


No comments:

Post a Comment

digital communications - Understanding the Matched Filter

I have a question about matched filtering. Does the matched filter maximise the SNR at the moment of decision only? As far as I understand, ...