📄 masterinterleaverwithnvaksdesign.m
字号:
clear
clc
n=8; %no.of users
chiplen=64*16; %chiplength
n1=4;
n2=chiplen/n1;
d=16;
%production of a sequence starts
for j=1:chiplen
a(j)=j;
end
%production of a sequence ends
%writing a sequence columnwise begins
for i=1:chiplen
temp=rem(i-1,n1)+1;
j=0;
temp1=i;
while temp1>0
temp1=temp1-n1;
j=j+1;
end
b(temp,j)=i;
end
%writing a sequence in columnwise ends
%a delayed sequnece production begins
for i=1:n1
for j=1:n2
temp(j)=b(i,j);
end
for j=1:n2
temp1=rem(((i-1)*d+j-1),n2)+1;
c(i,temp1)=temp(j);
end
end
%a delayed sequence production ends
%reversing the sequence begins
k=n1;
f=n2;
for i=1:n1
for j=1:n2
d(k,f)=c(i,j);
f=f-1;
end
f=n2;
k=k-1;
end
%reversing the sequence ends
%producing an interleaved sequence diagonally begins
j=1;
f=1;
for i=1:n2
temp=i;
for k=1:n1
e(f)=d(k,temp);
interleaver(1,f)=e(f);
f=f+1;
temp=temp+1;
if temp>n2
temp=1;
end
end
j=j+1;
end
%producing the interleaved sequence ends
%producing of interleaver matrix begins
for nuser=2:n
for i=1:chiplen
interleaver(nuser,i)=interleaver(nuser-1,e(i));
end
end
%producing an interleaver matrix ends
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -