100 Commits
Author SHA1 Message Date
rmagueta fea86247da Do not configure NR_MeasurementTimingConfiguration during handover when neighboring cells are at the same frequency 2025-11-21 16:42:24 +00:00
rmagueta 8ca05e51ac Added graph in T_Tracer to observe UL-SNR calculated using SRS 2025-10-02 11:43:07 +01:00
rmagueta 799934024e SRS-based noise calculation using holes 2025-10-02 11:43:07 +01:00
rmagueta 2bf7c2500e Simplifying bit shift in the nr_scale_channel() function 2025-09-25 14:50:37 +02:00
rmagueta 3e65d75f83 UE sends the measurement report for event A2 2025-09-16 10:35:26 +01:00
rmagueta 8d6bb6bf20 Definition of L1 and implementation of L3 measurements for serving cell 2025-09-16 10:32:33 +01:00
rmagueta 7e6826ec03 Refactor and minor improvements in get_MeasConfig function 2025-09-10 18:57:04 +01:00
rmagueta fd4de3c720 Add support for band in neighbourConfiguration 2025-09-05 10:11:04 +01:00
rmagueta c3f243ca82 Inter-frequency handover documentation update 2025-07-15 16:55:41 +02:00
rmagueta b443ec4c52 Get measurement of neighboring cells and measurement gaps working after RRCReestablishment 2025-07-15 16:55:41 +02:00
rmagueta 779d2bee52 Get new measConfig and measurementTimingConfiguration for target gNB-DU during handover 2025-07-15 16:55:41 +02:00
rmagueta d5b9f81285 Send MeasConfig to DU, Receive MeasGapConfig from DU 2025-07-15 16:55:36 +02:00
rmagueta 5e0307d845 Refactor code, add inter-freq neighbors, avoid mem leak
Previously, we only supported intra-frequency handovers, so the
measurements where only for intra-frequency, reusing the same
measurement object. Now that we would support inter-frequency handover,
also add multiple MeasObjects for each neighbor.
2025-07-11 18:09:23 +01:00
rmagueta 6ce4d78c19 Refactor get_MeasConfig(): create subfunctions 2025-07-11 18:09:23 +01:00
rmagueta 932b177667 Add logic for measgap scheduling 2025-07-11 18:09:23 +01:00
rmagueta dfbb6b1509 Handle Measurement Timing Configuration in DU/MAC handler 2025-07-11 14:08:52 +01:00
rmagueta c2d9fb3589 Add MeasGap Configuration in Radio config
Add some helper functions that will be used by the MAC handler to fill
the right MeasGap configuration based on Measurement Configuration sent
by the CU, in the next commit.
2025-07-11 14:08:01 +01:00
rmagueta 7b8427e101 UE RRC: Print warning that measurement gaps are not supported 2025-07-11 13:46:21 +01:00
rmagueta a13a8f01af Add F1AP procedures related to measurementTimingConfiguration 2025-07-11 13:46:21 +01:00
rmagueta 7080810e49 Refactor SRS configuration 2025-06-05 10:19:55 +01:00
rmagueta d851e7799c Fix segmentation fault and LOGs for SRS usage NFAPI_NR_SRS_BEAMMANAGEMENT 2025-06-05 10:19:55 +01:00
rmagueta 4c41387bd4 Improve physim documentation: structure, ctest usage, and clarity 2025-05-16 16:38:54 +02:00
rmagueta 51dfab0c56 Fix DMRS for PUCCH format 2 2025-05-07 15:55:36 +01:00
rmagueta 9e787a0ba2 Bugfix for number of PRBs in PUCCH format 2 2025-04-15 14:49:19 +01:00
rmagueta 4fef7e9cca Configure sched_ctrlCommon earlier, in nr_mac_config_scc 2025-04-01 10:52:03 +01:00
rmagueta cbf0ca9ad7 Fix UL-MCS when UL inactivity and no data 2025-02-26 16:06:50 +00:00
rmagueta dc5f4bf868 Apply delay compensation only when delay is different from 0 2025-01-14 11:34:22 +01:00
rmagueta bf69131c21 Add CI test for delay compensation in PUCCH2 2025-01-14 11:34:22 +01:00
rmagueta 39a50faa6e Delay compensation for PUCCH2 2025-01-14 11:34:22 +01:00
rmagueta c66a625dc5 If the ul_ri of srs_feedback changes between a UL 1st transmission and a retransmission, we use the TPMI of 1st transmission 2024-12-17 14:18:16 +00:00
c956de6f27 Trigger F1 Handover on A3 event
When receiving a measurement report including an A3 event, trigger
handover towards the indicated cell.

