Ieee80211OfdmModulator

Package: inet.physicallayer.wireless.ieee80211.bitlevel

simple module Ieee80211OfdmModulator

This is an IEEE 802.11 OFDM modulator module. The implementation is based on the 18.3.5.8 Subcarrier modulation mapping section in IEEE 802.11-2012 Std.

It has only one parameter: the subcarrier modulation, which, in compliant mode, is one of the following constellation mappings (Table 18-7.):

  • BPSK

  • QPSK

  • 16-QAM

  • 64-QAM

However, it can be used with an arbitrary OFDM compatible constellation mapping.

inet.physicallayer.wireless.ieee80211.bitlevel.Ieee80211OfdmModulatorIeee80211OfdmModulatorsimple

Inheritance diagram

Extends

Name

Type

Description

SimpleModule

simple module

Base module for all INET simple modules.

Parameters

Name

Type

Default value

Description

displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

numSubcarriers

int

52

subcarrierModulation

string

pilotSubcarrierPolarityVectorOffset

int

Properties

Name

Value

Description

class

Ieee80211OfdmModulatorModule

display

i=block/mac

Source code

// This is an IEEE 802.11 OFDM modulator module. The
// implementation is based on the 18.3.5.8 Subcarrier modulation
// mapping section in IEEE 802.11-2012 Std.
//
// It has only one parameter: the subcarrier modulation,
// which, in compliant mode, is one of the following constellation
// mappings (Table 18-7.):
// - BPSK
// - QPSK
// - 16-QAM
// - 64-QAM
//
// However, it can be used with an arbitrary OFDM compatible
// constellation mapping.
//
simple Ieee80211OfdmModulator extends SimpleModule like IModulator
{
    parameters:
        @class(Ieee80211OfdmModulatorModule);
        int numSubcarriers = default(52);
        string subcarrierModulation;
        int pilotSubcarrierPolarityVectorOffset;
        @display("i=block/mac");
}

File: src/inet/physicallayer/wireless/ieee80211/bitlevel/Ieee80211OfdmModulator.ned