📄 firstcounterinterleave.m
字号:
function [dataStreamOutput1] = firstCounterInterleave(dataStreamInput, TTI)
%计算交织矩阵的行数和列数
inputBitNumber = length(dataStreamInput);
if (TTI == 80)
columnNumber = 8;
permutationPattern = [1,5,3,7,2,6,4,8];
else
if (TTI == 40)
columnNumber = 4;
permutationPattern = [1,3,2,4];
else
if (TTI == 20)
columnNumber = 2;
permutationPattern = [1,2];
else
columnNumber = 1;
permutationPattern = [1];
end
end
end
rowNumber = inputBitNumber/columnNumber;
matrix = zeros(rowNumber, columnNumber);
index = 1;
for j = 1:columnNumber
for i = 1:rowNumber
matrix(i,j) = dataStreamInput(index);
index = index + 1;
end
end
%perform counter inter-column permutation
tempMatrix =[];
for i = 1:columnNumber
tempMatrix(:, permutationPattern(i)) = matrix(:, i);
end
matrix = tempMatrix;
index = 1;
for i = 1:rowNumber
for j = 1:columnNumber
dataStreamOutput1(index) = matrix(i, j);
index = index + 1;
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -