adding PHY side of FAPI UL handling
This commit is contained in:
@@ -155,7 +155,7 @@ void nr_pdcch_scrambling(uint32_t *in,
|
||||
}
|
||||
}
|
||||
|
||||
uint8_t nr_generate_dci_top(NR_gNB_PDCCH pdcch_vars,
|
||||
uint8_t nr_generate_dci_top(NR_gNB_DCI_ALLOC_t dci_alloc,
|
||||
uint32_t **gold_pdcch_dmrs,
|
||||
int32_t *txdataF,
|
||||
int16_t amp,
|
||||
@@ -170,8 +170,6 @@ uint8_t nr_generate_dci_top(NR_gNB_PDCCH pdcch_vars,
|
||||
nr_cce_t cce;
|
||||
nr_reg_t reg;
|
||||
nr_reg_t reg_mapping_list[NR_MAX_PDCCH_AGG_LEVEL*NR_NB_REG_PER_CCE];
|
||||
/*First iteration: single DCI*/
|
||||
NR_gNB_DCI_ALLOC_t dci_alloc = pdcch_vars.dci_alloc[0];
|
||||
nfapi_nr_dl_config_pdcch_parameters_rel15_t pdcch_params = dci_alloc.pdcch_params;
|
||||
|
||||
/*The coreset is initialised
|
||||
|
||||
@@ -30,7 +30,7 @@ uint16_t nr_get_dci_size(nfapi_nr_dci_format_e format,
|
||||
uint16_t N_RB,
|
||||
nfapi_nr_config_request_t *config);
|
||||
|
||||
uint8_t nr_generate_dci_top(NR_gNB_PDCCH pdcch_vars,
|
||||
uint8_t nr_generate_dci_top(NR_gNB_DCI_ALLOC_t dci_alloc,
|
||||
uint32_t **gold_pdcch_dmrs,
|
||||
int32_t *txdataF,
|
||||
int16_t amp,
|
||||
|
||||
@@ -316,28 +316,34 @@ void nr_fill_ulsch(PHY_VARS_gNB *gNB,
|
||||
nfapi_nr_pusch_pdu_t *ulsch_pdu) {
|
||||
|
||||
|
||||
int ulsch_id = find_nr_dlsch(ulsch_pdu->rnti,gNB,SEARCH_EXIST);
|
||||
int ulsch_id = find_nr_ulsch(ulsch_pdu->rnti,gNB,SEARCH_EXIST);
|
||||
AssertFatal( (ulsch_id>=0) && (ulsch_id<NUMBER_OF_NR_ULSCH_MAX),
|
||||
"illegal or no ulsch_id found!!! rnti %04x ulsch_id %d\n",ulsch_pdu->rnti,ulsch_id);
|
||||
|
||||
NR_gNB_ULSCH_t *ulsch = gNB->ulsch[ulsch_id][0];
|
||||
NR_UL_gNB_HARQ_t **harq = ulsch->harq_processes;
|
||||
int harq_pid = ulsch_pdu->pusch_data.harq_process_id;
|
||||
nfapi_nr_ul_config_ulsch_pdu *rel15_ul = &harq[harq_pid]->ulsch_pdu;
|
||||
ulsch->rnti = ulsch_pdu->rnti;
|
||||
//ulsch->rnti_type;
|
||||
ulsch->harq_mask |= 1<<harq_pid;
|
||||
ulsch->harq_process_id[slot] = harq_pid;
|
||||
|
||||
nfapi_nr_ul_config_ulsch_pdu *rel15_ul = &ulsch->harq_processes[harq_pid]->ulsch_pdu;
|
||||
|
||||
LOG_I(PHY,"Initializing nFAPI for ULSCH, UE %d, harq_pid %d\n",ulsch_id,harq_pid);
|
||||
|
||||
|
||||
|
||||
//FK this is still a bad hack. We need to replace the L1 FAPI structures with the new scf ones as well.
|
||||
rel15_ul->rnti = ulsch_pdu->rnti;
|
||||
rel15_ul->ulsch_pdu_rel15.start_rb = ulsch_pdu->rb_start;
|
||||
rel15_ul->ulsch_pdu_rel15.number_rbs = ulsch_pdu->rb_size;
|
||||
rel15_ul->ulsch_pdu_rel15.start_symbol = ulsch_pdu->start_symbol_index;
|
||||
rel15_ul->ulsch_pdu_rel15.number_symbols = ulsch_pdu->nr_of_symbols;
|
||||
rel15_ul->ulsch_pdu_rel15.nb_re_dmrs = 6; //where should this come from?
|
||||
rel15_ul->ulsch_pdu_rel15.length_dmrs = 1; //where should this come from?
|
||||
rel15_ul->ulsch_pdu_rel15.Qm = ulsch_pdu->qam_mod_order;
|
||||
rel15_ul->ulsch_pdu_rel15.mcs = ulsch_pdu->mcs_index;
|
||||
rel15_ul->ulsch_pdu_rel15.rv = ulsch_pdu->pusch_data.rv_index;
|
||||
rel15_ul->ulsch_pdu_rel15.n_layers = ulsch_pdu->nrOfLayers;
|
||||
rel15_ul->ulsch_pdu_rel15.start_rb = ulsch_pdu->rb_start;
|
||||
rel15_ul->ulsch_pdu_rel15.number_rbs = ulsch_pdu->rb_size;
|
||||
rel15_ul->ulsch_pdu_rel15.start_symbol = ulsch_pdu->start_symbol_index;
|
||||
rel15_ul->ulsch_pdu_rel15.number_symbols = ulsch_pdu->nr_of_symbols;
|
||||
rel15_ul->ulsch_pdu_rel15.nb_re_dmrs = 6; //where should this come from?
|
||||
rel15_ul->ulsch_pdu_rel15.length_dmrs = 1; //where should this come from?
|
||||
rel15_ul->ulsch_pdu_rel15.Qm = ulsch_pdu->qam_mod_order;
|
||||
rel15_ul->ulsch_pdu_rel15.mcs = ulsch_pdu->mcs_index;
|
||||
rel15_ul->ulsch_pdu_rel15.rv = ulsch_pdu->pusch_data.rv_index;
|
||||
rel15_ul->ulsch_pdu_rel15.n_layers = ulsch_pdu->nrOfLayers;
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -614,6 +614,7 @@ typedef struct PHY_VARS_gNB_s {
|
||||
NR_IF_Module_t *if_inst;
|
||||
NR_UL_IND_t UL_INFO;
|
||||
pthread_mutex_t UL_INFO_mutex;
|
||||
|
||||
/// NFAPI RX ULSCH information
|
||||
nfapi_rx_indication_pdu_t rx_pdu_list[NFAPI_RX_IND_MAX_PDU];
|
||||
/// NFAPI RX ULSCH CRC information
|
||||
@@ -629,7 +630,9 @@ typedef struct PHY_VARS_gNB_s {
|
||||
/// NFAPI PRACH information
|
||||
nfapi_preamble_pdu_t preamble_list[MAX_NUM_RX_PRACH_PREAMBLES];
|
||||
|
||||
Sched_Rsp_t Sched_INFO;
|
||||
//Sched_Rsp_t Sched_INFO;
|
||||
nfapi_nr_ul_tti_request_t UL_tti_req;
|
||||
|
||||
NR_gNB_PDCCH pdcch_vars;
|
||||
NR_gNB_PBCH pbch;
|
||||
// LTE_eNB_PHICH phich_vars[2];
|
||||
|
||||
Reference in New Issue
Block a user