| rf_driver: { |
| name: "${trx.rf_dev_type}", |
| args: "${trx.rf_dev_args}", |
| sync: "${trx.rf_dev_sync}", |
| % if trx.get('rx_ant', None) != None: |
| rx_antenna: "${trx.rx_ant}", |
| % endif |
| |
| % if trx.rf_dev_type == 'zmq': |
| dl_sample_bits: 16, |
| ul_sample_bits: 16, |
| % endif |
| }, |
| |
| tx_gain: ${trx.tx_gain}, /* TX gain (in dB) B2x0: 0 to 89.8 dB */ |
| rx_gain: ${trx.rx_gain}, /* RX gain (in dB) B2x0: 0 to 73 dB */ |
| |
| // Only SDR and ZMQ devices require dedicated rf_port parameters |
| % if trx.rf_dev_type != 'uhd': |
| |
| rf_ports: [ |
| % if trx.rf_dev_type == 'sdr': |
| // NSA specific configuration |
| { |
| sample_rate: 23.04, |
| }, |
| { |
| sample_rate: 61.44, |
| dl_freq: 3502.8, // Moves NR DL LO frequency -5.76 MHz |
| ul_freq: 3502.8, // Moves NR UL LO frequency -5.76 MHz |
| } |
| % else: |
| // default case for UHD and ZMQ usage |
| <% |
| # determine ports and sample rate from either eNB or UE object |
| num_ports = 1 |
| try: |
| obj_sample_rate = enb.sample_rate |
| num_ports = int(enb.num_cells) + int(enb.num_nr_cells) |
| except AttributeError: |
| obj_sample_rate = ue.sample_rate |
| %> |
| |
| %for port in range(num_ports): |
| { |
| sample_rate: ${obj_sample_rate}, |
| }, |
| %endfor |
| |
| % endif |
| ], |
| |
| % endif |
| |
| // only the B210 requires a sample offset |
| % if "b200" in trx.rf_dev_args: |
| tx_time_offset: -150, |
| % else: |
| tx_time_offset: 0, |
| % endif |