From 0d0e1111354877464a213663c60dfb45872e399e Mon Sep 17 00:00:00 2001 From: Laurent THOMAS Date: Sun, 14 Jan 2024 10:17:50 +0100 Subject: [PATCH 1/2] remove asserts on min RX/TX, set the RX/TX shift as 2 in the UE --- openair1/PHY/impl_defs_top.h | 2 +- openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c | 10 ---------- openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c | 18 ------------------ 3 files changed, 1 insertion(+), 29 deletions(-) diff --git a/openair1/PHY/impl_defs_top.h b/openair1/PHY/impl_defs_top.h index c06cd13ff7..e43100d32a 100644 --- a/openair1/PHY/impl_defs_top.h +++ b/openair1/PHY/impl_defs_top.h @@ -272,7 +272,7 @@ /* - between reception of pdsch and tarnsmission of its acknowlegment */ /* - between reception of un uplink grant and its related transmission */ // should be 2 as per NR standard, but current UE is not able to perform this value -#define NR_UE_CAPABILITY_SLOT_RX_TO_TX (3) +#define NR_UE_CAPABILITY_SLOT_RX_TO_TX (2) #define DURATION_RX_TO_TX (NR_UE_CAPABILITY_SLOT_RX_TO_TX) diff --git a/openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c b/openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c index 5f0bc51e9a..0b4b33c6e8 100644 --- a/openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c +++ b/openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c @@ -767,10 +767,6 @@ static int nr_ue_process_dci_dl_10(NR_UE_MAC_INST_t *mac, } if (dci_ind->rnti != mac->ra.ra_rnti && dci_ind->rnti != SI_RNTI) - AssertFatal(1 + dci->pdsch_to_harq_feedback_timing_indicator.val > DURATION_RX_TO_TX, - "PDSCH to HARQ feedback time (%d) needs to be higher than DURATION_RX_TO_TX (%d).\n", - 1 + dci->pdsch_to_harq_feedback_timing_indicator.val, - DURATION_RX_TO_TX); // set the harq status at MAC for feedback set_harq_status(mac, @@ -1098,12 +1094,6 @@ static int nr_ue_process_dci_dl_11(NR_UE_MAC_INST_t *mac, // according to TS 38.213 Table 9.2.3-1 uint8_t feedback_ti = pucch_Config->dl_DataToUL_ACK->list.array[dci->pdsch_to_harq_feedback_timing_indicator.val][0]; - AssertFatal(feedback_ti > DURATION_RX_TO_TX, - "PDSCH to HARQ feedback time (%d) needs to be higher than DURATION_RX_TO_TX (%d). Min feedback time set in config " - "file (min_rxtxtime).\n", - feedback_ti, - DURATION_RX_TO_TX); - // set the harq status at MAC for feedback set_harq_status(mac, dci->pucch_resource_indicator, diff --git a/openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c b/openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c index 8c9062d8ec..adf4e11125 100644 --- a/openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c +++ b/openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c @@ -996,9 +996,6 @@ void nr_ue_aperiodic_srs_scheduling(NR_UE_MAC_INST_t *mac, long resource_trigger return; } - AssertFatal(slot_offset > DURATION_RX_TO_TX, - "Slot offset between DCI and aperiodic SRS (%d) needs to be higher than DURATION_RX_TO_TX (%d)\n", - slot_offset, DURATION_RX_TO_TX); int n_slots_frame = nr_slots_per_frame[current_UL_BWP->scs]; int sched_slot = (slot + slot_offset) % n_slots_frame; NR_TDD_UL_DL_ConfigCommon_t *tdd_config = mac->tdd_UL_DL_ConfigurationCommon; @@ -1434,13 +1431,6 @@ int nr_ue_pusch_scheduler(const NR_UE_MAC_INST_t *mac, AssertFatal(1 == 0, "Invalid numerology %i\n", mu); } - AssertFatal((k2 + delta) > DURATION_RX_TO_TX, - "Slot offset (%ld) for Msg3 needs to be higher than DURATION_RX_TO_TX (%d). Please set min_rxtxtime at least to %d in gNB config file or gNBs.[0].min_rxtxtime=%d via command line.\n", - k2, - DURATION_RX_TO_TX, - DURATION_RX_TO_TX, - DURATION_RX_TO_TX); - *slot_tx = (current_slot + k2 + delta) % nr_slots_per_frame[mu]; if (current_slot + k2 + delta >= nr_slots_per_frame[mu]){ *frame_tx = (current_frame + 1) % 1024; @@ -1449,14 +1439,6 @@ int nr_ue_pusch_scheduler(const NR_UE_MAC_INST_t *mac, } } else { - - AssertFatal(k2 > DURATION_RX_TO_TX, - "Slot offset K2 (%ld) needs to be higher than DURATION_RX_TO_TX (%d). Please set min_rxtxtime at least to %d in gNB config file or gNBs.[0].min_rxtxtime=%d via command line.\n", - k2, - DURATION_RX_TO_TX, - DURATION_RX_TO_TX, - DURATION_RX_TO_TX); - if (k2 < 0) { // This can happen when a false DCI is received LOG_W(PHY, "%d.%d. Received k2 %ld\n", current_frame, current_slot, k2); return -1; From 31b4f48e29170e25e5375e781860cf14eaebee43 Mon Sep 17 00:00:00 2001 From: Jaroslava Fiedlerova Date: Thu, 2 May 2024 20:06:10 +0200 Subject: [PATCH 2/2] ci: set min_rxtxtime = 2 in OAIUE pipeline --- ci-scripts/conf_files/gnb.sa.band78.106prb.n310.7ds2u.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci-scripts/conf_files/gnb.sa.band78.106prb.n310.7ds2u.conf b/ci-scripts/conf_files/gnb.sa.band78.106prb.n310.7ds2u.conf index d43d2ed8e9..294d6dba37 100644 --- a/ci-scripts/conf_files/gnb.sa.band78.106prb.n310.7ds2u.conf +++ b/ci-scripts/conf_files/gnb.sa.band78.106prb.n310.7ds2u.conf @@ -19,7 +19,7 @@ gNBs = ////////// Physical parameters: - min_rxtxtime = 5; + min_rxtxtime = 2; do_SRS = 0; force_256qam_off = 1; pdsch_AntennaPorts_N1 = 1;