Note that currently, we are still limited to one Cell by DU, hence
looking up a cell comes down to looking up a DU, as is done here.

Co-authored-by: batuhanduyuler <batuhan.duyuler@firecell.io>
Co-authored-by: Luis Pereira <lpereira@allbesmart.pt>
Co-authored-by: Robert Schmidt <robert.schmidt@openairinterface.org>
2024-10-25 20:10:26 +02:00
Roberto MaguetaandLuis Pereira 67eb94db3f Print RRC neighbor cell measurements, if present
Co-authored-by: Luis Pereira <lpereira@allbesmart.pt>
2024-10-25 20:10:25 +02:00
rmagueta ecd941e946 Remove old RA process(es) when removing UE
In handover, we might need to remove a UE that we knew under it's
C-RNTI, for which we also have the RA process. Hence, when removing a UE
by RNTI, remove it also from RA.
2024-10-25 20:10:25 +02:00
Roberto Magueta cddffe6f30 Add config files (TDD/FDD) for multiple DUs scenario
Co-authored-by: rmagueta <rmagueta@allbesmart.pt>
2024-10-25 20:10:25 +02:00
rmagueta 4a5bf53caa UE: Improve synchronization for reconfigurationWithSync
Improve synchronization to also handle handover between gNB-DUs with
differing carrier freqs.
2024-10-25 20:09:41 +02:00
rmagueta a927db9ef6 Add c-rnti to UE context setup response
No logic changes in this commit; to be used for the handover case later.

