Commit Graph
8320 Commits
Author SHA1 Message Date
Quency Lin 797f8cec80 Refactor: Make qam64_qam64 more compact
Use local arrays and for-loop to replace duplicated statements.
For reference, here is the table of index v.s. old local variable
qam64 qam64
psi_r_, psi_i_, a_r_, a_i_, psi_a_, a_sq_, bit_met_
 0 p7_p7    16 p3_p7    32 m1_p7    48 m5_p7
 1 p7_p5    17 p3_p5    33 m1_p5    49 m5_p5
 2 p7_p3    18 p3_p3    34 m1_p3    50 m5_p3
 3 p7_p1    19 p3_p1    35 m1_p1    51 m5_p1
 4 p7_m1    20 p3_m1    36 m1_m1    52 m5_m1
 5 p7_m3    21 p3_m3    37 m1_m3    53 m5_m3
 6 p7_m5    22 p3_m5    38 m1_m5    54 m5_m5
 7 p7_m7    23 p3_m7    39 m1_m7    55 m5_m7
 8 p5_p7    24 p1_p7    40 m3_p7    56 m7_p7
 9 p5_p5    25 p1_p5    41 m3_p5    57 m7_p5
10 p5_p3    26 p1_p3    42 m3_p3    58 m7_p3
11 p5_p1    27 p1_p1    43 m3_p1    59 m7_p1
12 p5_m1    28 p1_m1    44 m3_m1    60 m7_m1
13 p5_m3    29 p1_m3    45 m3_m3    61 m7_m3
14 p5_m5    30 p1_m5    46 m3_m5    62 m7_m5
15 p5_m7    31 p1_m7    47 m3_m7    63 m7_m7

y0
 0 y0_p_7_7   16 y0_p_3_7
 1 y0_p_7_5   17 y0_p_3_5
 2 y0_p_7_3   18 y0_p_3_3
 3 y0_p_7_1   19 y0_p_3_1
 4 y0_m_7_1   20 y0_m_3_1
 5 y0_m_7_3   21 y0_m_3_3
 6 y0_m_7_5   22 y0_m_3_5
 7 y0_m_7_7   23 y0_m_3_7
 8 y0_p_5_7   24 y0_p_1_7
 9 y0_p_5_5   25 y0_p_1_5
10 y0_p_5_3   26 y0_p_1_3
11 y0_p_5_1   27 y0_p_1_1
12 y0_m_5_1   28 y0_m_1_1
13 y0_m_5_3   29 y0_m_1_3
14 y0_m_5_5   30 y0_m_1_5
15 y0_m_5_7   31 y0_m_1_7

rho_r
 0 pi_7_7   16 pi_3_7
 1 pi_7_5   17 pi_3_5
 2 pi_7_3   18 pi_3_3
 3 pi_7_1   19 pi_3_1
 4 mi_7_1   20 mi_3_1
 5 mi_7_3   21 mi_3_3
 6 mi_7_5   22 mi_3_5
 7 mi_7_7   23 mi_3_7
 8 pi_5_7   24 pi_1_7
 9 pi_5_5   25 pi_1_5
10 pi_5_3   26 pi_1_3
11 pi_5_1   27 pi_1_1
12 mi_5_1   28 mi_1_1
13 mi_5_3   29 mi_1_3
14 mi_5_5   30 mi_1_5
15 mi_5_7   31 mi_1_7
2023-10-03 22:03:40 +02:00
Quency Lin 465fc55e20 Refactor: Make qam16_qam16 more compact
Use local arrays and for-loop to replace duplicated statements.
For reference, here is the table of index v.s. old local variable
suffix.
 0 p1_p1            0 rpi_1_1
 1 p1_p3            1 rpi_1_3
 2 p3_p1            2 rpi_3_1
 3 p3_p3            3 rpi_3_3
 4 p1_m1            4 rmi_1_1
 5 p1_m3            5 rmi_1_3
 6 p3_m1            6 rmi_3_1
 7 p3_m3            7 rmi_3_3
 8 m1_p1
 9 m1_p3
