Laurent THOMAS
df9cd171f6
remove a useless copy and specific buffer for all UE UL payload
2024-04-17 10:59:13 +02:00
francescomani
7ca130832b
move computation of base graph for LDPC at MAC in the UE
2023-12-20 18:03:17 +01:00
Robert Schmidt
610a886da7
Merge remote-tracking branch 'origin/multi-config' into integration_2023_w44
2023-11-12 05:14:36 +01:00
Laurent THOMAS
f50d5f5a9b
make multiple config instead of one implicit global
2023-11-10 10:23:11 +01:00
francescomani
629825aca6
taking into account PTRS in computing G
2023-11-03 10:39:13 +01:00
francescomani
26bceb2277
handling reserved case of ULSCH MCS
2023-08-19 08:31:03 +02:00
Robert Schmidt
516d4b9fc1
Merge remote-tracking branch 'origin/use-memsan' into integration_2023_w28
2023-07-13 19:19:15 +02:00
Robert Schmidt
c1e8acb2e2
Repair build when T tracer build disabled
2023-07-13 10:28:38 +02:00
Robert Schmidt
54d5676c21
Initialize variables to NULL/0 in nr_dlschsim, pucchsim, nr_ulschsim
2023-07-03 14:07:38 +02:00
Laurent THOMAS
3645c96c09
remove generic thread pool abort
2023-06-12 10:24:37 +02:00
laurent
1b09f683f9
Fix compilation errors due to -Werror
2023-06-08 19:15:24 +02:00
francescomani
a0b207fe6b
adding options for 256QAM in UL simulators
2023-04-17 12:41:47 +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
0d66410317
another round of review
2023-03-27 15:39:49 +02:00
francescomani
779748579c
fixes for physical simulators
2023-03-27 15:26:52 +02:00
Robert Schmidt
e90ef3bc68
Split phy_init.h into two files (for LTE/NR)
2023-03-06 20:05:38 +01:00
Robert Schmidt
8a15fb7c63
RC: forward declarations and link physims better
...
The simulators have been changed: due to linker errors that would arise
otherwise, a lot of functions are defined in them to avoid such errors.
Some functions are also defined in header files; in this commit, we
define most functoins in nr_dummy_functions.c, which is compiled in, not
by including the C file, but by adding it to the target in
CMakeLists.txt
- nr_dlsim+nr_ulsim need NR_IF_Module_init(), so it cannot be in
nr_dummy_functions, but the others need it
- Link correcr NR_IF_Module_init() into these simulators, and reduce
overall link list
- Correctly link remaining simulators
2023-03-06 20:04:38 +01:00
francescomani
358772429e
fix asan failures
2023-01-23 11:31:01 +01:00
laurent
b74ba0fb92
cleaning only
2023-01-19 14:52:39 +01:00
Robert Schmidt
12384bbe25
Clean up phy_init_nr_gNB()
...
- variable is_secondary_gnb is not used anywhere, so remove
- variable lowmem is not used/defines should be changed, so remove
2022-12-12 23:40:39 +01:00
Roberto Louro Magueta
9b04af1b52
Put the center_freq and maxDoppler as input of new_channel_desc_scm() function
2022-11-25 11:03:45 +00:00
Sakthivel Velumani
3c8478f785
Moved PHY ULSCH struct to stack
2022-11-22 11:54:18 -05:00
Roberto Louro Magueta
6f51b930c1
Put the correlation level (low, medium or high) as input of new_channel_desc_scm()
2022-10-27 17:07:25 +01:00
Sakthivel Velumani
8a71877eec
Remove thread id and make slot processing in series
2022-09-29 13:43:16 -04:00
francescomani
0a992c604a
Merge remote-tracking branch 'origin/develop' into ul-phr
2022-09-05 14:35:50 +02:00
Robert Schmidt
203ac17833
Merge remote-tracking branch 'origin/by-core-thread-pool' into integration_2022_wk35b
2022-09-04 21:46:04 +02:00
laurent
aa2a36768c
simplify thread pool configuration
...
fix segv
fix bug redeclaration of same struct in phy sim
Apply 1 suggestion(s) to 1 file(s)
code reveiw comments
2022-09-02 11:36:47 +02:00
francescomani
9819268412
Merge remote-tracking branch 'origin/develop' into ul-phr
2022-08-29 17:23:43 +02:00
francescomani
1e39dd777d
fix physical simulators
2022-08-29 16:45:14 +02:00
Hongzhi Wang
1d4ffe42c4
Merge branch 'develop' into ldpc_offload_t1_mr
...
Conflicts:
executables/nr-softmodem.h
executables/softmodem-common.h
openair1/SCHED_NR/phy_procedures_nr_gNB.c
2022-08-22 20:02:34 +02:00
Robert Schmidt
dfd9a91b50
Rename abortNotifiedFIFO() to abortNotifiedFIFOJob()
2022-08-16 14:41:02 +02:00
Robert Schmidt
c4a657cc33
Avoid additional malloc() for queues and Tpool
2022-08-16 14:41:01 +02:00
Robert Schmidt
31d5bb6ffd
Rename abortTpool() to abortTpoolJob(), fix doc
2022-08-16 14:41:01 +02:00
Hongzhi Wang
b7295ab45f
Merge branch 'develop' into ldpc_offload_t1_mr
...
Conflicts:
executables/nr-gnb.c
openair1/PHY/CODING/nrLDPC_defs.h
openair1/PHY/INIT/nr_init.c
openair1/PHY/NR_TRANSPORT/nr_ulsch_decoding.c
openair1/SCHED_NR/phy_procedures_nr_gNB.c
openair1/SIMULATION/NR_PHY/ulsim.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
2022-06-17 14:49:54 +02:00
Sakthivel Velumani
da8d3037df
fixed bugs in phy sims
2022-06-08 21:32:07 +05:30
francescomani
1f49b73eac
Merge remote-tracking branch 'origin/develop' into NR_dl_ul_fapi_improv
2022-05-18 08:55:40 +02:00
francescomani
cfa37e7213
cosmetic changes
2022-05-03 12:21:47 +02:00
francescomani
f49df05456
fix for ulschsim antenna ports
2022-04-20 18:55:38 +02:00
francescomani
cb32c7505e
tabulated values * 10 to simplify the code
2022-03-30 19:08:20 +02:00
francescomani
c6b4f97d19
coderate according to SCF and get tbs,qm,R only at MAC
2022-03-26 13:37:34 +01:00
francescomani
fb118a76a8
Merge remote-tracking branch 'origin/develop' into bupt-ulmimo-4
2022-03-22 13:21:43 +01:00
Hongzhi Wang
457ee6c049
bugfix build issue
2022-03-10 21:43:28 +01:00
francescomani
06d488bb23
ulsch memory optimization
2022-03-09 17:35:38 +01:00
francescomani
9e26621d4b
Merge remote-tracking branch 'origin/develop' into bupt-ulmimo-4
2022-03-01 15:54:31 +01:00
francescomani
43ea92bf8f
Merge remote-tracking branch 'origin/develop' into NR_MIMO_memory
2022-03-01 15:08:30 +01:00
Robert Schmidt
0827b2f5b8
Fix leaks & unitialized memory in nr_ulschsim
2022-02-21 13:35:35 +01:00
Robert Schmidt
399e6d78f7
new_nr_ue_ulsch(): no abstraction_flag, add term_nr_ue_transport()
2022-02-21 13:35:35 +01:00
Robert Schmidt
331575ebab
Fix memory leaks in nr_ulschsim
2022-02-21 13:34:40 +01:00
francescomani
8c1ed65c1f
Merge remote-tracking branch 'origin/develop' into NR_MIMO_memory
2022-02-16 13:46:54 +01:00
francescomani
c4f1812cc9
Merge remote-tracking branch 'origin/develop' into bupt-ulmimo-4
2022-02-14 18:14:19 +01:00