Operator SeparationΒΆ

  1# This simulation configuration demonstrates the HermesPy concept of operator separation.
  2#
  3# Operator separation allows for the performance comparison of two communication waveforms
  4# over identical channels, hardware models and additional noises.
  5
  6!<Simulation>
  7
  8# Physical device models within the simulated scenario
  9Devices:
 10
 11   # Representation of a single (virtual) device
 12  - &device_alpha !<SimulatedDevice>
 13
 14    carrier_frequency: 865e6      # Center frequency of Rf-band emitted signal
 15    operator_separation: True     # Enable separation of operator streams at transmit
 16
 17
 18# Channel models between devices
 19Channels:
 20
 21  # Rayleigh fading between transmitter n = 0 and receiver m = 1
 22  - !<MultipathFading>
 23    devices: [*device_alpha, *device_alpha]
 24    delays: [ 0 ]           # Delay of the channel in seconds
 25    power_profile: [ 0 ]    # Channel gain in dB
 26    rice_factors: [ .inf ]
 27
 28
 29# Operators transmitting or receiving signals over the devices
 30Operators:
 31
 32  # First modem operating the device alpha
 33  - &modem_alpha !<Modem>
 34
 35    device: *device_alpha          # Device the modem is operating on
 36
 37    waveform: !<ChirpFsk>         # Configuration of the waveform emitted by this transmitter
 38
 39      chirp_bandwidth: 500e3      # Bandwidth of each dedicated chirp in Hz
 40      chirp_duration: .512e-3     # Duration each dedicated chirp in s
 41      freq_difference: 1953.125   # Frequency offset between each modulated data symbol
 42      num_data_chirps: 20         # Number of chirps generated per data frame
 43      modulation_order: 256       # Modulation order, in other words 16 bit per data chirp
 44
 45      guard_interval: 0.          # Pause between frame transmissions in seconds
 46
 47  # Second modem operating the device alpha
 48  - &modem_beta !<Modem>
 49
 50    device: *device_alpha          # Device the modem is operating on
 51
 52    # Bit encoding configuration before mapping to modulation symbols
 53    encoding: !<Encoding>
 54
 55      # Repetition encoding, repeating bit sections for redundancy
 56      - !<Repetition>
 57
 58        bit_block_size: 16        # Block size
 59        repetitions: 3            # Number of times the bits within the block get repeated
 60
 61    waveform: !<ChirpFsk>         # Configuration of the waveform emitted by this transmitter
 62
 63      chirp_bandwidth: 500e3      # Bandwidth of each dedicated chirp in Hz
 64      chirp_duration: .512e-3     # Duration each dedicated chirp in s
 65      freq_difference: 1953.125   # Frequency offset between each modulated data symbol
 66      num_data_chirps: 20         # Number of chirps generated per data frame
 67      modulation_order: 256       # Modulation order, in other words 16 bit per data chirp
 68
 69      guard_interval: 0.          # Pause between frame transmissions in seconds
 70
 71
 72# Performance indication evaluation configuration
 73Evaluators:
 74
 75  # Evaluate the bit errors of `modem_alpha` communicating over `device_alpha`
 76  - !<BitErrorEvaluator>
 77
 78    transmitting_modem: *modem_alpha
 79    receiving_modem: *modem_alpha
 80    confidence: .9
 81    tolerance: .01
 82    plot_scale: log
 83
 84  # Evaluate the bit errors of `modem_beta` communicating over `device_alpha`
 85  - !<BitErrorEvaluator>
 86
 87    transmitting_modem: *modem_beta
 88    receiving_modem: *modem_beta
 89    confidence: .9
 90    tolerance: .01
 91    plot_scale: log
 92
 93
 94# Simulation parameters
 95num_samples: 1000                  # Number of samples per simulation grid section
 96min_num_samples: 50                # Minimum number of samples per simulation grid section before premature stopping
 97noise_level: !<EBN0>               # SNR is defined as the ratio between bit energy and noise power
 98  reference: *device_alpha         # The SNR is calculated with respect to the device's output power
 99plot_results: True                 # Visualize the evaluations after the simulation has finished
100
101
102# Scenario parameters over which the Monte-Carlo simulation sweeps
103Dimensions:
104
105  noise_level: [10, 9, ..., -2] dB