Exposed maximum number of iterations

master
ismagom 9 years ago
parent 3be50e3206
commit d65828054a

@ -116,6 +116,8 @@ int srslte_sch_init(srslte_sch_t *q) {
goto clean; goto clean;
} }
q->max_iterations = SRSLTE_PDSCH_MAX_TDEC_ITERS;
srslte_rm_turbo_gentables(); srslte_rm_turbo_gentables();
// Allocate int16 for reception (LLRs) // Allocate int16 for reception (LLRs)
@ -169,6 +171,9 @@ void srslte_sch_free(srslte_sch_t *q) {
bzero(q, sizeof(srslte_sch_t)); bzero(q, sizeof(srslte_sch_t));
} }
void srslte_sch_set_max_noi(srslte_sch_t *q, uint32_t max_iterations) {
q->max_iterations = max_iterations;
}
float srslte_sch_average_noi(srslte_sch_t *q) { float srslte_sch_average_noi(srslte_sch_t *q) {
return q->average_nof_iterations; return q->average_nof_iterations;
@ -437,7 +442,7 @@ static int decode_tb(srslte_sch_t *q,
early_stop = true; early_stop = true;
} }
} while (q->nof_iterations < SRSLTE_PDSCH_MAX_TDEC_ITERS && !early_stop); } while (q->nof_iterations < q->max_iterations && !early_stop);
q->average_nof_iterations = SRSLTE_VEC_EMA((float) q->nof_iterations, q->average_nof_iterations, 0.2); q->average_nof_iterations = SRSLTE_VEC_EMA((float) q->nof_iterations, q->average_nof_iterations, 0.2);
INFO("CB#%d: cb_len: %d, rlen: %d, wp: %d, rp: %d, E: %d, n_iters=%d\n", i, INFO("CB#%d: cb_len: %d, rlen: %d, wp: %d, rp: %d, E: %d, n_iters=%d\n", i,

@ -344,7 +344,7 @@ int srslte_ue_ul_pucch_encode(srslte_ue_ul_t *q, srslte_uci_data_t uci_data,
} }
if (q->normalize_en) { if (q->normalize_en) {
float norm_factor = (float) 0.6*q->cell.nof_prb/5; float norm_factor = (float) 0.8*q->cell.nof_prb/5;
srslte_vec_sc_prod_cfc(output_signal, norm_factor, output_signal, SRSLTE_SF_LEN_PRB(q->cell.nof_prb)); srslte_vec_sc_prod_cfc(output_signal, norm_factor, output_signal, SRSLTE_SF_LEN_PRB(q->cell.nof_prb));
} }
ret = SRSLTE_SUCCESS; ret = SRSLTE_SUCCESS;

Loading…
Cancel
Save