Simple Module GenericRadio

File: NetworkInterfaces/Radio/GenericRadio.ned

C++ definition: click here

Generic radio module. The implementation is largely based on the Mobility Framework's SnrEval and Decider modules.

See also: Radio

Author: Andras Varga

Usage diagram:

The following diagram shows usage relationships between modules, networks and channels. Unresolved module (and channel) types are missing from the diagram. Click here to see the full picture.

Parameters:

Name Type Description
channelNumber numeric const

channel identifier

transmitterPower numeric const

power used for transmission of messages (in mW)

bitrate numeric const

(in bits/s)

thermalNoise numeric const

base noise level (dBm)

pathLossAlpha numeric const

used by the path loss calculation

snirThreshold numeric const

if signal-noise ratio is below this threshold, frame is considered noise (in dB)

sensitivity numeric const

received signals with power below sensitivity are ignored

headerLengthBits numeric const

length of physical layer framing (preamble, etc)

bandwidth numeric const

signal bandwidth, used for bit error calculation

modulation string

"BPSK", "16-QAM", "256-QAM" or "null"; selects bit error calculation method

Gates:

Name Direction Description
uppergateIn input

from higher layer protocol (MAC)

uppergateOut output

to decider (decider connects to higher layer protocol, i.e. the MAC)

radioIn input

to receive frames (AirFrame) on the radio channel

Source code:

simple GenericRadio
    parameters:
        channelNumber: numeric const, // channel identifier
        transmitterPower : numeric const, // power used for transmission of messages (in mW)
        bitrate: numeric const, // (in bits/s)
        thermalNoise: numeric const, // base noise level (dBm)
        pathLossAlpha: numeric const, // used by the path loss calculation
        snirThreshold: numeric const, // if signal-noise ratio is below this threshold, frame is considered noise (in dB)
        sensitivity: numeric const, // received signals with power below sensitivity are ignored
        headerLengthBits: numeric const, // length of physical layer framing (preamble, etc)
        bandwidth: numeric const, // signal bandwidth, used for bit error calculation
        modulation: string; // "BPSK", "16-QAM", "256-QAM" or "null"; selects bit error calculation method
    gates:
        in: uppergateIn;   // from higher layer protocol (MAC)
        out: uppergateOut; // to decider (decider connects to higher layer protocol, i.e. the MAC)
        in: radioIn; // to receive frames (AirFrame) on the radio channel
endsimple