Ieee80211LayeredOfdmReceiver

Package: inet.physicallayer.wireless.ieee80211.bitlevel

Ieee80211LayeredOfdmReceiver

compound module

This module implements an IEEE 802.11 OFDM receiver. The implemenation 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.

errorModel : like ILayeredErrorModel

Source:
errorModel: <default("")> like ILayeredErrorModel if typename != "" {
    @display("p=300,400");
} dataDecoder : like IDecoder

Source:
dataDecoder: <default("")> like IDecoder if typename != "" {
    @display("p=100,100");
} signalDecoder : like IDecoder

Source:
signalDecoder: <default("")> like IDecoder if typename != "" {
    @display("p=300,100");
} signalDemodulator : like IDemodulator

Source:
signalDemodulator: <default("")> like IDemodulator if typename != "" {
    @display("p=300,200");
} dataDemodulator : like IDemodulator

Source:
dataDemodulator: <default("")> like IDemodulator if typename != "" {
    @display("p=100,200");
} pulseFilter : like IPulseFilter

Source:
pulseFilter: <default("")> like IPulseFilter if typename != "" {
    @display("p=100,300");
} analogDigitalConverter : like IAnalogDigitalConverter

Source:
analogDigitalConverter: <default("")> like IAnalogDigitalConverter if typename != "" {
    @display("p=100,400");
}

Usage diagram

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Extends

Name Type Description
SnirReceiverBase compound module

This module servces as a base module for SNIR receiver models.

Parameters

Name Type Default value Description
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
display i=block/rx
class Ieee80211LayeredOfdmReceiver

Source code

//
// This module implements an IEEE 802.11 OFDM receiver.
// The implemenation 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