Commit 42171809 authored by Raymond Knopp's avatar Raymond Knopp

testing with monolithic / IF4p5, resolved errors

parent 865e5363
...@@ -208,7 +208,7 @@ void pdcch_scrambling(LTE_DL_FRAME_PARMS *frame_parms, ...@@ -208,7 +208,7 @@ void pdcch_scrambling(LTE_DL_FRAME_PARMS *frame_parms,
int i; int i;
uint8_t reset; uint8_t reset;
uint32_t x1, x2, s=0; uint32_t x1, x2, s=0;
//LOG_D(PHY, "%s(fp, subframe:%d, e, length:%d)\n", __FUNCTION__, subframe, length); LOG_D(PHY, "%s(fp, subframe:%d, e, length:%d)\n", __FUNCTION__, subframe, length);
reset = 1; reset = 1;
// x1 is set in lte_gold_generic // x1 is set in lte_gold_generic
x2 = (subframe<<9) + frame_parms->Nid_cell; //this is c_init in 36.211 Sec 6.8.2 x2 = (subframe<<9) + frame_parms->Nid_cell; //this is c_init in 36.211 Sec 6.8.2
......
...@@ -238,31 +238,32 @@ uint16_t get_nquad(uint8_t num_pdcch_symbols,LTE_DL_FRAME_PARMS *frame_parms,uin ...@@ -238,31 +238,32 @@ uint16_t get_nquad(uint8_t num_pdcch_symbols,LTE_DL_FRAME_PARMS *frame_parms,uin
Ngroup_PHICH<<=1; Ngroup_PHICH<<=1;
} }
AssertFatal(num_pdcch_symbols > 0 && num_pdcch_symbols<4,"illegal num_pdcch_symbols %d\n",num_pdcch_symbols);
Ngroup_PHICH*=mi; Ngroup_PHICH*=mi;
if ((num_pdcch_symbols>0) && (num_pdcch_symbols<4)) switch (frame_parms->N_RB_DL) {
switch (frame_parms->N_RB_DL) { case 6:
case 6: Nreg=12+(num_pdcch_symbols-1)*18;
Nreg=12+(num_pdcch_symbols-1)*18; break;
break;
case 25: case 25:
Nreg=50+(num_pdcch_symbols-1)*75; Nreg=50+(num_pdcch_symbols-1)*75;
break; break;
case 50: case 50:
Nreg=100+(num_pdcch_symbols-1)*150; Nreg=100+(num_pdcch_symbols-1)*150;
break; break;
case 100: case 100:
Nreg=200+(num_pdcch_symbols-1)*300; Nreg=200+(num_pdcch_symbols-1)*300;
break; break;
default: default:
return(0); AssertFatal(1==0,"Unsupported or illegal N_RB_DL %d\n",frame_parms->N_RB_DL);
} return(0);
}
// printf("Nreg %d (%d)\n",Nreg,Nreg - 4 - (3*Ngroup_PHICH)); //printf("Nreg %d (%d)\n",Nreg,Nreg - 4 - (3*Ngroup_PHICH));
return(Nreg - 4 - (3*Ngroup_PHICH)); return(Nreg - 4 - (3*Ngroup_PHICH));
} }
......
...@@ -783,7 +783,7 @@ void schedule_response(Sched_Rsp_t *Sched_INFO) { ...@@ -783,7 +783,7 @@ void schedule_response(Sched_Rsp_t *Sched_INFO) {
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0)) #if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
eNB->mpdcch_vars[subframe&1].num_dci = 0; eNB->mpdcch_vars[subframe&1].num_dci = 0;
#endif #endif
LOG_D(PHY,"NFAPI: Sched_INFO:SFN/SF:%04d%d DL_req:SFN/SF:%04d%d:dl_pdu:%d tx_req:SFN/SF:%04d%d:pdus:%d\n", LOG_D(PHY,"NFAPI: Sched_INFO:SFN/SF:%04d%d DL_req:SFN/SF:%04d%d:pdcch_syms:%d dl_pdu:%d tx_req:SFN/SF:%04d%d:pdus:%d\n",
frame,subframe, frame,subframe,
NFAPI_SFNSF2SFN(DL_req->sfn_sf),NFAPI_SFNSF2SF(DL_req->sfn_sf),number_dl_pdu, NFAPI_SFNSF2SFN(DL_req->sfn_sf),NFAPI_SFNSF2SF(DL_req->sfn_sf),number_dl_pdu,
NFAPI_SFNSF2SFN(TX_req->sfn_sf),NFAPI_SFNSF2SF(TX_req->sfn_sf),TX_req->tx_request_body.number_of_pdus NFAPI_SFNSF2SFN(TX_req->sfn_sf),NFAPI_SFNSF2SF(TX_req->sfn_sf),TX_req->tx_request_body.number_of_pdus
......
...@@ -1007,6 +1007,7 @@ eNB_dlsch_ulsch_scheduler(module_id_t module_idP, ...@@ -1007,6 +1007,7 @@ eNB_dlsch_ulsch_scheduler(module_id_t module_idP,
allocate_CCEs(module_idP, CC_id, frameP, subframeP, 2); allocate_CCEs(module_idP, CC_id, frameP, subframeP, 2);
} }
} }
LOG_D(MAC,"After CCE Allocation : num_pdcch_symbols %d\n",eNB->DL_req[0].dl_config_request_body.number_pdcch_ofdm_symbols);
if (flexran_agent_get_mac_xface(module_idP) && subframeP == 9) { if (flexran_agent_get_mac_xface(module_idP) && subframeP == 9) {
flexran_agent_slice_update(module_idP); flexran_agent_slice_update(module_idP);
......
...@@ -1399,7 +1399,6 @@ dlsch_scheduler_pre_processor_reset(module_id_t module_idP, ...@@ -1399,7 +1399,6 @@ dlsch_scheduler_pre_processor_reset(module_id_t module_idP,
// //
for (CC_id = 0; CC_id < RC.nb_mac_CC[module_idP]; CC_id++) { for (CC_id = 0; CC_id < RC.nb_mac_CC[module_idP]; CC_id++) {
LOG_D(MAC, "Running preprocessor for UE %d (%x)\n", UE_id,(int)(UE_RNTI(module_idP, UE_id)));
// initialize harq_pid and round // initialize harq_pid and round
cc = &RC.mac[module_idP]->common_channels[CC_id]; cc = &RC.mac[module_idP]->common_channels[CC_id];
N_RBG[CC_id] = to_rbg(cc->mib->message.dl_Bandwidth); N_RBG[CC_id] = to_rbg(cc->mib->message.dl_Bandwidth);
...@@ -1422,7 +1421,7 @@ dlsch_scheduler_pre_processor_reset(module_id_t module_idP, ...@@ -1422,7 +1421,7 @@ dlsch_scheduler_pre_processor_reset(module_id_t module_idP,
if (!ue_dl_slice_membership(module_idP, UE_id, slice_idx)) if (!ue_dl_slice_membership(module_idP, UE_id, slice_idx))
continue; continue;
LOG_D(MAC, "Running preprocessor for UE %d (%x)\n", UE_id, rnti); LOG_D(MAC, "Running preprocessor reset for UE %d (%x)\n", UE_id, rnti);
// initialize harq_pid and round // initialize harq_pid and round
if (ue_sched_ctl->ta_timer) if (ue_sched_ctl->ta_timer)
......
...@@ -573,7 +573,7 @@ void UL_indication(UL_IND_t *UL_info) { ...@@ -573,7 +573,7 @@ void UL_indication(UL_IND_t *UL_info) {
int CC_id = UL_info->CC_id; int CC_id = UL_info->CC_id;
Sched_Rsp_t *sched_info = &Sched_INFO[module_id][CC_id]; Sched_Rsp_t *sched_info = &Sched_INFO[module_id][CC_id];
IF_Module_t *ifi = if_inst[module_id]; IF_Module_t *ifi = if_inst[module_id];
eNB_MAC_INST *mac = (NFAPI_MODE != NFAPI_MODE_PNF)? &RC.mac[module_id] : NULL; eNB_MAC_INST *mac = (NFAPI_MODE != NFAPI_MODE_PNF)? RC.mac[module_id] : NULL;
LOG_D(PHY,"SFN/SF:%d%d module_id:%d CC_id:%d UL_info[rx_ind:%d harqs:%d crcs:%d cqis:%d preambles:%d sr_ind:%d]\n", LOG_D(PHY,"SFN/SF:%d%d module_id:%d CC_id:%d UL_info[rx_ind:%d harqs:%d crcs:%d cqis:%d preambles:%d sr_ind:%d]\n",
UL_info->frame,UL_info->subframe, UL_info->frame,UL_info->subframe,
module_id,CC_id, module_id,CC_id,
......
...@@ -672,6 +672,9 @@ int main( int argc, char **argv ) { ...@@ -672,6 +672,9 @@ int main( int argc, char **argv ) {
printf("Runtime table\n"); printf("Runtime table\n");
fill_modeled_runtime_table(runtime_phy_rx,runtime_phy_tx); fill_modeled_runtime_table(runtime_phy_rx,runtime_phy_tx);
// initially set nfapi mode to MONOLITHIC
nfapi_setmode(NFAPI_MONOLITHIC);
/* Read configuration */ /* Read configuration */
if (RC.nb_inst > 0) { if (RC.nb_inst > 0) {
read_config_and_init(); read_config_and_init();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment