|
|
@ -80,7 +80,6 @@ private:
|
|
|
|
srsenb::rrc_nr_dummy rrc_obj;
|
|
|
|
srsenb::rrc_nr_dummy rrc_obj;
|
|
|
|
srsenb::rlc_dummy rlc_obj;
|
|
|
|
srsenb::rlc_dummy rlc_obj;
|
|
|
|
std::unique_ptr<srsenb::mac_nr> mac;
|
|
|
|
std::unique_ptr<srsenb::mac_nr> mac;
|
|
|
|
srsran::slot_point pdsch_slot, pusch_slot;
|
|
|
|
|
|
|
|
srslog::basic_logger& sched_logger;
|
|
|
|
srslog::basic_logger& sched_logger;
|
|
|
|
bool autofill_pdsch_bsr = false;
|
|
|
|
bool autofill_pdsch_bsr = false;
|
|
|
|
|
|
|
|
|
|
|
@ -441,11 +440,6 @@ public:
|
|
|
|
{
|
|
|
|
{
|
|
|
|
logger.set_context(slot_cfg.idx);
|
|
|
|
logger.set_context(slot_cfg.idx);
|
|
|
|
sched_logger.set_context(slot_cfg.idx);
|
|
|
|
sched_logger.set_context(slot_cfg.idx);
|
|
|
|
if (not pdsch_slot.valid()) {
|
|
|
|
|
|
|
|
pdsch_slot = srsran::slot_point{NUMEROLOGY_IDX, slot_cfg.idx};
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
pdsch_slot++;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (not use_dummy_sched) {
|
|
|
|
if (not use_dummy_sched) {
|
|
|
|
if (autofill_pdsch_bsr) {
|
|
|
|
if (autofill_pdsch_bsr) {
|
|
|
@ -514,11 +508,6 @@ public:
|
|
|
|
{
|
|
|
|
{
|
|
|
|
logger.set_context(slot_cfg.idx);
|
|
|
|
logger.set_context(slot_cfg.idx);
|
|
|
|
sched_logger.set_context(slot_cfg.idx);
|
|
|
|
sched_logger.set_context(slot_cfg.idx);
|
|
|
|
if (not pusch_slot.valid()) {
|
|
|
|
|
|
|
|
pusch_slot = srsran::slot_point{NUMEROLOGY_IDX, slot_cfg.idx};
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
pusch_slot++;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (not use_dummy_sched) {
|
|
|
|
if (not use_dummy_sched) {
|
|
|
|
int ret = mac->get_ul_sched(slot_cfg, ul_sched);
|
|
|
|
int ret = mac->get_ul_sched(slot_cfg, ul_sched);
|
|
|
@ -601,6 +590,7 @@ public:
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if (not use_dummy_sched) {
|
|
|
|
if (not use_dummy_sched) {
|
|
|
|
mac->pucch_info(slot_cfg, pucch_info);
|
|
|
|
mac->pucch_info(slot_cfg, pucch_info);
|
|
|
|
|
|
|
|
return SRSRAN_SUCCESS;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Handle UCI data
|
|
|
|
// Handle UCI data
|
|
|
@ -615,6 +605,7 @@ public:
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Handle PHY metrics
|
|
|
|
// Handle PHY metrics
|
|
|
|
|
|
|
|
std::unique_lock<std::mutex> lock(metrics_mutex);
|
|
|
|
metrics.pucch.epre_db_avg = SRSRAN_VEC_CMA(pucch_info.csi.epre_dB, metrics.pucch.epre_db_avg, metrics.pucch.count);
|
|
|
|
metrics.pucch.epre_db_avg = SRSRAN_VEC_CMA(pucch_info.csi.epre_dB, metrics.pucch.epre_db_avg, metrics.pucch.count);
|
|
|
|
metrics.pucch.epre_db_min = SRSRAN_MIN(metrics.pucch.epre_db_min, pucch_info.csi.epre_dB);
|
|
|
|
metrics.pucch.epre_db_min = SRSRAN_MIN(metrics.pucch.epre_db_min, pucch_info.csi.epre_dB);
|
|
|
|
metrics.pucch.epre_db_max = SRSRAN_MAX(metrics.pucch.epre_db_max, pucch_info.csi.epre_dB);
|
|
|
|
metrics.pucch.epre_db_max = SRSRAN_MAX(metrics.pucch.epre_db_max, pucch_info.csi.epre_dB);
|
|
|
|