Commit Graph
6158 Commits
Author SHA1 Message Date
laurent b339460666 cleanup only 2023-04-28 16:25:24 +02:00
Robert Schmidt 418c6e23f0 Merge remote-tracking branch 'origin/NR_common_duplicated_function' into integration_2023_w16b 2023-04-22 07:51:14 +02:00
Robert Schmidt 302f016650 Merge remote-tracking branch 'origin/NR_UE_TA_procedures_at_MAC' into integration_2023_w16b 2023-04-22 07:48:58 +02:00
Robert Schmidt e31eacb386 Merge remote-tracking branch 'origin/develop-PUCCH2' into integration_2023_w16b 2023-04-21 16:33:44 +02:00
Robert Schmidt 361dfc3c9f Merge remote-tracking branch 'origin/NR_UL_256QAM_new' into integration_2023_w16b 2023-04-21 16:32:36 +02:00
francescomani 87d9517738 avoid duplicated function in nr_common for supported bandwidth 2023-04-20 18:16:37 +02:00
Roberto Louro Magueta b307044345 Decode PUCCH2 for polarParams->N = 64 2023-04-20 12:56:28 +01:00
Robert Schmidt 3b429c5399 Fix uninitialized variable warning 2023-04-20 13:44:05 +02:00
Roberto Louro Magueta 7879afc010 Improve code readability and fix the nr_polar_params() function 2023-04-20 11:51:47 +01:00
laurent b735f8bec6 ubsan fixes 2023-04-19 22:12:08 +02:00
laurent 8a10d1b222 add phy layer variable and persited arrays 2023-04-19 22:12:08 +02:00
laurent 9509bdfdc1 ubsan detected issue 2023-04-19 22:12:08 +02:00
Robert Schmidt 2faca0fdba Fix too large shift in nr_pucchsim 2023-04-19 22:12:08 +02:00
laurent 7f4e8f9220 fix-ubsan 2023-04-19 22:12:08 +02:00
laurent 63fc39dc3f fix bugs detected by ubsan 2023-04-19 22:12:08 +02:00
Roberto Louro Magueta 6a90266aff Add implementation related to 256QAM for 2-layers UL 2023-04-17 13:59:55 +02:00
Raymond Knopp 7455bae459 added 256QAM LLR computation for ULSCH 2023-04-17 12:41:47 +02:00
francescomani a0b207fe6b adding options for 256QAM in UL simulators 2023-04-17 12:41:47 +02:00
laurent 1fefd730d6 fix ldpc ubsan 2023-04-17 09:30:47 +02:00
Robert Schmidt 04451c7078 Merge remote-tracking branch 'origin/clang_warnings_new' into integration_2023_w15 2023-04-14 13:54:46 +02:00
francescomani 5a153c502f adding static const in Gen_shift_value.h to avoid asan odr-violation 2023-04-14 13:52:16 +02:00
Robert Schmidt 1ae561b9cc Remove write-only variable and commented code 2023-04-14 13:52:16 +02:00
Robert Schmidt 41aadcc54f Comment write-only variable 2023-04-14 13:52:16 +02:00
Robert Schmidt 852a6c4f28 Remove write-only variables 2023-04-14 13:52:12 +02:00
Robert Schmidt 8292c4523e Merge remote-tracking branch 'origin/remove-globals-demodulator' into integration_2023_w15 2023-04-13 18:45:19 +02:00
francescomani eb09a63001 separating MAC and PHY procedures for TA 2023-04-12 10:32:35 +02: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
Robert Schmidt 19d3014150 Merge remote-tracking branch 'origin/bugfix-phy-mac-interface' into integration_2023_w14 2023-04-05 19:30:30 +02:00
Cedric Roux 733c7e5e89 bugfix: change memory management of interface between PHY and MAC scheduler
This commit fixes a bug caused by global variables in the gNB_MAC_INST
structure used to transfer MAC scheduler's results to the PHY layer.

When using several threads in the PHY layer, it may happen that the
MAC scheduler is called a second time by the second PHY thread for the
next slot before the content of the global variables in the gNB_MAC_INST
structure used to store the result of the MAC scheduler for the current
slot have been consumed by the first thread, leading to unpredictable
results (all of them certainly wrong).

