remove FR1 in preprocessor name
This commit is contained in:
+4
-9
@@ -220,14 +220,10 @@ Calls nr_schedule_ulsch(): It is divided into the "preprocessor" and the
|
|||||||
"postprocessor": the first makes the scheduling decisions, the second fills
|
"postprocessor": the first makes the scheduling decisions, the second fills
|
||||||
nFAPI structures to indicate to the PHY what it is supposed to do. To signal
|
nFAPI structures to indicate to the PHY what it is supposed to do. To signal
|
||||||
which users have how many resources, the preprocessor populates the
|
which users have how many resources, the preprocessor populates the
|
||||||
NR_sched_pusch_t (for values changing every TTI, e.g., frequency domain
|
NR_sched_pusch_t structures. Furthermore, the preprocessor is an
|
||||||
allocation) and NR_sched_pusch_save_t (for values changing less frequently, at
|
|
||||||
least in FR1 [to my understanding], e.g., DMRS fields when the time domain
|
|
||||||
allocation stays between TTIs) structures. Furthermore, the preprocessor is an
|
|
||||||
exchangeable module that schedules differently based on a particular
|
exchangeable module that schedules differently based on a particular
|
||||||
use-case/deployment type, e.g., one user for phytest [in
|
use-case/deployment type, e.g., one user for phytest in
|
||||||
nr_ul_preprocessor_phytest()], multiple users in FR1
|
[nr_ul_preprocessor_phytest()], multiple users in [nr_ulsch_preprocessor()]:
|
||||||
[nr_fr1_ulsch_preprocessor()], or maybe FR2 [does not exist yet]:
|
|
||||||
* calls preprocessor via pre_processor_ul(): the preprocessor is responsible
|
* calls preprocessor via pre_processor_ul(): the preprocessor is responsible
|
||||||
for allocating CCEs (using allocate_nr_CCEs()) and deciding on resource
|
for allocating CCEs (using allocate_nr_CCEs()) and deciding on resource
|
||||||
allocation for the UEs including TB size. Note that we do not yet have
|
allocation for the UEs including TB size. Note that we do not yet have
|
||||||
@@ -258,8 +254,7 @@ NR_UE_sched_ctrl_t structure of affected users. In particular, the field rbSize
|
|||||||
decides whether a user is to be allocated. Furthermore, the preprocessor is an
|
decides whether a user is to be allocated. Furthermore, the preprocessor is an
|
||||||
exchangeable module that schedules differently based on a particular
|
exchangeable module that schedules differently based on a particular
|
||||||
use-case/deployment type, e.g., one user for phytest [in
|
use-case/deployment type, e.g., one user for phytest [in
|
||||||
nr_preprocessor_phytest()], multiple users in FR1
|
nr_preprocessor_phytest()], multiple users [nr_dlsch_preprocessor()].
|
||||||
[nr_fr1_dlsch_preprocessor()], or maybe FR2 [does not exist yet].
|
|
||||||
* calls preprocessor via pre_processor_dl(): the preprocessor is responsible
|
* calls preprocessor via pre_processor_dl(): the preprocessor is responsible
|
||||||
for allocating CCEs and PUCCH (using allocate_nr_CCEs() and
|
for allocating CCEs and PUCCH (using allocate_nr_CCEs() and
|
||||||
nr_acknack_scheduling()) and deciding on the frequency/time domain
|
nr_acknack_scheduling()) and deciding on the frequency/time domain
|
||||||
|
|||||||
@@ -861,7 +861,7 @@ static void pf_dl(module_id_t module_id,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void nr_fr1_dlsch_preprocessor(module_id_t module_id, frame_t frame, sub_frame_t slot)
|
static void nr_dlsch_preprocessor(module_id_t module_id, frame_t frame, sub_frame_t slot)
|
||||||
{
|
{
|
||||||
NR_UEs_t *UE_info = &RC.nrmac[module_id]->UE_info;
|
NR_UEs_t *UE_info = &RC.nrmac[module_id]->UE_info;
|
||||||
|
|
||||||
@@ -889,7 +889,7 @@ static void nr_fr1_dlsch_preprocessor(module_id_t module_id, frame_t frame, sub_
|
|||||||
bw); // we set the whole BW as max number
|
bw); // we set the whole BW as max number
|
||||||
}
|
}
|
||||||
|
|
||||||
nr_pp_impl_dl nr_init_fr1_dlsch_preprocessor(int CC_id) {
|
nr_pp_impl_dl nr_init_dlsch_preprocessor(int CC_id) {
|
||||||
/* during initialization: no mutex needed */
|
/* during initialization: no mutex needed */
|
||||||
/* in the PF algorithm, we have to use the TBsize to compute the coefficient.
|
/* in the PF algorithm, we have to use the TBsize to compute the coefficient.
|
||||||
* This would include the number of DMRS symbols, which in turn depends on
|
* This would include the number of DMRS symbols, which in turn depends on
|
||||||
@@ -914,7 +914,7 @@ nr_pp_impl_dl nr_init_fr1_dlsch_preprocessor(int CC_id) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nr_fr1_dlsch_preprocessor;
|
return nr_dlsch_preprocessor;
|
||||||
}
|
}
|
||||||
|
|
||||||
void nr_schedule_ue_spec(module_id_t module_id,
|
void nr_schedule_ue_spec(module_id_t module_id,
|
||||||
|
|||||||
@@ -2147,7 +2147,7 @@ static void pf_ul(module_id_t module_id,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool nr_fr1_ulsch_preprocessor(module_id_t module_id, frame_t frame, sub_frame_t slot)
|
static bool nr_ulsch_preprocessor(module_id_t module_id, frame_t frame, sub_frame_t slot)
|
||||||
{
|
{
|
||||||
gNB_MAC_INST *nr_mac = RC.nrmac[module_id];
|
gNB_MAC_INST *nr_mac = RC.nrmac[module_id];
|
||||||
// no UEs
|
// no UEs
|
||||||
@@ -2180,7 +2180,7 @@ static bool nr_fr1_ulsch_preprocessor(module_id_t module_id, frame_t frame, sub_
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
nr_pp_impl_ul nr_init_fr1_ulsch_preprocessor(int CC_id)
|
nr_pp_impl_ul nr_init_ulsch_preprocessor(int CC_id)
|
||||||
{
|
{
|
||||||
/* during initialization: no mutex needed */
|
/* during initialization: no mutex needed */
|
||||||
/* in the PF algorithm, we have to use the TBsize to compute the coefficient.
|
/* in the PF algorithm, we have to use the TBsize to compute the coefficient.
|
||||||
@@ -2208,7 +2208,7 @@ nr_pp_impl_ul nr_init_fr1_ulsch_preprocessor(int CC_id)
|
|||||||
>> 3;
|
>> 3;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return nr_fr1_ulsch_preprocessor;
|
return nr_ulsch_preprocessor;
|
||||||
}
|
}
|
||||||
|
|
||||||
void nr_schedule_ulsch(module_id_t module_id, frame_t frame, sub_frame_t slot, nfapi_nr_ul_dci_request_t *ul_dci_req)
|
void nr_schedule_ulsch(module_id_t module_id, frame_t frame, sub_frame_t slot, nfapi_nr_ul_dci_request_t *ul_dci_req)
|
||||||
|
|||||||
@@ -82,8 +82,8 @@ void nr_schedule_ue_spec(module_id_t module_id,
|
|||||||
nfapi_nr_dl_tti_request_t *DL_req,
|
nfapi_nr_dl_tti_request_t *DL_req,
|
||||||
nfapi_nr_tx_data_request_t *TX_req);
|
nfapi_nr_tx_data_request_t *TX_req);
|
||||||
|
|
||||||
/* \brief default FR1 DL preprocessor init routine, returns preprocessor to call */
|
/* \brief default DL preprocessor init routine, returns preprocessor to call */
|
||||||
nr_pp_impl_dl nr_init_fr1_dlsch_preprocessor(int CC_id);
|
nr_pp_impl_dl nr_init_dlsch_preprocessor(int CC_id);
|
||||||
|
|
||||||
void schedule_nr_sib1(module_id_t module_idP,
|
void schedule_nr_sib1(module_id_t module_idP,
|
||||||
frame_t frameP,
|
frame_t frameP,
|
||||||
@@ -108,8 +108,8 @@ void schedule_nr_mib(module_id_t module_idP, frame_t frameP, sub_frame_t slotP,
|
|||||||
* messages, statistics, HARQ handling, ... */
|
* messages, statistics, HARQ handling, ... */
|
||||||
void nr_schedule_ulsch(module_id_t module_id, frame_t frame, sub_frame_t slot, nfapi_nr_ul_dci_request_t *ul_dci_req);
|
void nr_schedule_ulsch(module_id_t module_id, frame_t frame, sub_frame_t slot, nfapi_nr_ul_dci_request_t *ul_dci_req);
|
||||||
|
|
||||||
/* \brief default FR1 UL preprocessor init routine, returns preprocessor to call */
|
/* \brief default UL preprocessor init routine, returns preprocessor to call */
|
||||||
nr_pp_impl_ul nr_init_fr1_ulsch_preprocessor(int CC_id);
|
nr_pp_impl_ul nr_init_ulsch_preprocessor(int CC_id);
|
||||||
|
|
||||||
/////// Random Access MAC-PHY interface functions and primitives ///////
|
/////// Random Access MAC-PHY interface functions and primitives ///////
|
||||||
|
|
||||||
|
|||||||
@@ -294,8 +294,8 @@ void mac_top_init_gNB(ngran_node_t node_type,
|
|||||||
RC.nrmac[i]->pre_processor_dl = nr_preprocessor_phytest;
|
RC.nrmac[i]->pre_processor_dl = nr_preprocessor_phytest;
|
||||||
RC.nrmac[i]->pre_processor_ul = nr_ul_preprocessor_phytest;
|
RC.nrmac[i]->pre_processor_ul = nr_ul_preprocessor_phytest;
|
||||||
} else {
|
} else {
|
||||||
RC.nrmac[i]->pre_processor_dl = nr_init_fr1_dlsch_preprocessor(0);
|
RC.nrmac[i]->pre_processor_dl = nr_init_dlsch_preprocessor(0);
|
||||||
RC.nrmac[i]->pre_processor_ul = nr_init_fr1_ulsch_preprocessor(0);
|
RC.nrmac[i]->pre_processor_ul = nr_init_ulsch_preprocessor(0);
|
||||||
}
|
}
|
||||||
if (!IS_SOFTMODEM_NOSTATS_BIT)
|
if (!IS_SOFTMODEM_NOSTATS_BIT)
|
||||||
threadCreate(&RC.nrmac[i]->stats_thread, nrmac_stats_thread, (void*)RC.nrmac[i], "MAC_STATS", -1, sched_get_priority_min(SCHED_OAI)+1 );
|
threadCreate(&RC.nrmac[i]->stats_thread, nrmac_stats_thread, (void*)RC.nrmac[i], "MAC_STATS", -1, sched_get_priority_min(SCHED_OAI)+1 );
|
||||||
|
|||||||
Reference in New Issue
Block a user