From daeb110ae1e418996d41415c9785987779e1e750 Mon Sep 17 00:00:00 2001 From: Sakthivel Velumani Date: Fri, 15 Nov 2024 14:14:17 -0500 Subject: [PATCH 1/2] Don't reset txdata buffer every slot This is not necessary becuase the buffer would be overwritten by OFDM modulator in the next frame. --- executables/nr-ue.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/executables/nr-ue.c b/executables/nr-ue.c index bd64a9d361..530c2ba103 100644 --- a/executables/nr-ue.c +++ b/executables/nr-ue.c @@ -473,9 +473,6 @@ static void RU_write(nr_rxtx_thread_data_t *rxtxD, bool sl_tx_action) int tmp = openair0_write_reorder(&UE->rfdevice, proc->timestamp_tx, txp, rxtxD->writeBlockSize, fp->nb_antennas_tx, flags); AssertFatal(tmp == rxtxD->writeBlockSize, ""); - - for (int i = 0; i < fp->nb_antennas_tx; i++) - memset(txp[i], 0, rxtxD->writeBlockSize); } void processSlotTX(void *arg) From 3e3ef8cfd0cafcd11dd181d8b34d9b64422bffdb Mon Sep 17 00:00:00 2001 From: Sakthivel Velumani Date: Fri, 15 Nov 2024 14:16:32 -0500 Subject: [PATCH 2/2] Enable usrp-tx-thread-config in UE Setting this option will start a separate thread for writing samples to USRP. --- executables/nr-ue.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/executables/nr-ue.c b/executables/nr-ue.c index 530c2ba103..e2aec679db 100644 --- a/executables/nr-ue.c +++ b/executables/nr-ue.c @@ -802,6 +802,8 @@ void *UE_thread(void *arg) UE->is_synchronized = 0; int tmp2 = UE->rfdevice.trx_start_func(&UE->rfdevice); AssertFatal(tmp2 == 0, "Could not start the device\n"); + if (usrp_tx_thread == 1) + UE->rfdevice.trx_write_init(&UE->rfdevice); notifiedFIFO_t nf; initNotifiedFIFO(&nf);