The solution is to introduce a small memory management module for the
interface between the PHY threads and the MAC scheduler. The MAC
scheduler now fills the data structures passed to it, and not a
global variable anymore. The PHY layer manages the structures and
ensures that no data is overwritten before being fully consumed by
the various threads of the PHY layer.

Some care has to be taken because several PHY threads will access the
same structures at the same time for a given slot (in read mode, so
it's okay). A mechanism of reference counting has thus been introduced.

Only one CC is supported. This restriction should not be too hard
to remove if/when needed. (The code before this commit does not seem
to work for more than one CC anyway.)
2023-04-05 16:39:12 +02:00
francescomani ebd70a3915 Merge remote-tracking branch 'origin/NR_pbch_errors_at_MAC' into integration_2023_w14 2023-04-04 19:35:23 +02:00
laurent ded8a3779d remove globals 2023-04-04 11:41:32 +02:00
Sakthivel Velumani 1f6d111f6a Num wait idication as Tpool message field 2023-04-03 10:25:13 -04:00
Sakthivel Velumani 0004626ac7 Fix bug in QT scope
The UE copies scope data not in a single buffer to avoid overwiring in case of multiple slots processing in parallel. But the scope upates data from single buffer thats assigned during selection. A getPlotValue() method is created to update the data pointer on every timerEvent.
2023-04-03 10:25:13 -04:00
Sakthivel Velumani 9e4d522937 Make kpi variables atomic
Mutex for phy scope: Repeating this change again. My earlier change in commit 06ef311975 was erased by someone during merge of QT scope.
2023-04-03 10:25:13 -04:00
Sakthivel Velumani e45a051c80 Perform CRC check for whole TB 2023-04-03 10:25:11 -04:00
Sakthivel Velumani 5c6778be0c Fixed Harq stats print 2023-04-03 10:24:26 -04:00
Sakthivel Velumani 7d23ec27b5 Changed NR_UE_CAPABILITY_SLOT_RX_TO_TX to 3
Tested with X300 and there was no real-time problems.
Could get the same throughput as when NR_UE_CAPABILITY_SLOT_RX_TO_TX is 4.
2023-04-03 10:24:26 -04:00
Sakthivel Velumani a03864ee8c Fix printing help message 2023-04-03 10:24:26 -04:00
Sakthivel Velumani 15c12caa37 Contains MAC changes to run || DLSCH
DL config as array in MAC
Run RX slot processing in Tpool thread
Fixed race in phy config
Changed mac_IF_mutex
Proc Tx: Lets wait for Proc Rx to get ACK/NACK
-(only on slots that carry ACK/NACK)
Fix problem with rfsim
Separated PDCCH and PDSCH decoding functions. Run PDCCH decoding in main UE_thread.
Fixed race in MAC dci config struct
needed for parallel processing of slots
Moved DLSCH transport block buffer to stack
rx_ind as static allocation
L2sim: Fixed calling of MAC sched in wrong slot
Fix DCI extract bug for RA procedure
2023-04-03 10:24:24 -04:00
francescomani 5c333cca65 move radio link failure detection on pbch at MAC 2023-04-02 09:48:09 +02:00
Robert Schmidt 7a52279078 Merge remote-tracking branch 'origin/bugfix-clear-llr-properly' into integration_2023_w13 2023-03-31 17:58:23 +02:00
Robert Schmidt 1ac428a323 Merge remote-tracking branch 'origin/develop-handle-reconfigurationWithSync' into integration_2023_w13 2023-03-30 19:19:37 +02: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
Robert Schmidt 47ea8d79a2 Free memory correctly 2023-03-27 15:39:49 +02:00
francescomani d664190f9d scope compilation fixes 2023-03-27 15:39:49 +02:00
francescomani 0d66410317 another round of review 2023-03-27 15:39:49 +02:00
francescomani 12ccca72b6 further improvements 2023-03-27 15:26:52 +02:00
Robert Schmidt 6e93619896 review comments 2023-03-27 15:26:52 +02:00
francescomani 779748579c fixes for physical simulators 2023-03-27 15:26:52 +02:00