Co-authored-by: rmagueta <rmagueta@allbesmart.pt>
2024-10-22 18:12:51 +02:00
rmagueta be6dcccd93 Add CI test for SRS in nr_ulsim 2024-10-11 11:12:53 +01:00
rmagueta 765bb64b5c Fix SNR based on SRS 2024-10-11 11:12:21 +01:00
rmagueta aaf9b57abb Call active=0 for CSI-RS early 2024-10-09 10:01:46 +01:00
rmagueta 73b00e8c1c Fix the ratio of PDSCH EPRE to DM-RS EPRE
This fix gets DL 4-layer working with COTS UE
2024-10-02 15:30:11 +01:00
Roberto Louro MaguetaandLuis Pereira 3cfc10ddaa Bugfix: an A3 configuration is for a specific PCI
Co-authored-by: Luis Pereira <lpereira@allbesmart.pt>
2024-09-06 10:20:08 +02:00
Roberto MaguetaandLuis Pereira 327baf2938 Bugfix: an A3 configuration is for a specific PCI
Co-authored-by: Luis Pereira <lpereira@allbesmart.pt>
2024-09-06 10:20:08 +02:00
rmagueta a3b753d8cb ULSCH power computation in a different way 2024-08-28 11:50:25 +01:00
rmagueta a5055cacf0 Remove commented code 2024-05-03 15:07:26 +01:00
rmagueta bcbf9287ba Noise power estimation and MMSE computation for DL at UE side 2024-05-03 15:07:26 +01:00
rmagueta f5dccc2a59 Improvements in nr_dlsch_channel_compensation() function 2024-05-03 15:07:26 +01:00
rmagueta 8551260243 Clean up previous BWP switching implementation that was not F1 compliant 2023-11-10 16:01:33 +01:00
rmagueta 60d867a978 Fix read servingCellConfigDedicated from config file 2023-10-27 10:52:52 +02:00
rmagueta e14903cd96 Call __builtin_popcountll function to count the number of bits set in uint64_t variable for polar codes 2023-10-26 12:23:20 +02:00
rmagueta 169a9be8cd Fix Msg3 MAC CE C-RNTI
Reset Msg4_ACKed to not schedule ULSCH and DLSCH before RRC Reconfiguration
2023-10-04 06:55:24 +01:00
rmagueta 313419180f PUCCH power computation in a different way 2023-10-03 17:06:49 +01:00
rmagueta e5804c48d6 Add UE capability config file for 4 ports 2023-09-20 17:19:29 +01:00
rmagueta 6787689537 Compute RI based on SRS up to 4 2023-09-20 17:19:29 +01:00
rmagueta 2fcd538082 SRS processing time measurement 2023-09-20 17:19:29 +01:00
rmagueta bc295b3ba5 Check ULSCH transport block CRC 2023-09-07 08:31:22 +01:00
rmagueta f991dc9ebc Apply channel models TDLA, TDLB and TDLC in DLSIM according to TS 138.101 2023-09-04 18:53:22 +01:00
rmagueta 28438ab5c4 Add ptrs_bit_map input in add_noise() function 2023-09-04 18:37:01 +01:00
rmagueta a629feec29 Remove duplicated nr_est_delay_pdsch()/nr_est_timing_advance_pusch() functions and just create the function nr_est_delay() 2023-09-04 17:09:35 +01:00
rmagueta 9f7b159039 Remove duplicated function freq2time() 2023-09-04 17:09:35 +01:00
rmagueta 39919152cb Implementation of delay compensation in NFAPI_NR_DMRS_TYPE2_linear_interp() at UE 2023-09-04 17:09:35 +01:00
rmagueta 087f9a0bc2 Implementation of delay estimation in NFAPI_NR_DMRS_TYPE2_linear_interp() at UE 2023-09-04 17:09:35 +01:00
rmagueta e0ab96eedc Implementation of delay compensation in NFAPI_NR_DMRS_TYPE1_linear_interp() at UE 2023-09-04 17:09:35 +01:00
rmagueta 7611fe671f Implementation of delay estimation in NFAPI_NR_DMRS_TYPE1_linear_interp() at UE 2023-09-04 17:09:35 +01:00
rmagueta 72aae2553a Introduce delay in terms of number of samples in DLSIM 2023-09-04 17:09:35 +01:00
rmagueta 0fb0203c1c Add condition to call or not the function nr_mac_prepare_ra_ue() 2023-08-24 15:59:36 +01:00
rmagueta 1d6f740cb0 Update FEATURE_SET.md 2023-07-03 11:40:35 +01:00
rmagueta f35d613f7d Decrease maxCodeRate of PUCCH2 2023-07-03 11:40:35 +01:00
rmagueta 79d6a48f47 Remove limitation related to schedule more than 11 bits in PUCCH2 2023-07-03 11:40:35 +01:00
rmagueta b722d92fa0 Extract the information bits from U 2023-07-03 11:40:35 +01:00
rmagueta fb7d4dc4df Compute parity_check_bit_pattern and implementation of function nr_polar_generate_u() and nr_polar_uxG() 2023-07-03 11:40:35 +01:00
rmagueta d6b7b6b918 Q_PC_N computation for n_pc_wm = 0 2023-07-03 11:40:35 +01:00
Roberto Louro Magueta 98ed514cab Implementation for de-interleaving of coded bits 2023-07-03 11:40:35 +01:00
Roberto Louro Magueta e5825139d7 Implementation for interleaving of coded bits 2023-07-03 11:40:35 +01:00
Roberto Louro Magueta 70270250e8 Select Nonlinear ML or Linear MMSE receiver 2023-06-26 12:51:31 +01:00
Roberto Louro Magueta 917ff8e97b Remove duplicated code 2023-06-26 12:51:31 +01:00
Roberto Louro Magueta 8a820db22f Compute LLR for 64QAM for ML 2023-06-26 12:51:31 +01:00
Roberto Louro Magueta 46dca7a111 Compute LLR for 16QAM for ML 2023-06-26 12:51:31 +01:00
Roberto Louro Magueta e21a09967d Compute LLR for QPSK for ML 2023-06-26 12:51:31 +01:00
Roberto Louro Magueta 8fffe50a11 Fix rho computation 2023-06-26 12:51:31 +01:00
rmagueta 659d529315 Enable T304 2023-06-26 11:06:16 +01:00
rmagueta dcae67c375 Bugfix for PDCCH monitoring occasions tables and SFN computation for FR2 2023-06-26 10:59:17 +01:00
Roberto Louro Magueta 45d4333afc Fix reconfigurationWithSync 2023-06-10 13:06:37 +01:00
Roberto Louro Magueta 4e7f34cbae Fix segmentation fault in ue_context_setup_request() 2023-05-10 19:50:44 +01:00
Roberto Louro Magueta 8ba201005f Fix reconfigurationWithSync 2023-05-04 10:07:16 +01:00
Roberto Louro Magueta e140ac4bf7 Add CI test for PUCCH2 and polarParams->N = 64 2023-04-20 12:56:28 +01:00
Roberto Louro Magueta b307044345 Decode PUCCH2 for polarParams->N = 64 2023-04-20 12:56:28 +01:00
Roberto Louro Magueta 7879afc010 Improve code readability and fix the nr_polar_params() function 2023-04-20 11:51:47 +01:00
Roberto Louro Magueta 6a90266aff Add implementation related to 256QAM for 2-layers UL 2023-04-17 13:59:55 +02:00
Roberto Louro Magueta a611d58d3b Add CI tests: PUSCH Type B, 40 MHz BW, 30 kHz SCS, 2 and 4 RX Antennas Requirements Test, 2 layers 2023-04-10 10:18:41 +01:00
Roberto Louro Magueta 6c590b900a Compute noise variance to be used in MMSE 2023-04-10 10:18:41 +01:00
Roberto Louro Magueta 4b263c3fa5 MMSE working for 2-layers UL with a hardcoded noise variance 2023-04-10 10:18:41 +01:00
Roberto Louro Magueta b69fb5bd74 Do not send TA command when rrc_processing_timer is active 2023-03-31 14:38:56 +01:00
Roberto Louro Magueta cf8dff2093 Implementation to update the RRC timers at UE 2023-03-28 18:52:48 +01:00
Roberto Louro Magueta 670fcc0459 Fix handle_nr_ul_harq() for CFRA in SA 2023-03-28 18:52:48 +01:00
Roberto Louro Magueta 81d44c6422 Stop timer T304 when RA is succeeded 2023-03-28 18:52:48 +01:00
Roberto Louro Magueta 889a50072f Implementation of resynchronization procedures for a gNB with a given Nid_cell 2023-03-28 18:52:48 +01:00
Roberto Louro Magueta dcdf057dc8 Enable T304 after receiving the reconfigurationWithSync 2023-03-27 10:50:00 +01:00
Roberto Louro Magueta 9ab2fde392 Fix ue capability config files 2023-03-22 18:35:38 +00:00
Roberto Louro Magueta 9e6fe8cf80 Add CI test: 3GPP G-FR1-A4-27, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test, 2 layers 2023-03-20 17:13:30 +00:00
Roberto Louro Magueta a4d43c249e Update the ad_shift, considering the previous improvement 2023-03-20 17:13:30 +00:00