split refsig UE parts from gNB parts
This commit is contained in:
@@ -36,7 +36,8 @@
|
|||||||
#include "PHY/CODING/nrPolar_tools/nr_polar_pbch_defs.h"
|
#include "PHY/CODING/nrPolar_tools/nr_polar_pbch_defs.h"
|
||||||
#include "PHY/INIT/phy_init.h"
|
#include "PHY/INIT/phy_init.h"
|
||||||
#include "PHY/NR_REFSIG/pss_nr.h"
|
#include "PHY/NR_REFSIG/pss_nr.h"
|
||||||
#include "openair1/PHY/NR_REFSIG/ul_ref_seq_nr.h"
|
#include "PHY/NR_REFSIG/ul_ref_seq_nr.h"
|
||||||
|
#include "PHY/NR_REFSIG/refsig_defs_ue.h"
|
||||||
|
|
||||||
//uint8_t dmrs1_tab_ue[8] = {0,2,3,4,6,8,9,10};
|
//uint8_t dmrs1_tab_ue[8] = {0,2,3,4,6,8,9,10};
|
||||||
|
|
||||||
|
|||||||
@@ -101,29 +101,3 @@ void nr_init_pdsch_dmrs(PHY_VARS_gNB* gNB, uint32_t Nid)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void nr_init_pusch_dmrs(PHY_VARS_NR_UE* ue, uint16_t *N_n_scid, uint8_t n_scid)
|
|
||||||
{
|
|
||||||
|
|
||||||
uint32_t x1, x2, n;
|
|
||||||
uint8_t reset, slot, symb, q;
|
|
||||||
NR_DL_FRAME_PARMS *fp = &ue->frame_parms;
|
|
||||||
uint32_t ****pusch_dmrs = ue->nr_gold_pusch_dmrs;
|
|
||||||
|
|
||||||
for (slot=0; slot<fp->slots_per_frame; slot++) {
|
|
||||||
|
|
||||||
for (symb=0; symb<fp->symbols_per_slot; symb++) {
|
|
||||||
|
|
||||||
reset = 1;
|
|
||||||
x2 = ((1<<17) * (fp->symbols_per_slot*slot+symb+1) * ((N_n_scid[n_scid]<<1)+1) +((N_n_scid[n_scid]<<1)+n_scid));
|
|
||||||
|
|
||||||
for (n=0; n<NR_MAX_PUSCH_DMRS_INIT_LENGTH_DWORD; n++) {
|
|
||||||
pusch_dmrs[slot][symb][0][n] = lte_gold_generic(&x1, &x2, reset);
|
|
||||||
reset = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (q = 1; q < NR_MAX_NB_CODEWORDS; q++)
|
|
||||||
memcpy(pusch_dmrs[slot][symb][q],pusch_dmrs[slot][symb][0],sizeof(uint32_t)*NR_MAX_PUSCH_DMRS_INIT_LENGTH_DWORD);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -160,3 +160,29 @@ void nr_gold_pdsch(PHY_VARS_NR_UE* ue,unsigned short lbar,unsigned short *n_idDM
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void nr_init_pusch_dmrs(PHY_VARS_NR_UE* ue, uint16_t *N_n_scid, uint8_t n_scid)
|
||||||
|
{
|
||||||
|
|
||||||
|
uint32_t x1, x2, n;
|
||||||
|
uint8_t reset, slot, symb, q;
|
||||||
|
NR_DL_FRAME_PARMS *fp = &ue->frame_parms;
|
||||||
|
uint32_t ****pusch_dmrs = ue->nr_gold_pusch_dmrs;
|
||||||
|
|
||||||
|
for (slot=0; slot<fp->slots_per_frame; slot++) {
|
||||||
|
|
||||||
|
for (symb=0; symb<fp->symbols_per_slot; symb++) {
|
||||||
|
|
||||||
|
reset = 1;
|
||||||
|
x2 = ((1<<17) * (fp->symbols_per_slot*slot+symb+1) * ((N_n_scid[n_scid]<<1)+1) +((N_n_scid[n_scid]<<1)+n_scid));
|
||||||
|
|
||||||
|
for (n=0; n<NR_MAX_PUSCH_DMRS_INIT_LENGTH_DWORD; n++) {
|
||||||
|
pusch_dmrs[slot][symb][0][n] = lte_gold_generic(&x1, &x2, reset);
|
||||||
|
reset = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (q = 1; q < NR_MAX_NB_CODEWORDS; q++)
|
||||||
|
memcpy(pusch_dmrs[slot][symb][q],pusch_dmrs[slot][symb][0],sizeof(uint32_t)*NR_MAX_PUSCH_DMRS_INIT_LENGTH_DWORD);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -25,7 +25,6 @@
|
|||||||
#define __NR_REFSIG__H__
|
#define __NR_REFSIG__H__
|
||||||
|
|
||||||
#include "PHY/defs_gNB.h"
|
#include "PHY/defs_gNB.h"
|
||||||
#include "PHY/defs_nr_UE.h"
|
|
||||||
#include "PHY/LTE_REFSIG/lte_refsig.h"
|
#include "PHY/LTE_REFSIG/lte_refsig.h"
|
||||||
|
|
||||||
|
|
||||||
@@ -39,6 +38,5 @@ void nr_init_pbch_dmrs(PHY_VARS_gNB* gNB);
|
|||||||
*/
|
*/
|
||||||
void nr_init_pdcch_dmrs(PHY_VARS_gNB* gNB, uint32_t Nid);
|
void nr_init_pdcch_dmrs(PHY_VARS_gNB* gNB, uint32_t Nid);
|
||||||
void nr_init_pdsch_dmrs(PHY_VARS_gNB* gNB, uint32_t Nid);
|
void nr_init_pdsch_dmrs(PHY_VARS_gNB* gNB, uint32_t Nid);
|
||||||
void nr_init_pusch_dmrs(PHY_VARS_NR_UE* ue, uint16_t *N_n_scid, uint8_t n_scid);
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -23,7 +23,9 @@
|
|||||||
/* Author R. Knopp / EURECOM / OpenAirInterface.org */
|
/* Author R. Knopp / EURECOM / OpenAirInterface.org */
|
||||||
#ifndef __NR_REFSIG_DEFS__H__
|
#ifndef __NR_REFSIG_DEFS__H__
|
||||||
#define __NR_REFSIG_DEFS__H__
|
#define __NR_REFSIG_DEFS__H__
|
||||||
|
|
||||||
#include "PHY/defs_nr_UE.h"
|
#include "PHY/defs_nr_UE.h"
|
||||||
|
#include "PHY/LTE_REFSIG/lte_refsig.h"
|
||||||
|
|
||||||
|
|
||||||
/*!\brief This function generates the NR Gold sequence (38-211, Sec 5.2.1) for the PBCH DMRS.
|
/*!\brief This function generates the NR Gold sequence (38-211, Sec 5.2.1) for the PBCH DMRS.
|
||||||
@@ -61,5 +63,6 @@ void nr_gold_pdsch(PHY_VARS_NR_UE* ue,
|
|||||||
unsigned short *n_idDMRS,
|
unsigned short *n_idDMRS,
|
||||||
unsigned short length_dmrs);
|
unsigned short length_dmrs);
|
||||||
|
|
||||||
|
void nr_init_pusch_dmrs(PHY_VARS_NR_UE* ue, uint16_t *N_n_scid, uint8_t n_scid);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user