Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

how to measure SNR in cooperative communi for MRC

Status
Not open for further replies.

shakeel006

Junior Member level 3
Joined
Oct 31, 2004
Messages
28
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Location
Pakistan
Activity points
249
I have relay cooperative communication system.two relays and 2 data nodes.
some defination in MATLAB codes for my simulation are as follows
s1 = randint(N,1,[0 M-1]);
x1 = symbols(s1+1);

s2 = randint(N,1,[0 M-1]);
x2 = symbols(s2+1);

h11 = sqrt(0.5) * randn_c(N);
h21 = sqrt(0.5) * randn_c(N);
h12 = sqrt(0.5) * randn_c(N);
h22 = sqrt(0.5) * randn_c(N);

h1_1 = abs(h11).^2;%T1R1
h2_1 = abs(h21).^2;

h1_2 = abs(h12).^2; %T1R2
h2_2 = abs(h22).^2;

nr1 = sigma1*randn_c(N);
n11 = sigma1*randn_c(N);
n21 = sigma2*randn_c(N);

the received signal at r1 and (r2 relay 2 ) relays is as follows

r1 = sqrt(E1).* h11 .* x1 + sqrt(E2).* h21 .* x2 + nr1;
r2 = sqrt(E1).* h12 .* x1 + sqrt(E2).* h22 .* x2 + nr2;

the signal received at Data nodes rd1 and rd2 after normalization .i.e the received signal at rd1 is as follows
rd1=sqrt(A1) .*h11.*conj(h12).*conj(x2)+ nt11;

where
A1=ER1.*E2./(ER1.*h1_1+(E1+E2+1));
B1=ER2.*E1./(ER2.*h2_1+(E1+E2+1));
nt11=sqrt(ER1.*h11.^2./(ER1.*h1_2+(E1+E2+1))).* conj(nr1) + sqrt((E1+E2+1)./(ER1.*h1_1+(E1+E2+1))).*n11;

nt21=sqrt(ER2.*h21.^2./(ER2.*h2_1+(E1+E2+1))).* conj(nr1) + sqrt((E1+E2+1)./(ER2.*h2_1+(E1+E2+1))).*n21;

similarly the signal received at rd2 is as follows
rd2=sqrt(B1) .*h21.*conj(h11).*conj(x1)+ nt21;


I need to apply MRC at rd1 and rd2 will the signal for after MRC at rd1 and rd2 will

rd2=sqrt(B1) .*h2_1.*conj(h11).*conj(x1)+ conj(h21).*nt21;

rd1=sqrt(A1) .*h1_1 .*conj(h21).* conj(x2) + conj(h11).*nt11;

I am unconfident how to apply MRC ,

please guide how can I apply in general what I know is
%let r1 is received signal at data node d1 then MRC is just conjugate that channel from where it came i.e
%r1mrc=conj(h1).*r1;

I shall be very grateful to all for any help
Regards
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top