10 m3_p1
11 m3_p3
12 m1_m1
13 m1_m3
14 m3_m1
15 m3_m3
2023-10-03 22:03:40 +02:00
Tsung-Yu Chan 526363dfad fix / add the static for max_epi16 2023-10-03 22:03:40 +02:00
Quency e241edf287 feat / SISO: Use 128/256 SIMDe for ARM64/x86 2023-10-03 22:03:40 +02:00
Quency b46479889d misc / Reorder inlines and add architecture guard 2023-10-03 21:32:55 +02:00
Quency 3ce1f6517d fix / warnings in nr_ulsch_llr_computation.c 2023-10-03 21:32:55 +02:00
Quency 7e9968451f feat / Turn #define into static inline functions 2023-10-03 21:32:55 +02:00
Quency a7af689d50 feat / MIMO: Use 128/256 SIMDe for ARM64/x86 2023-10-03 21:32:55 +02:00
Robert Schmidt 280c987938 Merge remote-tracking branch 'origin/one-step-cleaning-gNB-ulsch-decoding' into integration_2023_w39 2023-10-03 09:35:18 +02:00
Laurent THOMAS d448b5e549 remove 'B' from persisted data, replace 3824 hardcoded by it's existing define 2023-09-29 10:23:54 +02:00
Robert Schmidt 728d8027de Merge remote-tracking branch 'origin/684-sigsegv-in-nr-softmodem-100mhz-on-usrp' into integration_2023_w39 2023-09-28 20:15:05 +02:00
Robert Schmidt 91c5bccc05 Merge remote-tracking branch 'origin/bugfix-uci-bit-extraction' into integration_2023_w39 2023-09-28 20:14:56 +02:00
luis_pereira87 debd35a877 Apply function with better performance to reverse bits for polar encoder/decoder in PBCH 2023-09-27 08:30:06 +01:00
luis_pereira87 2360925e29 Reverse bits in UCI message when using polar encoder/decoder 2023-09-27 08:30:06 +01:00
luis_pereira87 58f6cb2af9 Implement function for reversing bits with better performance 2023-09-27 08:30:06 +01:00
Laurent THOMAS 7cb8988372 one-step-cleaning-gNB-ulsch-decoding 2023-09-25 15:22:08 +02:00
Tsung Yu Chan fc2432e93b chore / simplify the code and add the comment
- simplify the buffer alignment
  - add the comment for llr
  - clean unused variable
2023-09-25 12:48:28 +02:00
Tsung Yu Chan 0263b4a807 chore / remove the unused variable 2023-09-25 12:48:28 +02:00
Tsung Yu Chan 5231a3ab74 fix / fix the transfrom precoding error when qpsk
- avoid the nr_freq_equalization when qpsk
  - do the stop_meas when use the lepc offload
2023-09-25 12:48:28 +02:00
Tsung-Yu Chan 62ad185df9 fix / fix the length of ce estimation buffer 2023-09-25 12:48:28 +02:00
Tsung-Yu Chan f4beb879cc fix / unscrambling runtime error
- fix the unscrambling runtime error
  - avoid to many variables pass by function
2023-09-25 12:48:28 +02:00
Tsung-Yu Chan 9db99b2fd2 feat / add ptrs module 2023-09-25 12:48:28 +02:00
Tsung-Yu Chan 39e7e09152 fix / set the output shift to correct value 2023-09-25 12:48:28 +02:00
Tsung-Yu Chan 090ac4870d fix / init the variable
init the PUSCH symbols per thread to avoid for stucking
2023-09-25 12:48:28 +02:00
Tsung-Yu Chan e54d4a98b6 fix / fix the log2_maxh for llr
- init the variable for simde_m256i avoid error in ubuntu
2023-09-25 12:48:28 +02:00
Tsung-Yu Chan 428af852a0 fix / clean the unused variable 2023-09-25 12:48:28 +02:00
Tsung-Yu Chan e51d8a9bc9 feat / compact the code
- merge the inner_rx
  - rewrite the ulsch channel compensation
2023-09-25 12:48:28 +02:00
Tsung-Yu Chan 04073b03e4 feat / add the MMSE and precoding
- avoid the finction duplication
  - add the transform predoding to the nr_rx_pusch_tp
  - add the MMSE for 2 layer which modulation greater than 16 qam
  - can support to 256 qam for 1 layer and 2 layer
