借po
n=40;
r=rand(1,n);
for k=1:n
if(r(k)>0.5)
r(k)=1;
else
r(k)=0;
end
end
m=n/4;
seq=[];
for i=1:m
R=[r(4*i-3) r(4*i-2) r(4*i-1) r(4*i)];
two=R(4)+2*R(3)+2^2*R(2)+2^3*R(1);
if(two<8)
if (rem(two,2)==0)
two=-1*(two+1);
end;
elseif(two>=8)
two=two-12;
if(rem(two,2)==0)
two=-1*(two+1);
end;
two=j*two;
else
end
R;
two;
seq=[seq R];
end
cor=[];
for k=0:m-1
if([seq(4*k+1) seq(4*k+2)]==[0 0])
cor=[cor -3];
elseif([seq(4*k+1) seq(4*k+2)]==[0 1])
cor=[cor -1];
elseif([seq(4*k+1) seq(4*k+2)]==[1 1])
cor=[cor 1];
elseif([seq(4*k+1) seq(4*k+2)]==[1 0])
cor=[cor 3];
end;
if([seq(4*k+3) seq(4*k+4)]==[0 0])
cor=[cor -3*j];
elseif([seq(4*k+3) seq(4*k+4)]==[0 1])
cor=[cor -j];
elseif([seq(4*k+3) seq(4*k+4)]==[1 1])
cor=[cor j];
elseif([seq(4*k+3) seq(4*k+4)]==[1 0])
cor=[cor 3*j];
end;
end
ccor=[];
for k=0:n/4-1
ccor=[ccor cor(2*k+1)+cor(2*k+2)];
end
%cor
%ccor
cor=ccor;
%assume SNR=15dB;
vari=(10/(10^1.5))^0.5;
noise=vari*0.5*(randn(1,n/4)+j*randn(1,n/4));
Ncor=cor+noise;
%scatterplot(Ncor)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.236.230
推
11/10 19:29, , 1F
11/10 19:29, 1F
噓
11/10 22:19, , 2F
11/10 22:19, 2F
推
11/10 22:33, , 3F
11/10 22:33, 3F
→
11/10 23:14, , 4F
11/10 23:14, 4F
推
11/11 00:05, , 5F
11/11 00:05, 5F