deinterleaver.m
来自「采用 DVB反向链路(DVB-RCS)标准中的双二元Turbo码matlab仿真」· M 代码 · 共 27 行
M
27 行
function [vec_outA,vec_outB]=deinterleaver(vec_inA,vec_inB,N)
%[vec_outA,vec_outB]=deinterleaver(vec_inA,vec_inB,N)
%解交织程序,对进入的序列进行DVB-RCS标准的解交织
%N=212对应于ATM信元,而N=752对应于MPEG-2数据包
%
lenA=length(vec_inA);
lenB=length(vec_inB);
if lenA~=lenB
error('wrong input vector');
else
if lenA~=N
error('wrong interleaver length or input vector');
else
NewIndex=InL2nd(N);
%第二级解交织
vec_outA=vec_inA(NewIndex+1);
vec_outB=vec_inB(NewIndex+1);
%第一级解交织
for j=0:N-1
if mod(j,2)==0
temp=vec_outA(j+1);
vec_outA(j+1)=vec_outB(j+1);
vec_outB(j+1)=temp;
end
end
end
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?