Incorrect PUSCH DMRS signal generation
Subject: [BUG] Incorrect PUSCH DMRS signal generation Date: Wed, 18 Nov 2015 05:55:03 +0000 From: paul_shu@keysight.com Reply-To: paul_shu@keysight.com To: openair4g-devel@lists.eurecom.fr
Hello Raymond and OAI's developers,
Here is a bug in PUSCH DMRS signal generation on OAI's soft UE which might cause the Msg3 failed to be detected by eNB when cell ID is greater than 30.
File: openair1/PHY/LTE_TRANSPORT/group_hopping.c Function: generate_nPRS Line: 123 The below code uint32_t fss_pusch = frame_parms->Nid_cell + frame_parms->pusch_config_common.ul_ReferenceSignalsPUSCH.groupAssignmentPUSCH; should be changed to uint32_t fss_pusch = (frame_parms->Nid_cell % 30 + frame_parms->pusch_config_common.ul_ReferenceSignalsPUSCH.groupAssignmentPUSCH) % 30;
FYI, TS 36.211 5.5.1.3 For PUCCH, the sequence-shift pattern fss_PUCCH is given by fss_PUCCH = NID_cell mod 30 . For PUSCH, the sequence-shift pattern fss_PUSCH is given by fss_PUSCH = (fss PUCCH + Δss) mod 30 , where Δ ss ∈ { 0 , 1 ,..., 29 } is configured by higher layers.
Kind Regards, Paul