www.gusucode.com > LTE_TX_PDSCH > LTE_load_parameters.m

    %% This function initializes LTE PDSCH parameters at  1.4 MHz bandwidth

function  LTE_load_parameters

global LTE_params;
%PRIMITIVE PARAMETERS
%Table 5.1-1 Transmission bandwidth configuration 
LTE_params.Bandwidth = 1.4e6;            % in Hz, allowed values: 1.4 MHz, 3 MHz, 5 MHz, 10 MHz, 15 MHz, 20MHz => number of resource blocks 6, 15, 25, 50, 75, 100
LTE_params.SubcarrierSpacing = 15e3;     % in Hz, 15 kHz, also 7.5 kHz subcarrier spacing possible, just for MBSFN-based multicast/broadcast transmissions
LTE_params.CyclicPrefix = 'normal'; % 'normal' or 'extended' for MBSFN-based multicast/broadcast transmissions
% Define config parameters for specific algorithms

LTE_params.UE_config.mode = 1;                     % DEFINED IN STANDARD 3GPP TS 36.213-820 Section 7.1
                                                   % 1: Single Antenna, 2: Transmit Diversity, 3: Open Loop Spatial Multiplexing
                                                   % 4: Closed Loop SM, 5: Multiuser MIMO
LTE_params.UE_config.nRX = 1;                      % number of receive antennas at UE
% Define BS parameters (identical settings).
LTE_params.BS_config.nTx = 1;
LTE_params.BS_config.NIDcell = 1;

% Store interleaver sequences and the sort for the turbo coding and rate matching
% The sub-block interleaver permutation pattern (column permutation)
LTE_params.sub_block_interleaver_permutation_pattern = ...
    [0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23,15,31];
% Turbo encoder/decoder interleaving table
LTE_params.turbo_interleaver_table = [40,3,10;48,7,12;56,19,42;64,7,16;72,7,18;80,11,20;...
    88,5,22;96,11,24;104,7,26;112,41,84;120,103,90;128,15,32;136,9,34;144,17,108;...
    152,9,38;160,21,120;168,101,84;176,21,44;184,57,46;192,23,48;200,13,50;208,27,52;...
    216,11,36;224,27,56;232,85,58;240,29,60;248,33,62;256,15,32;264,17,198;272,33,68;...
    280,103,210;288,19,36;296,19,74;304,37,76;312,19,78;320,21,120;328,21,82;336,115,84;...
    344,193,86;352,21,44;360,133,90;368,81,46;376,45,94;384,23,48;392,243,98;400,151,40;...
    408,155,102;416,25,52;424,51,106;432,47,72;440,91,110;448,29,168;456,29,114;464,247,58;...
    472,29,118;480,89,180;488,91,122;496,157,62;504,55,84;512,31,64;528,17,66;544,35,68;...
    560,227,420;576,65,96;592,19,74;608,37,76;624,41,234;640,39,80;656,185,82;672,43,252;...
    688,21,86;704,155,44;720,79,120;736,139,92;752,23,94;768,217,48;784,25,98;800,17,80;...
    816,127,102;832,25,52;848,239,106;864,17,48;880,137,110;896,215,112;912,29,114;928,15,58;...
    944,147,118;960,29,60;976,59,122;992,65,124;1008,55,84;1024,31,64;1056,17,66;1088,171,204;...
    1120,67,140;1152,35,72;1184,19,74;1216,39,76;1248,19,78;1280,199,240;1312,21,82;1344,211,252;...
    1376,21,86;1408,43,88;1440,149,60;1472,45,92;1504,49,846;1536,71,48;1568,13,28;1600,17,80;...
    1632,25,102;1664,183,104;1696,55,954;1728,127,96;1760,27,110;1792,29,112;1824,29,114;...
    1856,57,116;1888,45,354;1920,31,120;1952,59,610;1984,185,124;2016,113,420;2048,31,64;...
    2112,17,66;2176,171,136;2240,209,420;2304,253,216;2368,367,444;2432,265,456;2496,181,468;...
    2560,39,80;2624,27,164;2688,127,504;2752,143,172;2816,43,88;2880,29,300;2944,45,92;...
    3008,157,188;3072,47,96;3136,13,28;3200,111,240;3264,443,204;3328,51,104;3392,51,212;...
    3456,451,192;3520,257,220;3584,57,336;3648,313,228;3712,271,232;3776,179,236;3840,331,120;...
    3904,363,244;3968,375,248;4032,127,168;4096,31,64;4160,33,130;4224,43,264;4288,33,134;...
    4352,477,408;4416,35,138;4480,233,280;4544,357,142;4608,337,480;4672,37,146;4736,71,444;...
    4800,71,120;4864,37,152;4928,39,462;4992,127,234;5056,39,158;5120,39,80;5184,31,96;...
    5248,113,902;5312,41,166;5376,251,336;5440,43,170;5504,21,86;5568,43,174;5632,45,176;...
    5696,45,178;5760,161,120;5824,89,182;5888,323,184;5952,47,186;6016,23,94;6080,47,190;6144,263,480];

