Commit Graph
103 Commits
Author SHA1 Message Date
Laurent THOMAS 7355b55ad1 this MR replaces constants INT16_MIN by -INT16_MAX (so -32767) in places where it used for mathematical operations 2025-10-03 10:02:48 +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 fefb96a115 merge functions conj(a)*b and a*conj(b) 2025-04-25 14:47:59 +02:00
HHI f470ea5946 mod: refactor PHY multiplications 2025-04-25 14:47:59 +02:00
Laurent THOMAS f1f02ec0a1 use existing functions to retrieve (i)dft enum value 2024-10-29 18:47:15 +01:00
Raymond Knopp a7bc282302 First-level of support for new aarch64 machines
Testing on Neoverse N1 (Ampere 3GHz). Tested only on a subset of phy-simulators.

- Changes:
- use SIMDE consistently
- adaptations of LDPC decoder generator for ARMv8 performance
- SIMDe modifications of Intel CRC to allow for aarch64 build.
  optimizations for 128-bit to improve performance of LDPC encode/decode
  on aarch64 (Neoverse 1)
- added BG2 files for 128-bit ldpc encoder (aarch64)
- testing on Xeon
- testing on x86
- minor changes to build/run on x86
- change in crc.h after returning to aarch64
- removed some warning in ldpc decoder generator for x86_64
- char
- Delete irrelevant constants
- Correctly declare variables
- Define stdbool for all architectures
- Remove definition of _MM_SHUFFLE and use SIMDE_MM_SHUFFLE
- Remove commented code
- Fix CMakeLists.txt
- Include SIMDE avx2 functions in tools_defs.h
2023-09-13 17:19:20 +02:00
laurent b339460666 cleanup only 2023-04-28 16:25:24 +02:00
Robert Schmidt 6d90aaaae2 (Almost) Remove all PHY/phy_vars* and PHY/phy_extern 2023-03-06 19:47:08 +01:00
laurent b74ba0fb92 cleaning only 2023-01-19 14:52:39 +01:00
Bruno Mongazon-Cazavet fe1dc24e28 Add Intrinsics usage by SIMDE 2022-09-28 18:21:19 +02:00
laurent 4c74cc6686 Improve nr_ul_channel_estimation() 2022-09-01 16:35:57 +02:00
laurent df1cffbc7f fix bug introduced by avx2 rotate_cpx change to c16_t 2022-06-29 16:52:47 +02:00
Laurent Thomas 980bb2420b fix CI discovered bug in avx2 rotate 2022-06-27 18:35:47 +02:00
Laurent OpenCells 5ed848c76e more fixes on gcc warnings, misleading indentation and CPU mitigation when the traffic demand in 5G exeeds the available througput 2021-07-20 16:30:14 +02:00
rmagueta 6dab5f4a8d Fix segmentations fault after merge 2021-05-17 14:40:41 +01:00
Raymond Knopp d06018d1e3 Merge branch 'four_antenna_eNB' into oairu 2021-02-07 17:46:23 +01:00
Raymond Knopp 4e9afb30b0 Merge remote-tracking branch 'origin/develop' into oairu 2021-02-02 12:09:56 +01:00
Raymond Knopp f04846cf4f 2 and 4 antenna testing with ulsim functional. >=3 dB gains from 2 to 4 antennas on SCM channels 2021-01-26 13:25:07 +01:00
Haruki NAOI 2edcf2647c Fix: freq_offset_estimation overflow.
(cherry picked from commit 5e7eb7c94857f5765bb7f18afc7f4c748acb048b)
2020-11-26 17:43:06 +09:00
magounak 1698f9e20f isolation of RU (no use of RC.xxx) 2020-07-13 08:00:59 +02:00
laurent d1e8c23529 cleanup 2020-06-04 10:48:29 +02:00
laurent dfafa90037 big merge with develop 2020-04-14 18:02:45 +02:00
frtabu 4649034b26 create dft shared lib 2020-03-31 12:10:48 +02:00
laurent 8d9d80ee37 very big merge with merged develop, basic test done 2020-01-30 17:10:36 +01:00
Laurent 90b9cbb81d remove global for frame/subframe, noS1 attach+ traffic ok, UE do not compile 2019-10-18 16:35:33 +02:00
yilmazt e5a9f02af6 develop-nr merge 2019-10-07 12:04:58 +02:00
yilmazt 84af6103f8 another batch of cppcheck error corrections 2019-09-24 11:59:17 +02:00
frtabu b9b4d05e41 remove RRC_VERSION macros, simplify build-oai and CMakefile.txt accordingly, get rid of remaining compilation warnings (opt module improperly merged and patch asn1c files with tests against max 64 bits integer value) 2019-09-23 19:46:44 +02:00
yilmazt e823ae9d0b phy_simulators working again 2019-07-20 17:52:32 +02:00
Raymond Knopp ca111641d4 Merge remote-tracking branch 'origin/develop' into ru_rau_enhancement_L1_renaming
Conflicts:
	cmake_targets/build_oai
	cmake_targets/oaisim_build_oai/CMakeLists.template
	cmake_targets/oaisim_mme_build_oai/CMakeLists.template
	cmake_targets/oaisim_noS1_build_oai/CMakeLists.template
	openair1/PHY/LTE_ESTIMATION/lte_sync_time.c
	openair1/PHY/LTE_ESTIMATION/lte_ul_channel_estimation.c
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
	openair1/PHY/LTE_TRANSPORT/if4_tools.c
	openair1/PHY/LTE_TRANSPORT/prach.c
	openair1/PHY/LTE_TRANSPORT/pucch.c
	openair1/PHY/LTE_UE_TRANSPORT/dlsch_demodulation.c
	openair1/PHY/impl_defs_lte.h
	openair1/SCHED/fapi_l1.c
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair1/SIMULATION/LTE_PHY/dlsim.c
	openair2/ENB_APP/enb_config.c
	openair2/ENB_APP/enb_paramdef.h
	openair2/LAYER2/MAC/eNB_scheduler_RA.c
	openair2/LAYER2/MAC/eNB_scheduler_primitives.c
	targets/ARCH/ETHERNET/USERSPACE/LIB/eth_udp.c
	targets/ARCH/ETHERNET/USERSPACE/LIB/ethernet_lib.c
	targets/RT/USER/lte-enb.c
	targets/RT/USER/lte-ru.c
	targets/RT/USER/lte-softmodem.c
	targets/RT/USER/lte-softmodem.h
