OFDM Interference#

  1# In this example we simulate the interference between an OFDM signal and a
  2# single-carrier signal in an AWGN channel.
  3# 
  4# The OFDM signal has the same numerology as an LTE system with 20 MHz bandwidth,
  5# in which the first 8 sub-frames are used.
  6# However, the bits are uncoded. The carrier frequency is 3.5 GHz.
  7# 
  8# A single carrier 64-QAM interferer with 6 Mbps is also transmitting at 3.501 GHz
  9
 10!<Simulation>
 11
 12# Physical device models within the simulated scenario
 13Devices:
 14
 15  # First device
 16  - &device_alpha !<SimulatedDevice>
 17
 18    carrier_frequency: 3.5e9
 19    power: 10
 20
 21  # Second device
 22  - &device_beta !<SimulatedDevice>
 23
 24    carrier_frequency: 3.501e9
 25    power: 1
 26
 27# Operators transmitting or receiving signals over the devices
 28Operators:
 29
 30  # A single modem operating the device #0
 31  - &modem_alpha !<Modem>
 32
 33    device: *device_alpha         # Device the modem is operating on
 34
 35    # Waveform configuration
 36    waveform: !<SC-RootRaisedCosine>
 37
 38      # Symbol settings
 39      symbol_rate: 1e6            # Rate of symbol repetition in Hz
 40      modulation_order: 64        # Modulation order, in other words 8 bit per data chirp
 41      roll_off: .5                # Roll-Off factor of the pulse filter
 42
 43      # Frame settings
 44      num_preamble_symbols: 10    # Number of preamble chirps before data
 45      num_data_symbols: 90        # Number of data chirps
 46      pilot_rate: 1e6             # Rate of pilot chirp repetition in Hz
 47      guard_interval: 1e-6        # Pause between frame transmissions in seconds
 48
 49  # A single modem operating the device #1
 50  - &modem_beta !<Modem>
 51
 52    device: *device_beta         # Device the modem is operating on
 53
 54    # Spatial precoding with zero-forcing channel equalization
 55    # Precoding:
 56    #   - !<ZF-Time>
 57
 58    waveform: !<OFDM>
 59
 60      # Symbol modulation settings
 61      modulation_order: 16
 62      subcarrier_spacing: 15e3
 63      dc_suppression: False
 64      num_subcarriers: 2048
 65
 66      # OFDM symbol resources, each resource represents one symbol's subcarrier configuration
 67      resources:
 68
 69        - !<OFDM-Resource>
 70          repetitions: 200
 71          prefix_type: !<PrefixType> CYCLIC
 72          prefix_ratio: 0.078125
 73          elements:
 74            - !<FrameElement>
 75              type: !<ElementType> REFERENCE
 76              repetitions: 1
 77            - !<FrameElement>
 78              type: !<ElementType> DATA
 79              repetitions: 5
 80
 81        - !<OFDM-Resource>
 82          repetitions: 1200
 83          prefix_type: !<PrefixType> CYCLIC
 84          prefix_ratio: 0.0703125
 85          elements:
 86            - !<FrameElement>
 87              type: !<ElementType> DATA
 88              repetitions: 1
 89
 90        - !<OFDM-Resource>
 91          repetitions: 100
 92          prefix_type: !<PrefixType> CYCLIC
 93          prefix_ratio: 0.0703125
 94          elements:
 95            - !<FrameElement>
 96              type: !<ElementType> DATA
 97              repetitions: 3
 98            - !<FrameElement>
 99              type: !<ElementType> REFERENCE
100              repetitions: 1
101            - !<FrameElement>
102              type: !<ElementType> DATA
103              repetitions: 5
104            - !<FrameElement>
105              type: !<ElementType> REFERENCE
106              repetitions: 1
107            - !<FrameElement>
108              type: !<ElementType> DATA
109              repetitions: 2
110
111      # Frame configuration in time domain, i.e. the x-axis in the OFDM time-frequency grid
112      structure:
113
114        - !<Symbol>
115          num_repetitions: 16
116          pattern: [0, 1, 1, 1, 2, 1, 1]
117
118        - !<Guard>
119          num_repetitions: 1
120          duration: 2e-3
121
122
123# Performance indication evaluation configuration
124Evaluators:
125
126  # Evaluate the bit errors of `modem_alpha` communicating over `device_alpha`
127  - !<BitErrorEvaluator>
128
129    transmitting_modem: *modem_alpha
130    receiving_modem: *modem_alpha
131    confidence: .9
132    tolerance: .01
133    plot_scale: log
134
135  # Evaluate the bit errors of `modem_beta` communicating over `device_beta`
136  - !<BitErrorEvaluator>
137
138    transmitting_modem: *modem_beta
139    receiving_modem: *modem_beta
140    confidence: .9
141    tolerance: .01
142    plot_scale: log
143
144
145# Simulation parameters
146num_samples: 10                    # Number of samples per simulation grid section
147min_num_samples: 5                 # Minimum number of samples per simulation grid section before premature stopping
148snr_type: EBN0                     # SNR is defined as the ratio between bit energy and noise power
149plot_results: True                 # Visualize the evaluations after the simulation has finished
150
151
152# Scenario parameters over which the Monte-Carlo simulation sweeps
153Dimensions:
154
155  snr: [36, 32, ..., 0] dB