SRSUE: expose correct synch error parameter

This commit is contained in:
Xavier Arteaga 2020-01-28 09:59:48 +01:00 committed by Xavier Arteaga
parent c0b611dd0d
commit c080cb3395
4 changed files with 10 additions and 1 deletions

View File

@ -495,6 +495,7 @@ typedef struct {
float snr_ema_coeff = 0.1f;
std::string snr_estim_alg = "refs";
bool agc_enable = true;
bool correct_sync_error = false;
bool cfo_is_doppler = false;
bool cfo_integer_enabled = false;
float cfo_correct_tol_hz = 1.0f;

View File

@ -255,6 +255,11 @@ static int parse_args(all_args_t* args, int argc, char* argv[])
bpo::value<uint32_t>(&args->phy.intra_freq_meas_period_ms)->default_value(200),
"Period of intra-frequency neighbour cell measurement in ms. Maximum as per 3GPP is 200 ms.")
("phy.correct_sync_error",
bpo::value<bool>(&args->phy.correct_sync_error)->default_value(false),
"Channel estimator measures and pre-compensates time synchronization error. Increases CPU usage, improves PDSCH "
"decoding in high SFO and high speed UE scenarios.")
("phy.cfo_is_doppler",
bpo::value<bool>(&args->phy.cfo_is_doppler)->default_value(false),
"Assume detected CFO is doppler and correct the UL in the same direction. If disabled, the CFO is assumed"

View File

@ -104,7 +104,7 @@ void phy_common::set_ue_dl_cfg(srslte_ue_dl_cfg_t* ue_dl_cfg)
}
chest_cfg->rsrp_neighbour = false;
chest_cfg->sync_error_enable = false;
chest_cfg->sync_error_enable = args->correct_sync_error;
chest_cfg->interpolate_subframe = args->interpolate_subframe_enabled;
chest_cfg->cfo_estimate_enable = args->cfo_ref_mask != 0;
chest_cfg->cfo_estimate_sf_mask = args->cfo_ref_mask;

View File

@ -281,6 +281,8 @@ enable = false
# equalizer_mode: Selects equalizer mode. Valid modes are: "mmse", "zf" or any
# non-negative real number to indicate a regularized zf coefficient.
# Default is MMSE.
# correct_sync_error: Channel estimator measures and pre-compensates time synchronization error. Increases CPU usage,
# improves PDSCH decoding in high SFO and high speed UE scenarios.
# sfo_ema: EMA coefficient to average sample offsets used to compute SFO
# sfo_correct_period: Period in ms to correct sample time to adjust for SFO
# sss_algorithm: Selects the SSS estimation algorithm. Can choose between
@ -322,6 +324,7 @@ enable = false
#pdsch_max_its = 8 # These are half iterations
#nof_phy_threads = 3
#equalizer_mode = mmse
#correct_sync_error = false
#sfo_ema = 0.1
#sfo_correct_period = 10
#sss_algorithm = full