% Calculate CP duration, number of OFDM symbols (Normal CP and 15KHz subcarrier spacing)
% DEFINED IN STANDARD 3GPP TS 36.211 V8.2.0 (2008-03)
LTE_params.FrameDur = 10e-3; % fixed frame duration 10 ms, page 9
LTE_params.Tg = zeros(1,2);
LTE_params.Tg(1) = 160/(15000*2048); % normal CP time - 1. OFDM symbol in slot
LTE_params.Tg(2) = 144/(15000*2048); % normal CP time - remaining OFDM symbols in slot
%Table 6.2.3-1: Physical resource blocks parameters.
LTE_params.Ns = 7; % number of OFDM symbols in one slot
LTE_params.Nsub = 2*7; % number of OFDM symbols in one subframe = 2*in one slot
% Define symbol alphabet (Only BPSK and QPSK used)
% DEFINED IN STANDARD 3GPP TS 36.211 V8.2.0 (2008-03), page 61-63
LTE_params.SymbolAlphabet{1} = [ 1+1j, -1-1j].'/sqrt(2);
LTE_params.SymbolAlphabet{2} = [ 1+1j, 1-1j, -1+1j, -1-1j].'/sqrt(2);
LTE_params.bittable{1} = logical([0,1]);
LTE_params.bittable{2} = logical([0,1,0,1; 0,0,1,1]);
LTE_params.ResourceBlock = 180e3; % fixed badwidth of resource block in Hz, page 33
LTE_params.Nsc = LTE_params.ResourceBlock/LTE_params.SubcarrierSpacing; % number of subcarriers in one resource block, fixed length of resource block in Hz, page 33
LTE_params.Nrb = 6; % number of resource blocks

% Calculate FFT lengths, CP length and indexes, OFDM symbol, slot and
% subframe duration, # transmit symbols per subframe, sampling time
LTE_params.Ntot = LTE_params.Nsc*LTE_params.Nrb; % Total number of subcarriers not NULL
LTE_params.Nfft =  2^ceil(log2(LTE_params.Ntot)); % number of FFT points
LTE_params.Fs = LTE_params.SubcarrierSpacing*LTE_params.Nfft; % sampling frequency   
LTE_params.Tb = 1/LTE_params.SubcarrierSpacing; % useful Symbol Tim
LTE_params.Ng = zeros(1,2);
LTE_params.Ng(1) = LTE_params.Tg(1)*LTE_params.Fs; % number of CP points of normal CP for 1. first OFDM symbol in slot
LTE_params.Ng(2) = round(LTE_params.Tg(2)*LTE_params.Fs); % number of CP points of normal CP for remaining OFDM symbols in slot
LTE_params.Index_TxCyclicPrefix{1} = [LTE_params.Nfft-LTE_params.Ng(1)+1:LTE_params.Nfft 1:LTE_params.Nfft];
LTE_params.Index_TxCyclicPrefix{2} = [LTE_params.Nfft-LTE_params.Ng(2)+1:LTE_params.Nfft 1:LTE_params.Nfft];
LTE_params.Ts = zeros(1,2);
LTE_params.Ts(1) = LTE_params.Tb + LTE_params.Tg(1); % 1. OFDM symbol time
LTE_params.Ts(2) = LTE_params.Tb + LTE_params.Tg(2); % remaining OFDM symbol time
LTE_params.Tslot = LTE_params.Tg(1) + (LTE_params.Ns-1)*LTE_params.Tg(2) + LTE_params.Ns*LTE_params.Tb; % fixed duration of the slot = 0.5ms, page 9
LTE_params.Tsubframe = 2*LTE_params.Tslot; % fixed duration of the subframe = 1ms, page 9
LTE_params.TxSymbols = 2*(LTE_params.Ng(1) + (LTE_params.Ns-1)*LTE_params.Ng(2) + LTE_params.Nfft*LTE_params.Ns);  % number of symbols in one subframe
LTE_params.NfftCP{1} = length(LTE_params.Index_TxCyclicPrefix{1});
LTE_params.NfftCP{2} = length(LTE_params.Index_TxCyclicPrefix{2});
LTE_params.Index_RxCyclicPrefix{1} = LTE_params.Ng(1)+1: LTE_params.NfftCP{1};
LTE_params.Index_RxCyclicPrefix{2} = LTE_params.Ng(2)+1: LTE_params.NfftCP{2};    
LTE_params.SamplingTime = LTE_params.Tb/LTE_params.Nfft;
% Number of OFDM Symbols transmitted in one frame
LTE_params.OFDMNsym = round(LTE_params.FrameDur/LTE_params.Ts(1)/4)*4; % number of OFDM symbols in one frame