File tree Expand file tree Collapse file tree 1 file changed +16
-0
lines changed
lib/scheduler/ue_scheduling Expand file tree Collapse file tree 1 file changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -193,6 +193,15 @@ alloc_outcome ue_cell_grid_allocator::allocate_dl_grant(const ue_pdsch_grant& gr
193193 return alloc_outcome::invalid_params;
194194 }
195195
196+ // Verify only one PDSCH exists for a RNTI.
197+ // Reason: Unable to distinguish/map HARQ acknowledge bits to HARQ Id if there are more than one PDSCH per UE per
198+ // slot.
199+ for (const dl_msg_alloc& pdsch : pdsch_alloc.result .dl .ue_grants ) {
200+ if (pdsch.pdsch_cfg .rnti == u.crnti ) {
201+ return alloc_outcome::skip_ue;
202+ }
203+ }
204+
196205 // Allocate PDCCH position.
197206 pdcch_dl_information* pdcch = nullptr ;
198207 if (ue_cc->is_in_fallback_mode () or dci_type == dci_dl_rnti_config_type::tc_rnti_f1_0) {
@@ -531,6 +540,13 @@ alloc_outcome ue_cell_grid_allocator::allocate_ul_grant(const ue_pusch_grant& gr
531540 return alloc_outcome::skip_slot;
532541 }
533542
543+ // Verify only one PUSCH exists for a RNTI.
544+ for (const ul_sched_info& pusch : pusch_alloc.result .ul .puschs ) {
545+ if (pusch.pusch_cfg .rnti == u.crnti ) {
546+ return alloc_outcome::skip_ue;
547+ }
548+ }
549+
534550 // [Implementation-defined] We skip allocation of PUSCH if there is already a PUCCH grant scheduled over the same slot
535551 // and the UE is in fallback mode.
536552 // NOTE: This is due to the lack of clarity of the TS when it comes to define what \c betaOffsets to use for PUSCH
You can’t perform that action at this time.
0 commit comments