|
|
@ -138,7 +138,7 @@ void log_sched_bwp_result(srslog::basic_logger& logger,
|
|
|
|
const slot_ue_map_t& slot_ues)
|
|
|
|
const slot_ue_map_t& slot_ues)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
const bwp_slot_grid& bwp_slot = res_grid[pdcch_slot];
|
|
|
|
const bwp_slot_grid& bwp_slot = res_grid[pdcch_slot];
|
|
|
|
size_t rar_count = 0;
|
|
|
|
size_t rar_count = 0, si_count = 0;
|
|
|
|
for (const pdcch_dl_t& pdcch : bwp_slot.dl.phy.pdcch_dl) {
|
|
|
|
for (const pdcch_dl_t& pdcch : bwp_slot.dl.phy.pdcch_dl) {
|
|
|
|
fmt::memory_buffer fmtbuf;
|
|
|
|
fmt::memory_buffer fmtbuf;
|
|
|
|
if (pdcch.dci.ctx.rnti_type == srsran_rnti_type_c) {
|
|
|
|
if (pdcch.dci.ctx.rnti_type == srsran_rnti_type_c) {
|
|
|
@ -173,11 +173,26 @@ void log_sched_bwp_result(srslog::basic_logger& logger,
|
|
|
|
pdcch_slot + res_grid.cfg->pusch_ra_list[0].msg3_delay,
|
|
|
|
pdcch_slot + res_grid.cfg->pusch_ra_list[0].msg3_delay,
|
|
|
|
bwp_slot.dl.rar[rar_count].grants.size());
|
|
|
|
bwp_slot.dl.rar[rar_count].grants.size());
|
|
|
|
rar_count++;
|
|
|
|
rar_count++;
|
|
|
|
} else {
|
|
|
|
} else if (pdcch.dci.ctx.rnti_type == srsran_rnti_type_si) {
|
|
|
|
fmt::format_to(fmtbuf, "SCHED: unknown format");
|
|
|
|
if (logger.debug.enabled()) {
|
|
|
|
|
|
|
|
const pdsch_t& pdsch = bwp_slot.dl.phy.pdsch[std::distance(bwp_slot.dl.phy.pdcch_dl.data(), &pdcch)];
|
|
|
|
|
|
|
|
srsran::const_span<bool> prbs{pdsch.sch.grant.prb_idx, pdsch.sch.grant.prb_idx + pdsch.sch.grant.nof_prb};
|
|
|
|
|
|
|
|
uint32_t start_idx = std::distance(prbs.begin(), std::find(prbs.begin(), prbs.end(), true));
|
|
|
|
|
|
|
|
uint32_t end_idx = std::distance(prbs.begin(), std::find(prbs.begin() + start_idx, prbs.end(), false));
|
|
|
|
|
|
|
|
fmt::format_to(fmtbuf,
|
|
|
|
|
|
|
|
"SCHED: SI{}, cc={}, prbs={}, pdsch_slot={}",
|
|
|
|
|
|
|
|
pdcch.dci.sii == 0 ? "B" : " message",
|
|
|
|
|
|
|
|
res_grid.cfg->cc,
|
|
|
|
|
|
|
|
pdcch.dci.ctx.rnti,
|
|
|
|
|
|
|
|
srsran::interval<uint32_t>{start_idx, end_idx},
|
|
|
|
|
|
|
|
pdcch_slot);
|
|
|
|
|
|
|
|
si_count++;
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
logger.info("%s", srsran::to_c_str(fmtbuf));
|
|
|
|
if (fmtbuf.size() > 0) {
|
|
|
|
|
|
|
|
logger.info("%s", srsran::to_c_str(fmtbuf));
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
for (const pdcch_ul_t& pdcch : bwp_slot.dl.phy.pdcch_ul) {
|
|
|
|
for (const pdcch_ul_t& pdcch : bwp_slot.dl.phy.pdcch_ul) {
|
|
|
|
fmt::memory_buffer fmtbuf;
|
|
|
|
fmt::memory_buffer fmtbuf;
|
|
|
|