2019-04-14 20:34:03 +02:00
nepes b28b14411e modifications for LTE-M testing 2019-02-25 13:29:43 +01:00
Raymond Knopp cfea040e8a ulsim / dlsim modifications 2019-02-17 10:50:29 +01:00
Cedric Roux aea6b4b5a6 fix a lot of file mode
For whatever reason most of the files had their permission
changed from 644 to 755, which is not wanted.
2019-01-07 16:22:28 +01:00
Raymond Knopp 44a225c6b7 Merge remote-tracking branch 'origin/develop' into enhancement-ltem
Conflicts:
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
	openair1/SCHED/fapi_l1.c
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair2/COMMON/rrc_messages_types.h
	openair2/ENB_APP/enb_config.c
	openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
	openair2/LAYER2/MAC/eNB_scheduler_fairRR.c
	openair2/LAYER2/MAC/eNB_scheduler_primitives.c
	openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
	openair2/LAYER2/MAC/mac.h
	openair2/RRC/LTE/L2_interface.c
	openair2/RRC/LTE/MESSAGES/asn1_msg.c
	openair2/RRC/LTE/MESSAGES/asn1_msg.h
	openair2/RRC/LTE/rrc_eNB.c
	openair2/RRC/LTE/rrc_eNB_S1AP.c
	targets/RT/USER/lte-enb.c
2019-01-05 23:28:31 +01:00
Raymond Knoppp d8c35774aa modifications at slave RRU 2018-11-27 12:30:10 +01:00
magounak 36a92f4614 renaming eNB_proc_t -> L1_proc_t and eNB_rxtx_proc_t -> L1_rxtx_proc_t 2018-10-29 12:11:07 +01:00
Raymond Knopp d24f521a5a Merge remote-tracking branch 'origin/develop' into enhancement-ltem
Conflicts:
	openair1/PHY/INIT/lte_init.c
	openair1/PHY/LTE_ESTIMATION/lte_ul_channel_estimation.c
	openair1/PHY/LTE_TRANSPORT/dci.c
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
	openair1/PHY/LTE_TRANSPORT/dlsch_coding.c
	openair1/PHY/LTE_TRANSPORT/edci.c
	openair1/PHY/LTE_TRANSPORT/if4_tools.c
	openair1/PHY/LTE_TRANSPORT/prach.c
	openair1/PHY/LTE_TRANSPORT/print_stats.c
	openair1/PHY/LTE_TRANSPORT/pucch.c
	openair1/PHY/LTE_TRANSPORT/transport_eNB.h
	openair1/PHY/LTE_TRANSPORT/ulsch_decoding.c
	openair1/PHY/LTE_UE_TRANSPORT/transport_proto_ue.h
	openair1/PHY/impl_defs_lte.h
	openair1/SCHED/fapi_l1.c
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair2/COMMON/rrc_messages_types.h
	openair2/ENB_APP/enb_config.c
	openair2/ENB_APP/enb_paramdef.h
	openair2/LAYER2/MAC/config.c
	openair2/LAYER2/MAC/defs.h
	openair2/LAYER2/MAC/eNB_scheduler.c
	openair2/LAYER2/MAC/eNB_scheduler_RA.c
	openair2/LAYER2/MAC/eNB_scheduler_bch.c
	openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
	openair2/LAYER2/MAC/eNB_scheduler_primitives.c
	openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
	openair2/LAYER2/MAC/pre_processor.c
	openair2/LAYER2/MAC/rar_tools.c
	openair2/LAYER2/MAC/ue_procedures.c
	openair2/PHY_INTERFACE/IF_Module.c
	openair2/RRC/LITE/rrc_common.c
	openair2/RRC/LTE/L2_interface_ue.c
	openair2/RRC/LTE/MESSAGES/asn1_msg.c
	openair2/RRC/LTE/rrc_eNB.c
	targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp
	targets/RT/USER/lte-enb.c
	targets/RT/USER/lte-ru.c
