From d34ecaaa5ea5802d432afde5658916d8c340d2b6 Mon Sep 17 00:00:00 2001 From: Andre Puschmann Date: Thu, 3 Jan 2019 20:33:53 +0100 Subject: [PATCH] adding RI to DL metrics --- srsue/hdr/phy/phch_common.h | 1 + srsue/hdr/phy/phy_metrics.h | 1 + srsue/src/phy/phch_common.cc | 1 + srsue/src/phy/phch_worker.cc | 8 ++++++++ 4 files changed, 11 insertions(+) diff --git a/srsue/hdr/phy/phch_common.h b/srsue/hdr/phy/phch_common.h index 5db0dd2cb..60923adfb 100644 --- a/srsue/hdr/phy/phch_common.h +++ b/srsue/hdr/phy/phch_common.h @@ -99,6 +99,7 @@ typedef struct { float rx_gain_offset; float avg_snr_db_cqi; float avg_snr_db_sync; + float avg_ri; float avg_noise; bool pcell_meas_enabled; diff --git a/srsue/hdr/phy/phy_metrics.h b/srsue/hdr/phy/phy_metrics.h index eb2f56004..0b3aa9da6 100644 --- a/srsue/hdr/phy/phy_metrics.h +++ b/srsue/hdr/phy/phy_metrics.h @@ -44,6 +44,7 @@ struct dl_metrics_t float rsrp; float rsrq; float rssi; + float ri; float turbo_iters; float mcs; float pathloss; diff --git a/srsue/src/phy/phch_common.cc b/srsue/src/phy/phch_common.cc index 0cc3c6e93..49ad139cc 100644 --- a/srsue/src/phy/phch_common.cc +++ b/srsue/src/phy/phch_common.cc @@ -359,6 +359,7 @@ void phch_common::reset() { avg_rsrp = 0; avg_rsrp_dbm = 0; avg_rsrq_db = 0; + avg_ri = 0; pcell_report_period = 20; diff --git a/srsue/src/phy/phch_worker.cc b/srsue/src/phy/phch_worker.cc index 0c68ae3a5..9d02d3267 100644 --- a/srsue/src/phy/phch_worker.cc +++ b/srsue/src/phy/phch_worker.cc @@ -1665,6 +1665,13 @@ void phch_worker::update_measurements() } } + // Average RI + if (!phy->avg_ri) { + phy->avg_ri = SRSLTE_VEC_EMA(phy->last_ri, phy->avg_ri, 0.1); + } else { + phy->avg_ri = phy->last_ri; + } + phy->avg_snr_db_cqi = 10*log10(phy->avg_rsrp/phy->avg_noise); // Store metrics @@ -1674,6 +1681,7 @@ void phch_worker::update_measurements() dl_metrics.rssi = phy->avg_rssi_dbm; dl_metrics.pathloss = phy->pathloss; dl_metrics.sinr = phy->avg_snr_db_cqi; + dl_metrics.ri = phy->avg_ri; phy->set_dl_metrics(dl_metrics); }