Filter löschen
Filter löschen

Decode 2 transmissions via SIC

1 Ansicht (letzte 30 Tage)
Sad Tal
Sad Tal am 14 Sep. 2014
can anyone please tell how to decode the signal rx1?? actually i want to transmit two signals: one from the source which when reaches at relay, adds both signals and at receiver using SIC, i have to decode them. Please help.
clc; clear all; close all;
format long;
bit_count = 10000;
Eb_No = -3: 1: 30;
SNR = Eb_No + 10*log10(2);
for aa = 1: 1: length(SNR)
T_Errors = 0;
T_bits = 0;
T_Errors1=0;
T_Errors2=0;
while T_Errors < 100
uncoded_bits = round(rand(1,bit_count));
B1 = uncoded_bits(1:2:end);
B2 = uncoded_bits(2:2:end);
a = sqrt(1/10);
qpsk_sig = (((B1==0).*(B2==0)*(exp(i*pi/4))+(B1==0).*(B2==1)...
*(exp(3*i*pi/4))+(B1==1).*(B2==1)*(exp(5*i*pi/4))...
+(B1==1).*(B2==0)*(exp(7*i*pi/4))));
h = sqrt(0.5*((randn(2,length(qpsk_sig))).^2+(randn(2,length(qpsk_sig))).^2));
n=1/2^(SNR(aa)/2); % Source to Relay
n1=1/10^(SNR(aa)/10); %Relay to Destination
rx = (qpsk_sig.*h(1,:)) + sqrt(n/2)*(randn(1,length(qpsk_sig))+i*randn(1,length(qpsk_sig))); % Source to Relay
rx1 = 0.7*(rx.*h(2,:))+(0.3*(qpsk_sig.*h(2,:))) + sqrt(n1/2)*(randn(1,length(qpsk_sig))+i*randn(1,length(qpsk_sig))); %Relay to Destination

Antworten (0)

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by