Add option to use global noise power for all RX channels in RFSimulator

Added new command line option to channelmod: noise_power_dBFS. This options
allows the user to configure noise power in dBFS added instead of the per-channel
value.

This makes it so noise is not accumulated per channel reaching higher than expected
values.

The dBFS unit allows easy configuration. The gNB by default uses -36 dBFS setting.
To reach 3dB SNR one should set the noise_power_dBFS value to -39.

To configure using command line use --channelmod.noise_power_dBFS -50. Using this
setting the gNB and nrUE connect without issue.
This commit is contained in:
Bartosz Podrygajlo
2025-02-19 16:05:38 +01:00
parent 82fbb6bb04
commit 2fb541a68e
6 changed files with 54 additions and 11 deletions
@@ -73,6 +73,7 @@ static telnetshell_vardef_t channelmod_vardef[] = {{"", 0, 0, NULL}};
static unsigned int max_chan;
static channel_desc_t **defined_channels;
static char *modellist_name;
static int noise_power_dBFS = INVALID_DBFS_VALUE;
void fill_channel_desc(channel_desc_t *chan_desc,
uint8_t nb_tx,
@@ -2365,6 +2366,10 @@ int load_channellist(uint8_t nb_tx, uint8_t nb_rx, double sampling_rate, uint64_
return channel_list.numelt;
} /* load_channelist */
int get_noise_power_dBFS(void) {
return noise_power_dBFS;
}
#ifdef RANDOM_CHANNEL_MAIN
#define sampling_rate 5.0
#define Td 2.0