This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
pespin gerrit-no-reply at lists.osmocom.orgpespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/17312 ) Change subject: srsue,srsenb: Fix zmq base_rate calculation and share value ...................................................................... srsue,srsenb: Fix zmq base_rate calculation and share value Change-Id: I3e7817e822fb4d1f8bc9ef798162edf95a74d442 --- M src/osmo_gsm_tester/srs_enb.py M src/osmo_gsm_tester/srs_ue.py 2 files changed, 52 insertions(+), 14 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/12/17312/1 diff --git a/src/osmo_gsm_tester/srs_enb.py b/src/osmo_gsm_tester/srs_enb.py index 85180e4..1cfd212 100644 --- a/src/osmo_gsm_tester/srs_enb.py +++ b/src/osmo_gsm_tester/srs_enb.py @@ -25,6 +25,25 @@ def rf_type_valid(rf_type_str): return rf_type_str in ('zmq', 'UHD', 'soapy', 'bladeRF') +#reference: srsLTE.git srslte_symbol_sz() +def num_prb2symbol_sz(num_prb): + if num_prb <= 6: + return 128 + if num_prb <= 15: + return 256 + if num_prb <= 25: + return 384 + if num_prb <= 50: + return 768 + if num_prb <= 75: + return 1024 + if num_prb <= 110: + return 1536 + raise log.Error('invalid num_prb %r', num_prb) + +def num_prb2base_srate(num_prb): + return num_prb2symbol_sz(num_prb) * 15 * 1000 + class srsENB(log.Origin): REMOTE_DIR = '/osmo-gsm-tester-srsenb' @@ -56,6 +75,7 @@ self.remote_config_rr_file = None self.remote_config_drb_file = None self.remote_log_file = None + self._num_prb = 0 self.suite_run = suite_run self.remote_user = conf.get('remote_user', None) if not rf_type_valid(conf.get('rf_dev_type', None)): @@ -161,15 +181,12 @@ # We need to set some specific variables programatically here to match IP addresses: if self._conf.get('rf_dev_type') == 'zmq': - num_prb = values['enb'].get('num_prb', None) - assert num_prb - if num_prb == 75: - base_srate=15.36e6 - else: - base_srate=23.04e6 + self._num_prb = int(values['enb'].get('num_prb', None)) + assert self._num_prb + base_srate = num_prb2base_srate(self._num_prb) rf_dev_args = 'fail_on_disconnect=true,tx_port=tcp://' + self.addr() \ - + ':2000,rx_port=tcp://'+ self.ue.addr() \ - + ':2001,id=enb,base_srate='+ str(base_srate) + + ':2000,rx_port=tcp://' + self.ue.addr() \ + + ':2001,id=enb,base_srate=' + str(base_srate) config.overlay(values, dict(enb=dict(rf_dev_args=rf_dev_args))) self.dbg('srsENB ' + filename + ':\n' + pprint.pformat(values)) @@ -202,4 +219,7 @@ def addr(self): return self._addr + def num_prb(self): + return self._num_prb + # vim: expandtab tabstop=4 shiftwidth=4 diff --git a/src/osmo_gsm_tester/srs_ue.py b/src/osmo_gsm_tester/srs_ue.py index 8c6f73a..cbd8a68 100644 --- a/src/osmo_gsm_tester/srs_ue.py +++ b/src/osmo_gsm_tester/srs_ue.py @@ -27,6 +27,25 @@ def rf_type_valid(rf_type_str): return rf_type_str in ('zmq', 'UHD', 'soapy', 'bladeRF') +#reference: srsLTE.git srslte_symbol_sz() +def num_prb2symbol_sz(num_prb): + if num_prb <= 6: + return 128 + if num_prb <= 15: + return 256 + if num_prb <= 25: + return 384 + if num_prb <= 50: + return 768 + if num_prb <= 75: + return 1024 + if num_prb <= 110: + return 1536 + raise log.Error('invalid num_prb %r', num_prb) + +def num_prb2base_srate(num_prb): + return num_prb2symbol_sz(num_prb) * 15 * 1000 + class srsUE(MS): REMOTE_DIR = '/osmo-gsm-tester-srsue' @@ -54,11 +73,6 @@ self.remote_pcap_file = None self.remote_metrics_file = None self.suite_run = suite_run - self.nof_prb=50 - if self.nof_prb == 75: - self.base_srate=15.36e6 - else: - self.base_srate=23.04e6 self.remote_user = conf.get('remote_user', None) if not rf_type_valid(conf.get('rf_dev_type', None)): raise log.Error('Invalid rf_dev_type=%s' % conf.get('rf_dev_type', None)) @@ -198,7 +212,11 @@ # We need to set some specific variables programatically here to match IP addresses: if self._conf.get('rf_dev_type') == 'zmq': - config.overlay(values, dict(ue=dict(rf_dev_args='tx_port=tcp://'+ self.addr() +':2001,rx_port=tcp://'+ self.enb.addr() +':2000,id=ue,base_srate='+ str(self.base_srate)))) + base_srate = num_prb2base_srate(self.enb.num_prb()) + config.overlay(values, dict(ue=dict(rf_dev_args='tx_port=tcp://' + self.addr() + +':2001,rx_port=tcp://' + self.enb.addr() + +':2000,id=ue,base_srate='+ str(base_srate) + ))) self.dbg('SRSUE CONFIG:\n' + pprint.pformat(values)) -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/17312 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I3e7817e822fb4d1f8bc9ef798162edf95a74d442 Gerrit-Change-Number: 17312 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin at sysmocom.de> Gerrit-MessageType: newchange -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200302/a2377482/attachment.htm>