bugfix for MIB
This commit is contained in:
@@ -226,7 +226,6 @@ int nr_generate_pbch(NR_gNB_PBCH *pbch,
|
|||||||
int16_t amp,
|
int16_t amp,
|
||||||
uint8_t ssb_start_symbol,
|
uint8_t ssb_start_symbol,
|
||||||
uint8_t n_hf,
|
uint8_t n_hf,
|
||||||
uint8_t Lmax,
|
|
||||||
int sfn,
|
int sfn,
|
||||||
nfapi_nr_config_request_scf_t *config,
|
nfapi_nr_config_request_scf_t *config,
|
||||||
NR_DL_FRAME_PARMS *frame_parms) {
|
NR_DL_FRAME_PARMS *frame_parms) {
|
||||||
@@ -244,11 +243,11 @@ int nr_generate_pbch(NR_gNB_PBCH *pbch,
|
|||||||
pbch->pbch_a=0;
|
pbch->pbch_a=0;
|
||||||
uint8_t ssb_index = frame_parms->ssb_index;
|
uint8_t ssb_index = frame_parms->ssb_index;
|
||||||
uint8_t *pbch_pdu = (uint8_t*)&ssb_pdu->ssb_pdu_rel15.bchPayload;
|
uint8_t *pbch_pdu = (uint8_t*)&ssb_pdu->ssb_pdu_rel15.bchPayload;
|
||||||
|
uint8_t Lmax = frame_parms->Lmax;
|
||||||
for (int i=0; i<NR_PBCH_PDU_BITS; i++)
|
for (int i=0; i<NR_PBCH_PDU_BITS; i++)
|
||||||
pbch->pbch_a |= ((pbch_pdu[i>>3]>>(7-(i&7)))&1)<<i;
|
pbch->pbch_a |= ((pbch_pdu[i>>3]>>(7-(i&7)))&1)<<i;
|
||||||
|
|
||||||
#ifdef DEBUG_PBCH_ENCODING
|
#ifdef DEBUG_PBCH_ENCODING
|
||||||
|
|
||||||
for (int i=0; i<3; i++)
|
for (int i=0; i<3; i++)
|
||||||
printf("pbch_pdu[%d]: 0x%02x\n", i, pbch_pdu[i]);
|
printf("pbch_pdu[%d]: 0x%02x\n", i, pbch_pdu[i]);
|
||||||
|
|
||||||
|
|||||||
@@ -92,7 +92,6 @@ int nr_generate_pbch(NR_gNB_PBCH *pbch,
|
|||||||
int16_t amp,
|
int16_t amp,
|
||||||
uint8_t ssb_start_symbol,
|
uint8_t ssb_start_symbol,
|
||||||
uint8_t n_hf,
|
uint8_t n_hf,
|
||||||
uint8_t Lmax,
|
|
||||||
int sfn,
|
int sfn,
|
||||||
nfapi_nr_config_request_scf_t *config,
|
nfapi_nr_config_request_scf_t *config,
|
||||||
NR_DL_FRAME_PARMS *frame_parms);
|
NR_DL_FRAME_PARMS *frame_parms);
|
||||||
|
|||||||
@@ -103,9 +103,9 @@ void nr_common_signal_procedures (PHY_VARS_gNB *gNB,int frame, int slot) {
|
|||||||
nr_generate_sss(gNB->d_sss, &txdataF[0][txdataF_offset], AMP, ssb_start_symbol, cfg, fp);
|
nr_generate_sss(gNB->d_sss, &txdataF[0][txdataF_offset], AMP, ssb_start_symbol, cfg, fp);
|
||||||
|
|
||||||
if (cfg->carrier_config.num_tx_ant.value <= 4)
|
if (cfg->carrier_config.num_tx_ant.value <= 4)
|
||||||
nr_generate_pbch_dmrs(gNB->nr_gold_pbch_dmrs[n_hf][ssb_index],&txdataF[0][txdataF_offset], AMP, ssb_start_symbol, cfg, fp);
|
nr_generate_pbch_dmrs(gNB->nr_gold_pbch_dmrs[n_hf][ssb_index&7],&txdataF[0][txdataF_offset], AMP, ssb_start_symbol, cfg, fp);
|
||||||
else
|
else
|
||||||
nr_generate_pbch_dmrs(gNB->nr_gold_pbch_dmrs[0][ssb_index],&txdataF[0][txdataF_offset], AMP, ssb_start_symbol, cfg, fp);
|
nr_generate_pbch_dmrs(gNB->nr_gold_pbch_dmrs[0][ssb_index&7],&txdataF[0][txdataF_offset], AMP, ssb_start_symbol, cfg, fp);
|
||||||
|
|
||||||
nr_generate_pbch(&gNB->pbch,
|
nr_generate_pbch(&gNB->pbch,
|
||||||
&gNB->ssb_pdu,
|
&gNB->ssb_pdu,
|
||||||
@@ -113,8 +113,7 @@ void nr_common_signal_procedures (PHY_VARS_gNB *gNB,int frame, int slot) {
|
|||||||
&txdataF[0][txdataF_offset],
|
&txdataF[0][txdataF_offset],
|
||||||
AMP,
|
AMP,
|
||||||
ssb_start_symbol,
|
ssb_start_symbol,
|
||||||
n_hf,cfg->carrier_config.num_tx_ant.value,
|
n_hf, frame, cfg, fp);
|
||||||
frame, cfg, fp);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user