Simplify segment decoder and encoder interfaces
More complex implementations will be achieved using the new reworked interface - t_nrLDPC_dec_params: remove F, Qm, rv and perCB - encoder_implemparams_t: remove Qm, Tbslbrm, G, rv and perCB
This commit is contained in:
-7
@@ -190,13 +190,6 @@ static int nrLDPC_prepare_TB_encoding(nrLDPC_slot_encoding_parameters_t *nrLDPC_
|
||||
impp.output = nrLDPC_TB_encoding_parameters->segments->output;
|
||||
impp.K = nrLDPC_TB_encoding_parameters->K;
|
||||
impp.F = nrLDPC_TB_encoding_parameters->F;
|
||||
impp.Qm = nrLDPC_TB_encoding_parameters->Qm;
|
||||
impp.Tbslbrm = nrLDPC_TB_encoding_parameters->tbslbrm;
|
||||
impp.G = nrLDPC_TB_encoding_parameters->G;
|
||||
for (int r = 0; r < nrLDPC_TB_encoding_parameters->C; r++) {
|
||||
impp.perCB[r].E_cb = nrLDPC_TB_encoding_parameters->segments[r].E;
|
||||
}
|
||||
impp.rv = nrLDPC_TB_encoding_parameters->rv_index;
|
||||
|
||||
size_t const n_seg = (impp.n_segments / 8 + ((impp.n_segments & 7) == 0 ? 0 : 1));
|
||||
|
||||
|
||||
@@ -78,15 +78,6 @@ typedef enum nrLDPC_outMode {
|
||||
nrLDPC_outMode_LLRINT8 /**< Single LLR value per int8_t output */
|
||||
} e_nrLDPC_outMode;
|
||||
|
||||
/**
|
||||
Structure containing LDPC parameters per CB
|
||||
*/
|
||||
typedef struct nrLDPC_params_per_cb {
|
||||
uint32_t E_cb;
|
||||
uint8_t status_cb;
|
||||
uint8_t* p_status_cb;
|
||||
} nrLDPC_params_per_cb_t;
|
||||
|
||||
/**
|
||||
Structure containing LDPC decoder parameters.
|
||||
*/
|
||||
@@ -94,16 +85,12 @@ typedef struct nrLDPC_dec_params {
|
||||
uint8_t BG; /**< Base graph */
|
||||
uint16_t Z; /**< Lifting size */
|
||||
uint8_t R; /**< Decoding rate: Format 15,13,... for code rates 1/5, 1/3,... */
|
||||
uint16_t F; /**< Filler bits */
|
||||
uint8_t Qm; /**< Modulation */
|
||||
uint8_t rv;
|
||||
uint8_t numMaxIter; /**< Maximum number of iterations */
|
||||
int E;
|
||||
e_nrLDPC_outMode outMode; /**< Output format */
|
||||
int crc_type;
|
||||
int (*check_crc)(uint8_t* decoded_bytes, uint32_t n, uint8_t crc_type);
|
||||
uint8_t setCombIn;
|
||||
nrLDPC_params_per_cb_t perCB[NR_LDPC_MAX_NUM_CB];
|
||||
} t_nrLDPC_dec_params;
|
||||
|
||||
/**
|
||||
|
||||
@@ -57,13 +57,6 @@ typedef struct {
|
||||
uint32_t K;
|
||||
/// Number of "Filler" bits
|
||||
uint32_t F;
|
||||
/// Modulation order
|
||||
uint8_t Qm;
|
||||
uint32_t Tbslbrm;
|
||||
unsigned int G;
|
||||
nrLDPC_params_per_cb_t perCB[NR_LDPC_MAX_NUM_CB];
|
||||
// Redundancy version index
|
||||
uint8_t rv;
|
||||
task_ans_t *ans;
|
||||
} encoder_implemparams_t;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user