nb of layers from CSI Report

This commit is contained in:
francescomani
2021-06-17 13:18:45 +02:00
parent 5e4d40b1ec
commit 0ec932b57f
3 changed files with 13 additions and 1 deletions
@@ -603,7 +603,7 @@ void pf_dl(module_id_t module_id,
/* Calculate coeff */ /* Calculate coeff */
set_dl_mcs(sched_pdsch,sched_ctrl,ps->mcsTableIdx); set_dl_mcs(sched_pdsch,sched_ctrl,ps->mcsTableIdx);
sched_pdsch->nrOfLayers = 1; set_dl_nrOfLayers(sched_pdsch,sched_ctrl);
const uint8_t Qm = nr_get_Qm_dl(sched_pdsch->mcs, ps->mcsTableIdx); const uint8_t Qm = nr_get_Qm_dl(sched_pdsch->mcs, ps->mcsTableIdx);
const uint16_t R = nr_get_code_rate_dl(sched_pdsch->mcs, ps->mcsTableIdx); const uint16_t R = nr_get_code_rate_dl(sched_pdsch->mcs, ps->mcsTableIdx);
uint32_t tbs = nr_compute_tbs(Qm, uint32_t tbs = nr_compute_tbs(Qm,
@@ -137,6 +137,15 @@ static inline uint8_t get_max_cces(uint8_t scs) {
} }
void set_dl_nrOfLayers(NR_sched_pdsch_t *sched_pdsch,
NR_UE_sched_ctrl_t *sched_ctrl) {
// for now this should be enough
// if there is not csi report RI is 0 from initialization
sched_pdsch->nrOfLayers = sched_ctrl->CSI_report.choice.cri_ri_li_pmi_cqi_report.ri + 1;
}
void set_dl_mcs(NR_sched_pdsch_t *sched_pdsch, void set_dl_mcs(NR_sched_pdsch_t *sched_pdsch,
NR_UE_sched_ctrl_t *sched_ctrl, NR_UE_sched_ctrl_t *sched_ctrl,
uint8_t mcs_table_idx) { uint8_t mcs_table_idx) {
+3
View File
@@ -419,6 +419,9 @@ void set_dl_mcs(NR_sched_pdsch_t *sched_pdsch,
NR_UE_sched_ctrl_t *sched_ctrl, NR_UE_sched_ctrl_t *sched_ctrl,
uint8_t mcs_table_idx); uint8_t mcs_table_idx);
void set_dl_nrOfLayers(NR_sched_pdsch_t *sched_pdsch,
NR_UE_sched_ctrl_t *sched_ctrl);
void calculate_preferred_dl_tda(module_id_t module_id, const NR_BWP_Downlink_t *bwp); void calculate_preferred_dl_tda(module_id_t module_id, const NR_BWP_Downlink_t *bwp);
void calculate_preferred_ul_tda(module_id_t module_id, const NR_BWP_Uplink_t *ubwp); void calculate_preferred_ul_tda(module_id_t module_id, const NR_BWP_Uplink_t *ubwp);