- Ease of use of gprof and address sanitizer for debugging purposes
- Updated json files to allow for GDB, real-time debugging capabilities
- Updated logging features to minimally log only key connection milestones. This imroves scalability of multiple UEs.
- Updated logging to include time stamp for timing analysis
- Updated memory allocation procedures to correct size requirements
- Added debugging features to handle signal terminations
- nfapi.c pullarray8 fix invalid pointer math
- Overlapping destination and source memory in memcpy, so updated to memmove to check for this bug
- Advanced error checking mechanisms in critical pack and unpack functions
- Created option for CPU assignment to UE to improve scalability
- Added EPC integration to allow multiple individual UE entities to each have their USIM information parced by the executables
- Updated random value seeds to minimize probability of error in generation of random values
- Enables capability round robin scheduler if desired
- Enables capability real time scheduler if desired
- Added new standalone functions to the UE phy-layer (phy_stub_ue.c) to incorporate individual UE entities
- Updated sending and packing functions in UE (lte_ue.c) to incorporate new standalone changes
- Incorporated semaphores to control timing of incoming downlink packets
- Implemented new queuing system to handle message exchange from UE to eNB and vice versa
- Updated global value in nFAPI for size of subframe
- Updated global value to increase scalability in system
The OpenAirInterface (OAI) software is composed of the following parts:
openairinterface5g ├── ci-scripts : Meta-scripts used by the OSA CI process. Contains also configuration files used day-to-day by CI. ├── cmake_targets : Build utilities to compile (simulation, emulation and real-time platforms), and generated build files. ├── common : Some common OAI utilities, other tools can be found at openair2/UTILS. ├── doc : Contains an up-to-date feature set list and starting tutorials. ├── executables : Top-level executable source files. ├── LICENSE : License file. ├── maketags : Script to generate emacs tags. ├── nfapi : Contains the NFAPI code. A local Readme file provides more details. ├── openair1 : 3GPP LTE Rel-10/12 PHY layer / 3GPP NR Rel-15 layer. A local Readme file provides more details. │ ├── PHY │ ├── SCHED │ ├── SCHED_NBIOT │ ├── SCHED_NR │ ├── SCHED_NR_UE │ ├── SCHED_UE │ └── SIMULATION : PHY RF simulation. ├── openair2 : 3GPP LTE Rel-10 RLC/MAC/PDCP/RRC/X2AP + LTE Rel-14 M2AP implementation. Also 3GPP NR Rel-15 RLC/MAC/PDCP/RRC/X2AP. │ ├── COMMON │ ├── DOCS │ ├── ENB_APP │ ├── F1AP │ ├── GNB_APP │ ├── LAYER2/RLC/ : with the following subdirectories: UM_v9.3.0, TM_v9.3.0, and AM_v9.3.0. │ ├── LAYER2/PDCP/PDCP_v10.1.0 │ ├── M2AP │ ├── MCE_APP │ ├── NETWORK_DRIVER │ ├── NR_PHY_INTERFACE │ ├── NR_UE_PHY_INTERFACE │ ├── PHY_INTERFACE │ ├── RRC │ ├── UTIL │ └── X2AP ├── openair3 : 3GPP LTE Rel10 for S1AP, NAS GTPV1-U for both ENB and UE. │ ├── COMMON │ ├── DOCS │ ├── GTPV1-U │ ├── M3AP │ ├── MME_APP │ ├── NAS │ ├── S1AP │ ├── SCTP │ ├── SECU │ ├── TEST │ ├── UDP │ └── UTILS └── targets : Top-level wrappers for unitary simulation for PHY channels, system-level emulation (eNB-UE with and without S1), and realtime eNB and UE and RRH GW.