2018-10-29 07:54:17 +01:00
Raymond Knopp 49d6f33335 renaming eNB_rxtx_proc_t -> L1_rxtx_proc_t 2018-10-28 20:19:39 +01:00
Cedric Roux 5131449160 bugfix: add handling of DFT 768 everywhere it's needed
In the eNB it's not really used for the moment because there
is a limitation to uplink scheduling. In
openair2/LAYER2/MAC/eNB_scheduler_ulsch.c we have:

            while (((rb_table[rb_table_index] > (N_RB_UL - 1 - first_rb[CC_id]))
                    || (rb_table[rb_table_index] > 45))

That limits uplink scheduling to at most 44 RBs. The 768 case is for
64 RBs.
2018-09-04 12:36:42 +02:00
frtabu b85cbddeec log.c simplification, fix usefull functionality which never worked, move all log code from openair2 to common 2018-07-30 20:07:22 +02:00
Raphael Defosseux f3b5f5433c Merge branch 'develop' into '322-code-cleanup-log_m-to-replace-write_output'
# Conflicts:
#   openair1/PHY/LTE_UE_TRANSPORT/srs_modulation.c
2018-07-03 15:48:19 +02:00
bruno mongazon 94611edefe fix issue #322 2018-06-28 14:15:15 +02:00
bruno mongazon b016bc229a fixed #320 issue 2018-06-25 18:23:36 +02:00
Cedric Roux 5c6ad3142d Merge remote-tracking branch 'origin/develop' into mu_with_tdd1
The monolithic eNodeB is not fully functional in FDD.

The TDD mode has not been tested.

Do not consider this commit as functional.

Conflicts:
	cmake_targets/CMakeLists.txt
	cmake_targets/build_oai
	common/utils/itti/intertask_interface.c
	openair1/PHY/INIT/lte_init.c
	openair1/PHY/LTE_ESTIMATION/lte_adjust_sync.c
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
	openair1/PHY/LTE_TRANSPORT/dlsch_scrambling.c
	openair1/PHY/LTE_TRANSPORT/transport_eNB.h
	openair1/PHY/LTE_UE_TRANSPORT/transport_proto_ue.h
	openair1/PHY/defs_eNB.h
	openair1/PHY/impl_defs_lte.h
	openair1/SCHED/fapi_l1.c
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair1/SCHED/pusch_pc.c
	openair2/COMMON/platform_types.h
	openair2/COMMON/rrc_messages_types.h
	openair2/ENB_APP/enb_config.c
	openair2/ENB_APP/enb_paramdef.h
	openair2/LAYER2/MAC/config.c
	openair2/LAYER2/MAC/eNB_scheduler.c
	openair2/LAYER2/MAC/eNB_scheduler_RA.c
	openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
	openair2/LAYER2/MAC/eNB_scheduler_primitives.c
	openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
	openair2/LAYER2/MAC/flexran_agent_scheduler_dlsch_ue.c
	openair2/LAYER2/MAC/mac.h
	openair2/LAYER2/MAC/mac_proto.h
	openair2/LAYER2/MAC/pre_processor.c
	openair2/LAYER2/RLC/rlc.c
	openair2/LAYER2/RLC/rlc_rrc.c
	openair2/RRC/LITE/rrc_common.c
	openair2/RRC/LTE/L2_interface.c
	openair2/RRC/LTE/MESSAGES/asn1_msg.c
	openair2/RRC/LTE/rrc_eNB.c
	openair2/UTIL/LOG/log.h
	targets/COMMON/openairinterface5g_limits.h
	targets/RT/USER/lte-enb.c
	targets/RT/USER/lte-ru.c
	targets/RT/USER/lte-softmodem.c
	targets/RT/USER/lte-softmodem.h
2018-06-12 16:23:36 +02:00
Raymond Knopp ea784f2b4b full IF4p5 simulation working 2018-04-29 09:35:23 -07:00
Raymond Knopp 8b1416b862 debugging of new directory structure, file renaming, and eNB/UE splitting. dlsim/ulsim functional. 2018-04-09 15:32:49 -07:00
Raymond Knopp 957cdbab48 fixes bug in ulsim for 2 antenna RX. 2018-03-07 01:26:04 +01:00
Cedric Roux 8ca5fb4ef2 integration: cleanup
- remove spaces at the end of lines
- remove useless dead code
  use: git show -p <this commit> -w
  to see it clearly
2018-02-22 15:03:09 +01:00
Raymond Knopp f7c58f27ca dlsim and ulsim functional. dlsim 1-2 antenna ports, TM1/2. ulsim 1-2 antenna ports. 2018-02-17 11:08:56 -08:00