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

📄 interleave_siso_20.m

📁 A SISO 20M OFDM system based on IEEE802.11n standard, using Matlab.
💻 M
字号:
function dout=interleave_siso_20(din, Mode)

%----------------------------------------------------------------------
%         interleaver
%
%       Mode    Data_rate    Coding_rate    BPSC    CBPS    DBPS
%        1         13(Mbps)     1/2          2       104      52
%        2       19.5           3/4          2       104      78
%        3         26           1/2          4       208     104
%        4         39           3/4          4       208     156
%        6       58.5           3/4          6       312     234
%        7         65           5/6          6       312     260
%
%       ex. inter_dat = interleave_siso_20(din,Mode)
%----------------------------------------------------------------------

switch Mode
    case 1
        rate = 1/2;
        bpsc = 2;
        dbps = 52;
    case 2
        rate = 3/4;
        bpsc = 2;
        dbps = 78;
    case 3
        rate = 1/2;
        bpsc = 4;
        dbps = 104;
    case 4
        rate = 3/4;
        bpsc = 4;
        dbps = 156;
    case 6
        rate = 3/4;
        bpsc = 6;
        dbps = 234;
    case 7
        rate = 5/6;
        bpsc = 6;
        dbps = 260;
end

Nss = 1;          % No. of space stream
Nrot = 11;        % 40MHz:29      20MHz:11
Ncol = 13;        % 40MHz:18      20MHz:13
Nrow = 4*bpsc;    % 40MHz:6*bpsc  20MHz:4*bpsc

cbps = dbps/rate;
cbpss = cbps/Nss;
Coded_add = [0:cbpss-1];

for i=1:cbpss
    first_inter(i) = Nrow*(mod(Coded_add(i), Ncol)) + floor(Coded_add(i)/Ncol);
end

s=max((bpsc/2), 1);

for i=1:cbpss
    second_inter(i) = (s * floor(first_inter(i)/s)) + mod( (first_inter(i) + cbpss - floor((Ncol * first_inter(i)) / cbpss)), s);
end

for iss = 0:Nss-1
    for i=1:cbpss
        last_inter(iss+1, i) = mod(second_inter(i) - (mod(iss*2,3) + 3*floor(iss/3)) * Nrot * bpsc,cbpss);
    end
end

for iss=1:Nss
    for i=1:cbpss
        dout(iss, i, :) = din(iss, last_inter(iss, i)+1, :);
    end
end

⌨️ 快捷键说明

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