⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 m_sequence.m

📁 CDMA多用户检测程序
💻 M
字号:
% function [s,C0]=m_sequence(fdbk)
%  find the long code Sequence of 2^15 or 2^42
%  s=longcode(n), n: length of code
% fdbk=[1 0 0 1]; 

fdbk=[1 0 0 1 0];

n=2^length(fdbk)-1;
L=length(fdbk);
init=ones(1,L); % choose L=15 to generate PN code with max length 2^15

%m序列  
s=zeros(1,n+L);
for i=1:n+L                   % generate PN code sequence
  s(i)=init(L);
  f=fdbk*init.';  
  init(2:L)=init(1:L-1);
  init(1)=mod(f,2);
end 
s=s(L+1:n+L);
s=2*s-1;                      % change code to be +/- 1
ss=s(1:n);

n2=8;
C0=zeros(n2);
for i=1:n2
s1(i+1:n)=ss(1:n-i);
s1(1:i)=ss(n-i+1:n);
for j=1:n2
s2(j+1:n)=ss(1:n-j);
s2(1:j)=ss(n-j+1:n);
C0(i,j)=s1*s2'/n;
end
end

% a = xcorr(s,n,'unbiased');  % 2L+1
% C0(:,:) = toeplitz(a(n+1+(0:n-1)));


%正交序列
%  K=6;
% for i0=0:K-1
% for i1=0:K-1
% n=i0*K+i1;
% s(n+1)=exp(j*2*pi*i0*i1/K);
% end
% end
% 
% n2=8;n=K.^2;
% C0=zeros(n2);
% for i=1:n2
% s1(i+1:n)=s(1:n-i);
% s1(1:i)=s(n-i+1:n);
% for k=1:n2
% s2(k+1:n)=s(1:n-k);
% s2(1:k)=s(n-k+1:n);
% C0(i,k)=s1*s2'/n;
% end
% end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -