Commit Graph
213 Commits
Author SHA1 Message Date
Thomas Schlichter 4cac02e014 Merge remote-tracking branch 'eurecom/develop' into fhg-fdd-custom-if 2020-10-28 14:08:23 +01:00
cig c961e81ce9 Broken down get_band into two functions to get duplex offset and frame type
- the band is coming from the SI, therefore a function to get the band is not
  necessary
- this solves also the limitations of the get_band algorithm with the NR bands
  overlapping in the NR operating bands table (e.g. band 78 and band 48)
2020-10-27 10:43:24 +01:00
cig 60d81f231a Configuration changes to support FDD
- adapted the get_band function: the algorithm is now taking into account
  also the UL frequency in order to fetch the proper band (this was failing
  before as some NR bands have the same DL band, e.g. band 65 and 66)
- added new bands to the NR table as per TS 38.101 V16.4.0 (2020)
- made the from_nrarfcn function compatible with UL FDD (this function,
  used for both DL and UL  was previously working with TDD only as it
  did not compute properly the frequency for the UL FDD, throwing asserts)
- introduced common functions to get the NR table idx and the duplex mode,
  removing repeated code in the process
- removed the unused function to get the uldl offset
- improved some logging
- other minor fixes to the relevant code
2020-10-27 10:41:59 +01:00
cig 609844a379 Small code cleanup gNB
- removed long-time commented out and unused code
- fixed logging
2020-10-27 10:39:43 +01:00
Francesco Mani 76abeaf30e Merge remote-tracking branch 'origin/develop' into NR_CSI_reporting 2020-10-22 09:26:51 +02:00
Florian Kaltenberger 18ae5acc98 Merge remote-tracking branch 'origin/develop' into NR_MAC_SSB_RO_GlobalEdge 2020-10-13 21:47:21 +02:00
Francesco Mani d0bcde029a Merge remote-tracking branch 'origin/develop' into NR_CSI_reporting 2020-10-12 17:08:04 +02:00
Francesco Mani a53f195bb4 Merge remote-tracking branch 'origin/develop' into NR_CSI_reporting 2020-09-29 17:04:03 +02:00
Florian Kaltenberger a06a2ef700 moving find_SSB_and_RO_available to MAC 2020-09-22 22:48:50 +02:00
Florian Kaltenberger 79bf2b3fb0 Merge remote-tracking branch 'origin/develop' into NR_MAC_SSB_RO_GlobalEdge 2020-09-22 15:26:57 +02:00
Thomas Schlichter 8e5ec076ae Merge remote-tracking branch 'ptrs_ul_phase_compensation'
Conflicts:
	openair1/PHY/INIT/nr_init.c
	openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c
	openair1/SIMULATION/NR_PHY/ulsim.c
2020-09-10 16:52:42 +02:00
Thomas Schlichter 9e52db7538 Merge remote-tracking branch 'develop'
Conflicts:
	openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_coding.c
	openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c
	openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
	openair1/SIMULATION/NR_PHY/dlsim.c
	openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.c
2020-09-08 17:42:52 +02:00
Thomas Schlichter 73f5851690 Merge remote-tracking branch 'develop'
Conflicts:
	openair1/PHY/NR_TRANSPORT/nr_ulsch_demodulation.c
	openair1/PHY/NR_TRANSPORT/pucch_rx.c
	openair1/SIMULATION/NR_PHY/ulsim.c
2020-09-08 12:01:37 +02:00
Parminder Singh 92fc259592 Merge remote-tracking branch 'origin/develop' into fhg_shp_phase_noise_est 2020-09-01 12:55:50 +02:00
Francesco Mani 6a801ab562 Merge branch 'NR_UL_scheduling' into NR_CSI_reporting 2020-08-28 16:19:19 +02:00
Parminder Singh ec0aea2374 Removed separate LLR calculation for PTRS
- New Data Structure to store PTRS RE's is removed
- LLR's are calculated at the end symbol for whole slot
2020-08-28 12:14:13 +02:00
Thomas Schlichter a14dd04e1b Fix memory allocation of gNB channel estimation arrays 2020-08-28 10:03:38 +02:00
Parminder Singh b288eafd1e Common Phase error estimation and compensation in uplink.
FEATURE STATEMENT:
- Introduce linear phase error noise model in Uplink at UE
- Perform common phase error (CPE) estimation and compensation at gNB

SOLUTION:
- A linear phase shift model is introduced in simulation.
- PTRS symbols are used to perform estimation of CPE from DMRS compensated signal
- The estimated values are interpolated in time domain and signal is compensated for the CPE.
- PTRS processing is done in Frequency Domain for each symbol in a slot and
  LLR's are calculated for each symbol accordingly.

IMPLEMENTATION:
* sim.h/channle_sim.c
- Linear Phase Noise Generation model definition.
* nr_ul_channel_estimation.c/nr_ul_estimation.h
- CPE estimation from PTRS and DMRS compensated signal.
* nr_dmrs_rx.c/nr_refsig.h
- Regenerate PTRS symbols at gNB.
* nr_ulsch_demodulation.c
- Removed old PTRS processing code and move to a common PTRS processing function
* defs_gNB.h/init.c
- New PTRS variables definition and initialization
* nr_ulsch_ue.c
- Corrected PTRS parameter to get new PTRS symbols for each OFDM symbol

TESTING
* ulsim.c
- Added Phase noise, Enable PTRS signal and verified the output.

VERIFICATION
- The LLR are rotated back with estimated CPE and no error is observed in scrambling/decoding
2020-08-27 11:55:06 +02:00
Francesco Mani 28b280a657 Merge remote-tracking branch 'origin/develop' into NR_UL_scheduling 2020-08-26 13:49:30 +02:00
Francesco Mani d219341905 to make simulators compile 2020-08-25 19:02:13 +02:00
Raymond Knopp 2124343889 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-08-25 01:50:43 +02:00
Raymond Knopp cc0ff7422e implementation of missing symbol-based rotation for NR modulation/demodulation (Section 5.3 38.211). Tested with unitary simulators (ulsim/dlsim).
To be tested with gNB testbench and rfsimlator
2020-08-25 01:48:55 +02:00
Sakthivel Velumani 403956d6c2 avoiding race condition for PDSCH tx 2020-08-19 14:52:16 +02:00
Raymond Knopp 68fd55b21e added PDCCH lists to L1 processing to remove race condition between FAPI and L1 threads 2020-08-19 10:01:29 +02:00
Sakthivel Velumani 42ba1047ac changed pusch debug trace 2020-08-12 14:03:44 +02:00
Francesco Mani d986d8bf2c csi-rs resource mapping (to be debugged and tested) 2020-08-12 12:24:02 +02:00
Francesco Mani 76f360c112 generation of csi-rs sequence 2020-08-12 12:09:40 +02:00
Sakthivel Velumani 82df0e51b9 updated tables and 64qam mod 2020-08-10 15:19:53 +02:00
kn.raju 991e5ad49a Scheduling and handling of SSB-RO 2020-07-30 17:40:17 +05:30
Francesco Mani 2b976aa711 Merge branch 'NR_RRC_PRACH_procedures' into NR_RRC_harq_hacks 2020-06-12 19:14:25 +02:00
Thomas Schlichter ce105df4e7 Merge branch 'develop' into NR_RRC_PRACH_procedures
Conflicts:
	openair1/PHY/NR_TRANSPORT/nr_transport.h
	openair1/PHY/NR_TRANSPORT/nr_transport_common_proto.h
	openair1/PHY/NR_TRANSPORT/nr_transport_proto_common.h
	openair1/SCHED_NR/phy_procedures_nr_gNB.c
	openair1/SIMULATION/NR_PHY/prachsim.c
	openair2/GNB_APP/RRC_nr_paramsvalues.h
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_phytest.c
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
	openair2/LAYER2/NR_MAC_gNB/mac_proto.h
	openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
2020-05-20 19:26:16 +02:00
Francesco Mani d268c320ca Merge branch 'develop' into NR_RRC_harq_hacks 2020-05-15 16:26:33 +02:00
Francesco Mani 014e045ba6 bugfix in dmrs offset for pusch 2020-05-07 09:44:07 +02:00
Raymond Knopp 2f9bf0d84c added file reading for ulsim 2020-05-04 08:19:48 +02:00
Raymond Knopp 7caf3d9cd9 Merge remote-tracking branch 'origin/develop' into nr_pucch2
Conflicts:
	cmake_targets/autotests/test_case_list.xml
	executables/nr-gnb.c
	openair1/PHY/INIT/nr_init.c
	openair1/PHY/TOOLS/tools_defs.h
	openair1/PHY/defs_gNB.h
	openair1/SCHED_NR/phy_procedures_nr_gNB.c
2020-04-30 09:48:13 +02:00
Francesco Mani 80571bb81e fapi functions for pucch 2020-04-22 09:54:56 +02:00
Raymond Knopp 93ba34b027 testing for pucch format 2, 3-11 bits. Configuration works for 2 PRBs, 1 symbol only. Assertion in gNB RX otherwise. 2020-04-21 23:44:06 +02:00
cig 8dd88bcb0e Deleted duplicated transport common proto header file 2020-04-14 14:28:01 +02:00
cig 3e70405b58 Cleanup transport_proto header 2020-04-14 14:28:00 +02:00
Francesco Mani 3dc9ad0567 Merge branch 'develop' into NR_RRC_PRACH_procedures 2020-04-14 14:17:34 +02:00
frtabu 0518ced81f dft/idft in shared lib 2020-04-02 12:11:21 +02:00
cig eb7f3193aa Enabled compute_nr_prach_seq to be used at both gNB and UE side:
- now the function gets more input arguments but can be used from both UE and gNB
- this change was needed because the prach fapi of UE differs from the gNB one
2020-03-26 18:27:13 +01:00
Francesco Mani d320fa13b3 Merge branch 'develop' into NR_RRC_PRACH_procedures 2020-03-25 18:45:00 +01:00
Francesco Mani 6d058d306a SCF FAPI structures for PUSCH at gNB 2020-03-19 18:07:12 +01:00
Raymond Knopp 93b4211d02 merge conflict removal 2020-03-15 19:16:30 +01:00
Raymond Knopp 7491e23dbd Merge remote-tracking branch 'origin/develop' into NR_RRCConfiguration 2020-03-15 18:13:11 +01:00
Gabriele Perrone 73ac675869 Merge remote-tracking branch 'origin/extend_sharedlibusage' into develop_integration_w11 2020-03-12 18:32:39 +01:00
frtabu 8928cfe57d move ldpc coder/decoder into a shared lib dymically loaded. Also fix a record player bug 2020-03-11 17:32:13 +01:00
Francesco Mani 98714f3138 using SCF fapi structure for PUSCH and initialization of pusch dmrs sequences at nr_init 2020-03-06 18:05:12 +01:00
Thomas Schlichter 8fbdfa39ec disable PUSCH PTRS for now
As adding PTRS leads to shortening of the coded data, redudandency is removed and the performance decreases on a pure AWGN channel.
So PTRS should only be enabled if phase noise is present.
2020-03-05 10:27:35 +01:00