Ieee80211LayeredOfdmReceiver

Package: inet.physicallayer.wireless.ieee80211.bitlevel

compound module Ieee80211LayeredOfdmReceiver

Implements an IEEE 802.11 OFDM receiver. The implementation details are based on the following standard: IEEE Std 802.11-2012 PART 11: WIRELESS LAN MAC AND PHY SPECIFICATIONS

Please check the Ieee80211LayeredOfdmTransmitter documentation first, since this receiver module is symmetric to it.

Ieee80211LayeredOfdmReceiveranalogModel: inet.physicallayer.wireless.common.contract.packetlevel.IReceiverAnalogModel (like IReceiverAnalogModel) inherited from ReceiverBase IReceiverAnalogModel: The receiver analog model describes the connecting piece between the technology-dependent part of... Source: analogModel: <default("")> like IReceiverAnalogModel if typename != "" { @display("p=100,100"); }analogModelerrorModel: inet.physicallayer.wireless.common.contract.bitlevel.ILayeredErrorModel (like ILayeredErrorModel) Source: errorModel: <default("")> like ILayeredErrorModel if typename != "" { @display("p=300,400"); }errorModeldataDecoder: inet.physicallayer.wireless.common.contract.bitlevel.IDecoder (like IDecoder) IDecoder: Interface for decoders in wireless communications. Source: dataDecoder: <default("")> like IDecoder if typename != "" { @display("p=100,100"); }dataDecodersignalDecoder: inet.physicallayer.wireless.common.contract.bitlevel.IDecoder (like IDecoder) IDecoder: Interface for decoders in wireless communications. Source: signalDecoder: <default("")> like IDecoder if typename != "" { @display("p=300,100"); }signalDecodersignalDemodulator: inet.physicallayer.wireless.common.contract.bitlevel.IDemodulator (like IDemodulator) IDemodulator: Module interface for demodulators in wireless communication systems. Source: signalDemodulator: <default("")> like IDemodulator if typename != "" { @display("p=300,200"); }signalDemodulatordataDemodulator: inet.physicallayer.wireless.common.contract.bitlevel.IDemodulator (like IDemodulator) IDemodulator: Module interface for demodulators in wireless communication systems. Source: dataDemodulator: <default("")> like IDemodulator if typename != "" { @display("p=100,200"); }dataDemodulatorpulseFilter: inet.physicallayer.wireless.common.contract.bitlevel.IPulseFilter (like IPulseFilter) IPulseFilter: Module interface for pulse filters in wireless communication systems. Source: pulseFilter: <default("")> like IPulseFilter if typename != "" { @display("p=100,300"); }pulseFilteranalogDigitalConverter: inet.physicallayer.wireless.common.contract.bitlevel.IAnalogDigitalConverter (like IAnalogDigitalConverter) IAnalogDigitalConverter: Converts analog signal representations to digital sample representations in wireless communicatio... Source: analogDigitalConverter: <default("")> like IAnalogDigitalConverter if typename != "" { @display("p=100,400"); }analogDigitalConverter

Usage diagram

Inheritance diagram

Extends

Name

Type

Description

SnirReceiverBase

compound module

Serves as a base module for SNIR receiver models.

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

ignoreInterference

bool

false

True means interfering transmissions are ignored when determining whether a reception is successful or not

signalAnalogRepresentation

string

“scalar”

snirThreshold

double

Reception is not successful if the SNIR is below this threshold (unsuccessful reception)

snirThresholdMode

string

“min”

isCompliant

bool

true

levelOfDetail

string

“symbol”

energyDetection

double

TODO @unit(W) + dBm/dBW <–> W

sensitivity

double

TODO @unit(W) + dBm/dBW <–> W

centerFrequency

double

bandwidth

double

channelSpacing

double

Properties

Name

Value

Description

class

Ieee80211LayeredOfdmReceiver

display

i=block/rx

Source code

//
// Implements an IEEE 802.11 OFDM receiver.
// The implementation details are based on the following standard:
// IEEE Std 802.11-2012 PART 11: WIRELESS LAN MAC AND PHY SPECIFICATIONS
//
// Please check the ~Ieee80211LayeredOfdmTransmitter documentation first, since
// this receiver module is symmetric to it.
//
module Ieee80211LayeredOfdmReceiver extends SnirReceiverBase like IReceiver
{
    parameters:
        bool isCompliant = default(true);
        string levelOfDetail @enum("packet", "bit","symbol","sample") = default("symbol");
        double energyDetection @unit(dBm); // TODO @unit(W) + dBm/dBW <--> W
        double sensitivity @unit(dBm); // TODO @unit(W) + dBm/dBW <--> W
        double centerFrequency @unit(Hz);
        double bandwidth @unit(Hz);
        double channelSpacing @unit(Hz);
        @class(Ieee80211LayeredOfdmReceiver);

        @display("i=block/rx");
    submodules:
        errorModel: <default("")> like ILayeredErrorModel if typename != "" {
            @display("p=300,400");
        }
        dataDecoder: <default("")> like IDecoder if typename != "" {
            @display("p=100,100");
        }
        signalDecoder: <default("")> like IDecoder if typename != "" {
            @display("p=300,100");
        }
        signalDemodulator: <default("")> like IDemodulator if typename != "" {
            @display("p=300,200");
        }
        dataDemodulator: <default("")> like IDemodulator if typename != "" {
            @display("p=100,200");
        }
        pulseFilter: <default("")> like IPulseFilter if typename != "" {
            @display("p=100,300");
        }
        analogDigitalConverter: <default("")> like IAnalogDigitalConverter if typename != "" {
            @display("p=100,400");
        }
}

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