srsue,srsenb: Configure num_ports for tmode > 1

Change-Id: I35d8ee907738845e729f58c23f377a42bb665672
This commit is contained in:
Pau Espin 2020-03-09 15:50:57 +01:00
parent b9aeb156fe
commit f796ad0061
4 changed files with 20 additions and 8 deletions

View File

@ -184,13 +184,17 @@ class srsENB(log.Origin):
assert self._num_prb
self._txmode = int(values['enb'].get('transmission_mode', None))
assert self._txmode
config.overlay(values, dict(enb={ 'num_ports': self.num_ports() }))
# We need to set some specific variables programatically here to match IP addresses:
if self._conf.get('rf_dev_type') == 'zmq':
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)
rf_dev_args = 'fail_on_disconnect=true' \
+ ',tx_port=tcp://' + self.addr() + ':2000' \
+ ',tx_port2=tcp://' + self.addr() + ':2002' \
+ ',rx_port=tcp://' + self.ue.addr() + ':2001' \
+ ',rx_port2=tcp://' + self.ue.addr() + ':2003' \
+ ',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))
@ -226,6 +230,11 @@ class srsENB(log.Origin):
def num_prb(self):
return self._num_prb
def num_ports(self):
if self._txmode == 1:
return 1
return 2
def ue_max_rate(self, downlink=True):
# The max rate for a single UE per PRB in TM1
max_phy_rate_tm1_dl = { 6 : 2.3e6,

View File

@ -209,13 +209,16 @@ class srsUE(MS):
values = dict(ue=config.get_defaults('srsue'))
config.overlay(values, self.suite_run.config())
config.overlay(values, dict(ue=self._conf))
config.overlay(values, dict(ue=dict(num_antennas = self.enb.num_ports())))
# We need to set some specific variables programatically here to match IP addresses:
if self._conf.get('rf_dev_type') == 'zmq':
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)
config.overlay(values, dict(ue=dict(rf_dev_args = 'tx_port=tcp://' + self.addr() + ':2001' \
+ ',tx_port2=tcp://' + self.addr() + ':2003' \
+ ',rx_port=tcp://' + self.enb.addr() + ':2000' \
+ ',rx_port2=tcp://' + self.enb.addr() + ':2002' \
+ ',id=ue,base_srate='+ str(base_srate)
)))
self.dbg('SRSUE CONFIG:\n' + pprint.pformat(values))

View File

@ -27,7 +27,7 @@ gtp_bind_addr = ${enb.addr}
s1c_bind_addr = ${enb.addr}
n_prb = ${enb.num_prb}
tm = ${enb.transmission_mode}
#nof_ports = 2
nof_ports = ${enb.num_ports}
#####################################################################
# eNB configuration files

View File

@ -37,7 +37,7 @@ tx_gain = 80
#rx_gain = 40
#nof_radios = 1
#nof_rx_ant = 1
nof_antennas = ${ue.num_antennas}
device_name = ${ue.rf_dev_type}