2023-09-25 12:48:28 +02:00
Tsung-Yu Chan 1a42fa5326 feat / parallelize LLR by symbol 2023-09-25 12:48:27 +02:00
Robert Schmidt deb443dc2a Merge remote-tracking branch 'origin/interns_summer23' into integration_2023_w38 2023-09-24 17:42:34 +02:00
Robert Schmidt d16c4c370e Merge remote-tracking branch 'origin/int-f1-setup' into integration_2023_w38 2023-09-24 17:41:48 +02:00
32e4d66c74 Improve nr_dlsim/nr_ulsim help message and CSV file logs
- Reorder help messages
- Add possibility to log results per SNR to CSV file with `-X` or `-Z`
- Reformat files

Co-authored-by: MoadMaroufi <maaroufi.moaad321@gmail.com>
Co-authored-by: francescomani <email@francescomani.it>
Co-authored-by: Robert Schmidt <robert.schmidt@openairinterface.org>
2023-09-22 12:03:52 +02:00
Robert Schmidt 3ad4c8502a Merge remote-tracking branch 'origin/NR_UE_PBCH_fix' into integration_2023_w38 2023-09-22 08:38:41 +02:00
Robert Schmidt c930563929 Move radio configuration parameters to MAC, SIB1 not initialized!
!SIB1 is not correctly filled! This commit does not work with COTS UEs!
The next commit fixes this.

- Move radio config (e.g., minRXTXTIME, SIB1 TDA, do_SRS, etc) down to
  MAC.
- Some parameters in MAC are redundant: delete them.
- Remove call to nr_mac_config_scc() from RRC and simulators, the MAC
  initialization routine calls it implicitly
2023-09-22 08:22:15 +02:00
Robert Schmidt 5d0ae84ad2 Move MIB to MAC
The MasterInformationBlock is handled at the DU and sent to the CU in
the F1 Setup Response. Hence, move it down to the MAC. Furthermore:

- Change type because MIB_PDU_t is 4G type
- Simplify schedule_nr_mib()
2023-09-22 08:22:15 +02:00
Robert Schmidt 0f897b4007 Move ServingCellConfigDedicated to MAC
As with the ServingCellConfigCommon, the ServingCellConfigDedicated is a
radio-related structure to be handled at the DU.
2023-09-22 08:22:15 +02:00
Robert Schmidt 2b29531591 Move ServingCellConfigCommon to MAC
Note: the reestablishment is broken, and a later commit fixes it.

The ServingCellConfigCommon is an inherently radio-related
configuration. As such, it should be handled by the DU, not the CU.
Therefore, move it "down" to the MAC.
2023-09-22 08:22:15 +02:00
ajit a6baa6d6f1 Changed max ofdm symbol size to 8192 for 100MHzi USRP 2023-09-20 05:50:08 +05:30
francescomani f820d74605 fix for scrambling dci and renaming ss_type field 2023-09-19 12:51:42 +02:00
francescomani 38c5faba9b fix for PBCH decoding with cell ID != 0 2023-09-17 16:37:48 +02:00
Raphael Defosseux 0f25438316 Merge remote-tracking branch 'origin/ULSCH-TB-CRC' into integration_2023_w37 2023-09-15 10:53:12 +02:00
Raphael Defosseux cc57fea7b3 Merge remote-tracking branch 'origin/NR_UE_DL_channel_estimation_fix' into integration_2023_w37 2023-09-15 10:52:52 +02:00
Robert Schmidt f66d995df7 Merge remote-tracking branch 'origin/NR_UE_harq_improvements' into integration_2023_w37 2023-09-14 17:59:04 +02:00
Robert Schmidt 0fe4605143 Merge remote-tracking branch 'origin/develop-DL-chModel' into integration_2023_w37 2023-09-14 12:31:03 +02:00
Tsung-Yu Chan 1f2098fcce feat / work with cross-compile
can compile the target ldpc_generators and generate_T with cross-compiler
2023-09-13 17:20:08 +02:00
Tsung-Yu Chan 73bc34b278 fix / compile on ARM 2023-09-13 17:20:08 +02:00
Laurent THOMAS 5c7c51089b remove useless macro, the SIMD instruction is used in other places 2023-09-13 17:20:08 +02:00
Quency Lin cb562c2769 Remove partial 256 SIMDe dependence for ARM 2023-09-13 17:20:08 +02:00
Raymond Knopp 47e150fbb8 fixes radix-2 butterfly for NEON, dft size 512 works properly now 2023-09-13 17:20:08 +02:00
Laurent THOMAS fa73c14df6 Reintroduce unscrambling C implemantation, use SIMDE for Intel and ARM 2023-09-13 17:20:08 +02:00