www.gusucode.com > LTE仿真Matlab源码 > LTE_tx_DLSCH_encode.m
function f = LTE_tx_DLSCH_encode(LTE_params,a,UE_signaling,UE_genie,UE,stream_index) % Performs the coding of a TB for the LTE LL simulator. Basically an implementation % of TS 36.212. Naming convention also according to TS 36.212. % [f coding_params ] = LTE_tx_DLSCH_encode(a,scheduler_params,UE) % Author: Josep Colom Ikuno, jcolom@nt.tuwien.ac.at % (c) 2008 by INTHFT % www.nt.tuwien.ac.at % % input: a ... data bits % UE_signaling ... Contains the object that will be sent as signaling to the UE. % UE ... UE information. We just need N_IR % params, such as the soft buffer size. % UE_genie ... Object where the genie information will be written % UE ... Object representing the UE % stream_index ... Codeword index % % output: f ... coded bits % % date of creation: 2008/08/11 % last changes: 2008/09/15 Bosanska changed input [1x1]struct ue_specific_params according to changed BS_output % added input [1x1]struct scheduler_params according to changed BS_output % added outputs [1x1]struct % coding_params and genie according % to changed BS_output % Store the original data sequence, for genie-driven calculations, such as BER. UE_genie.data_bits{stream_index} = a; % Transport Block CRC attachment b = LTE_tx_append_crc(a,'24a'); UE_signaling.TB_size(stream_index) = length(b); % Store the TB size (signal it to the receiver) % Code Block segmentation and CRC attachment c = LTE_tx_code_block_segmentation(LTE_params,b,UE_signaling,stream_index); % Channel Coding (Turbo encoder) d = LTE_tx_turbo_encode(LTE_params,c,UE_signaling,stream_index); UE_genie.bits_to_turboencode{stream_index} = c; % Rate matching e = LTE_tx_turbo_rate_matcher(LTE_params,d,UE_signaling,UE,stream_index); % Code block concatenation f = LTE_tx_code_block_concatenation(e); UE_genie.sent_bits{stream_index} = f;