Laurent THOMAS
29108a0974
cleaning syntax of nr-ru.c
2025-08-16 21:38:18 +02:00
Laurent THOMAS
efccad956a
add gtpu error packet parsing and display
2025-08-13 18:00:31 +02:00
Laurent THOMAS
e2c4033b57
When a client connects, we need to start the send/receive loop but the first reception is void data
2025-08-12 09:22:03 +02:00
Laurent THOMAS
02ce4aaf82
Fix a 4G UE bug
2025-07-30 17:41:28 +02:00
Laurent THOMAS
426e3453cd
trace to try to debug old 4G bug
2025-07-30 17:41:28 +02:00
Laurent THOMAS
990fc9c55a
Fix potential out-of-bound write
...
Tell strncpy() the size including the NULL byte to make sure we copy all
data.
This just fixes these warnings:
openair3/NAS/TOOLS/conf_usim.c: In function ‘gen_usim_data’:
openair3/NAS/TOOLS/conf_usim.c:191:17: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
openair3/NAS/TOOLS/conf_usim.c:190:53: note: length computed here
openair3/NAS/TOOLS/conf_usim.c:195:17: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
openair3/NAS/TOOLS/conf_usim.c:194:54: note: length computed here
add copy with limited size and truncate properly with null C string termination.
As clang-format doesn't handle tab indented files and as it is not the
OAI coding rule, the entire file is re-indented with present OAI coding
rule.
2025-07-30 17:40:50 +02:00
Laurent THOMAS and Robert Schmidt
b65b5dd40e
Remove specific directory for LTE SIM management tools
...
Move into openair3/NAS/TOOLS/CMakeLists.txt, and simplify the
CMakeLists.txt.
Co-authored-by: Robert Schmidt <robert.schmidt@openairinterface.org >
2025-07-30 17:39:12 +02:00
Laurent THOMAS
f835705dd1
fix array sizes and aligment issues in 5G UE dci decoder
2025-07-25 15:49:35 +02:00
Laurent THOMAS
343b983aa9
fix SIMD tail length in nr_pdcch_detection_mrc() and replace >> operator by /
2025-07-25 10:04:13 +02:00
Laurent THOMAS
b41c9e2e85
move static some functions that are used only in one file
2025-07-25 10:04:13 +02:00
Laurent THOMAS
19d783f6d9
generalize constant nb re per rn in dci_nr.c
2025-07-25 10:04:04 +02:00
Laurent THOMAS
e8f6d14c47
simplify and make more local variables in nr_rx_pdcch() and fix small bugs (size 9 RE instaed of 12 RE)
2025-07-25 10:02:26 +02:00
Laurent THOMAS
b30da5c0b2
reduce size and make local rxdataF_comp in nr_rx_pdcch()
2025-07-25 10:02:26 +02:00
Laurent THOMAS
2c22f49a45
simplify nr_pdcch_channel_compensation()
2025-07-25 10:02:26 +02:00
Laurent THOMAS
3ca12f78e5
simplify function nr_pdcch_extract_rbs_single()
2025-07-25 10:02:26 +02:00
Laurent THOMAS
fffe9531c3
add assert in a case of wrong gNB configuration file
2025-07-25 10:02:26 +02:00
Laurent THOMAS
8dd2119d4e
bad type multi casts with wrong meaning like cast to ** a array of 2D (wrong in C)
2025-07-24 13:48:36 +02:00
Laurent THOMAS
3264eca6db
enhance llr unitary tests
2025-07-24 13:48:36 +02:00
Laurent THOMAS
f57f6a8d4e
factorize code that initialize all 0xff simd vectors
2025-07-24 13:48:36 +02:00
Laurent THOMAS
90cf249018
add telnet commands trace
2025-07-04 09:34:17 +02:00
Laurent THOMAS
0523bcfbde
fix gNB that should always perform tx in case of rfsim (like continuous-tx
2025-06-30 10:21:02 +02:00
Laurent THOMAS
1540ca3ae5
fix bug in rfsim->nb_cnx for client side. it has no usage except a cpu optimisation in case one single rfsim socket and SISO case
2025-06-30 09:06:28 +02:00
Laurent THOMAS
f7598bf528
clarify first transmission to client, split process_recv in 2 functions
2025-06-30 09:06:28 +02:00
Laurent THOMAS
68857114a6
split rfsimulator too long function in smaller ones. Clean code for bad "UE" instead of rfsim client/server. Simplify logic
2025-06-30 09:06:28 +02:00
Laurent THOMAS
b9c066329e
trace in 4G RAR processing to debug ci result
2025-06-30 09:06:28 +02:00
Laurent THOMAS
98e6d60337
RF simulator: Fix concurrency issues during new client connections
...
Fix concurrency issues happening when a new client connects, sometimes
leading to a total softmodem deadlock.
Key changes:
- Fix sample sending on new client connection: send the first
sample only to the newly connected client.
- Remove the --rfsimulator.hanging-workaround option
- Replace global nb_ue and Sockmutex with nb_cnx and Sockmutex
in rfsimulator_state_t for better concurrency and clarity.
2025-06-30 09:06:28 +02:00
Laurent THOMAS
fb85a8cda3
clarify and indent correctly the function initial sync
2025-06-27 15:21:47 +02:00
Laurent THOMAS
10ff80815f
when we try to detect a specific PCI, and it fails, the SSS detection return successful detection, with wrong frequency offset
2025-06-27 15:21:13 +02:00
Laurent THOMAS
72c29248a3
remove dead globals
2025-06-03 17:03:17 +02:00
Laurent THOMAS
33d72f6080
fix C style, unefficient and complex
2025-05-09 12:10:41 +02:00
Laurent THOMAS
44716febce
ue txData more contextual, but still global as it is entangled with usrp driver
2025-05-09 12:10:39 +02:00
Laurent THOMAS
1208521959
remove dead code and a wrong comment
2025-04-28 11:59:17 +02:00
Laurent THOMAS
d980301f29
fix old bug always increasing frame_tx compared with 3GPP frame number
2025-04-27 20:27:36 +02:00
Laurent THOMAS
8c55c4b8ab
move traces of phy simulators to stdout (some were in stderr)
2025-04-25 14:47:59 +02:00
Laurent THOMAS
7982a9da41
set correct parameter type, and fuse funcions that do same real/complex vector operations, doing this, fix a lot of unitary multiplications (else there would be numerous cast operations
2025-04-25 14:47:59 +02:00
Laurent THOMAS
95ae7772bf
simplifly, reegroup functions in tools_defs.h
2025-04-25 14:47:59 +02:00
Laurent THOMAS
04fc2fbb2e
make correct description of sub_cpx_vector16 and remove mixed dead code
2025-04-25 14:47:59 +02:00
Laurent THOMAS
4e3fab67a8
remove unused function with duplicated name to another one
2025-04-25 14:47:59 +02:00
Laurent THOMAS
2528a0614a
- replace SIMDE package internal types usage by oai defined types
...
- remove some unused functions
2025-04-25 14:47:59 +02:00
Laurent THOMAS
fefb96a115
merge functions conj(a)*b and a*conj(b)
2025-04-25 14:47:59 +02:00
Laurent THOMAS
bb93b06663
use one call to multiply the full size vector
2025-04-25 14:47:59 +02:00
Laurent THOMAS
54828f10d0
defined and not used variable
2025-04-04 16:05:46 +02:00
Laurent THOMAS
f9835e996a
websrv useless if(), then string copy
2025-04-04 16:05:38 +02:00
Laurent THOMAS
990414572a
error uint/int mixed in loops
2025-04-04 16:04:05 +02:00
Laurent THOMAS
5cabc74527
get_nr_prach_occasion_info_from_index() uses a uninitialzed value to make += operator
2025-04-04 16:02:56 +02:00
Laurent THOMAS
78b44a8e17
remove globale llr_layers, that seems to save 700MB, improve CPU and make the code simpler
2025-03-20 14:28:46 +01:00
Laurent THOMAS
a0721cac16
remove ul_ch_estimates_time that saves 50MB memory to access in RAM, and make better quality scope data passing (no race)
2025-03-14 11:27:01 +01:00
Laurent THOMAS
8a63b01387
merge 2 functions that do the same in one and set better naming
2025-02-17 18:51:21 +01:00
Laurent THOMAS
ce7bdf71e9
fix simde lacking refix
2025-02-17 11:06:08 +01:00
Laurent THOMAS
3edd989aff
simplify nr_layer_mapping(), and use all simd sizes for the tail
2025-02-12 11:59:52 +01:00
Laurent THOMAS
9004787171
group two symbol loops to make one with smaller tsack size and smaller variables
2025-02-12 11:59:52 +01:00
Laurent THOMAS
f73afa393e
group similar functions in one version, split one too large function in two functions
2025-02-12 11:59:52 +01:00
Laurent THOMAS
eb0dda59ac
remove intermediate buffer and memory copy, continue to simplify nr pdsch computation
2025-02-12 11:51:28 +01:00
Laurent THOMAS
2fad8796b1
clean no_ptrs_dmrs_case()
2025-02-12 11:51:28 +01:00
Laurent THOMAS
5ff5d01fb9
simplify and order sizes of SIMD vectors
2025-02-12 11:51:28 +01:00
Laurent THOMAS
9d844135b1
local dmrs_mux and unaligned mod_dmrs
2025-02-12 11:51:28 +01:00
Laurent THOMAS
3ddb2d0502
very coarse grain dlsch computation function break into smaller functions
2025-02-12 11:51:28 +01:00
Laurent THOMAS
d928e68e12
create a separate function to process dlsch ptrs
2025-02-12 11:51:28 +01:00
Laurent THOMAS
5526244ad6
create a function per dlsch_id
2025-02-12 11:51:28 +01:00
Laurent THOMAS
889b4b00e3
SIMD optimizations for Neon/AVX2/AVX512 in the PDSCH transmit path
2025-02-12 11:51:28 +01:00
Laurent THOMAS
43b981247e
error-simd-intrinsic-name
2025-02-04 13:21:43 +01:00
Laurent THOMAS
6d14ac735b
remove dead commented code
2025-01-30 17:15:11 +01:00
Laurent THOMAS
62e8431c98
remove code obfuscation
2025-01-30 17:14:18 +01:00
Laurent THOMAS
25652c5a24
fix bad type in dci encoding
2025-01-30 17:14:18 +01:00
Laurent THOMAS
5416be3736
move byte2m128i in a more logical place
2025-01-30 17:14:10 +01:00
Laurent THOMAS
268172a435
pure bad code fix
2025-01-30 17:12:27 +01:00
Laurent THOMAS
284b7af49c
more comprehensive modulation lut table generation
2025-01-28 09:50:29 +01:00
Laurent THOMAS
f272d7d1cc
set correct type on qpsk modulation table
2025-01-28 09:50:29 +01:00
Laurent THOMAS
c73353bed3
comprehensive dmrs reception and better cpu efficiency
2025-01-28 09:50:29 +01:00
Laurent THOMAS
b999177810
remove MMX instruction usage in polar decode
2025-01-24 15:29:28 +01:00
Laurent THOMAS
ef3b99a263
remove MMX instruction usage in threegpplte_turbo_encoder_sse()
2025-01-23 21:18:26 +01:00
Laurent THOMAS
e106ec6d91
remove m64 type and a very basic cleaning of LTE ulsch_decoding
2025-01-23 21:18:26 +01:00
Laurent THOMAS
536b5d8760
Clean up logging module debug flags
...
cleanup debug/dump flags by avoiding repetitions in the source code and
enable compiler checks. Add a help text if we set a wrong debug trace
option.
2025-01-23 14:12:29 +01:00
Laurent THOMAS
ca37e0c123
Clean up NAS code, remove unused compile options
2025-01-23 14:12:06 +01:00
Laurent THOMAS
d68a8b51e6
Remove unused PHY_MEX compile option
2025-01-23 14:11:13 +01:00
Laurent THOMAS
0f970326c2
Remove unused UESIM_EXPANSION compile option
2025-01-23 14:10:50 +01:00
Laurent THOMAS
17bb19c7be
Remove unused LOCALIZATION compile option
2025-01-23 14:10:33 +01:00
Laurent THOMAS
b0734604e9
Remove useless RRC states
2025-01-23 14:10:16 +01:00
Laurent THOMAS
a54eba8fe0
Remove commented code and unused type definitions
2025-01-23 14:08:17 +01:00
Laurent THOMAS
fb2f893954
Remove unused static inline function
2025-01-23 13:57:36 +01:00
Laurent THOMAS
a8f6563060
remove a complex and not very usefull trace in replay_node
2025-01-23 10:35:49 +01:00
Laurent THOMAS
e7e01f753a
remove unsed LUT
2025-01-23 10:35:49 +01:00
Laurent THOMAS and Thomas Schlichter
eac35f07a5
Usrp constant and slow derive timestamp
...
Co-authored-by: Thomas Schlichter <thomas.schlichter@iis.fraunhofer.de >
2025-01-23 10:22:31 +01:00
Laurent THOMAS
48226d10bf
add cpu measurement option in nr_pucchsim
2025-01-14 11:34:22 +01:00
Laurent THOMAS
6384517c01
Better code for PUCCH2 decoding
2025-01-14 11:34:22 +01:00
Laurent THOMAS
f919246121
remove part of code using _m64 type (so old mmx instructions)
2025-01-14 10:07:59 +01:00
Laurent THOMAS
ba27aefe4e
add some const and remove dead code
2025-01-14 10:07:31 +01:00
Laurent THOMAS
7d0c89185c
gcc warning on #define duplicated
2025-01-14 10:07:31 +01:00
Laurent THOMAS
d5c72cf843
remove a race condition in viberti_lte and a useless global table
2025-01-14 10:07:30 +01:00
Laurent THOMAS
a0d6057294
remove calls to clear SIMD registers, that was a historical issue
2025-01-14 10:06:06 +01:00
Laurent THOMAS and Robert Schmidt
b4bc7c96ba
Move UL_INFO structure allocation local to a rx slot processing
...
Use UL_INFO on the stack, to simplify the code. move in the same struct
the associated rach, pdu, crc, srs arrays that where pointed from
directly in gNB structure Keep in nfapi the existing logic that make
malloc for theses rach, pdu, crc, srs array lists
Pass only relevant fields, where appropriate.
Co-authored-by: Robert Schmidt <robert.schmidt@openairinterface.org >
2025-01-10 18:05:58 +01:00
Laurent THOMAS
e0ca70c36d
replace a set of #define by a C bit array, remove duplicated extern global variable declaration
2025-01-09 15:28:25 +01:00
Laurent THOMAS
766619aa26
add process RRC input in do-ra mode (was a race cond)
2025-01-06 12:09:29 +01:00
Laurent THOMAS
9c0d90a014
Introduce UE RCC to MAC ITTI queue
...
Reduce race conditions through a itti queue, such that RRC-initiated MAC
memory modifications happen at the same time as MAC thread writes.
However, it doesn't resolve the problem of exact slot we should apply
the new cell configurtion.
2025-01-06 12:09:29 +01:00
Laurent THOMAS
443307a34a
a lib has been added but missed dependancies
2024-12-05 11:29:42 +01:00
Laurent THOMAS
279d49415f
remove un-necessary global variables
2024-12-04 12:26:36 +01:00
Laurent THOMAS
65e3c89bb1
add ue mac stats and monitoring as per gnb ones
2024-11-21 16:39:19 +01:00
Laurent THOMAS
362eba7e27
Clip the input for -32768 because this will make different result in mult_complex_vectors() compared to C version
2024-11-15 13:15:30 +01:00
Laurent THOMAS
2348b3c065
select LCG that contains the highest priorit LC with data to transmit instead of the LC with maximum waiting data size
2024-11-13 14:23:23 +01:00
Laurent THOMAS
d641a76196
fix BSR report malformed, add SHORT BSR when it can (instead of LONG BSR) simplify the code and make the code more explicit, but the may structure remain (nr_write_ce_ulsch_pdu interface is complex, merging it into the called would make simpler and more interstandable code), fix some asserts related to this part of code
2024-11-13 14:15:30 +01:00