Simple Module BasePhyLayer

Package: org.mixim.base.phyLayer
File: base/phyLayer/BasePhyLayer.ned

C++ definition

Basic physical layer module. See the class "BasePhyLayer" documentation.

BasePhyLayer

Usage diagram:

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram. Click here to see the full picture.

Inheritance diagram:

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram. Click here to see the full picture.

Known subclasses:

PhyLayer (simple module)

Physical layer module which knows how to initialize the Deciders and AnalogueModels from the modules directory. See the classes documentation for details.

PhyLayerUWBIR (simple module)

A physical layer that models an Ultra Wideband Impulse Radio wireless communication system.

SamplePhyLayer (simple module) (no description)

Parameters:

Name Type Default value Description
coreDebug bool

debug switch for core framework

recordStats bool false

enable/disable tracking of statistics (eg. cOutvectors)

headerLength int 0

defines the length of the phy header (/preamble)

usePropagationDelay bool

Should transmission delay be simulated?

thermalNoise double

the strength of the thermal noise [dBm]

useThermalNoise bool

should thermal noise be considered?

analogueModels xml

Specification of the analogue models to use and their parameters

decider xml

Specification of the decider to use and its parameters

sensitivity double

The sensitivity of the physical layer [dBm]

maxTXPower double

The maximum transimission power of the physical layer [mW]

timeRXToTX double 0

switchTimes [s]:

timeRXToSleep double 0
timeTXToRX double 0
timeTXToSleep double 0
timeSleepToRX double 0
timeSleepToTX double 0
initialRadioState int 0

state the radio is initially in

radioMinAtt double 1.0

radios gain factor (attenuation) while receiving

radioMaxAtt double 0.0

radios gain factor (attenuation) while not receiving

nbRadioChannels int 1

Number of available radio channels. Defaults to single channel radio.

initialRadioChannel int 0

Initial radio channel.

Gates:

Name Direction Size Description
upperGateIn input

from the MAC layer

upperGateOut output

to the MAC layer

upperControlIn input

control from the MAC layer

upperControlOut output

control to the MAC layer

radioIn input

for sendDirect from other physical layers

Source code:

// Basic physical layer module.
// See the class "BasePhyLayer" documentation.
simple BasePhyLayer
{
    parameters:
        bool coreDebug; //debug switch for core framework

        bool recordStats = default(false); //enable/disable tracking of statistics (eg. cOutvectors)
        int headerLength @unit(bit) = default(0); //defines the length of the phy header (/preamble)

        bool usePropagationDelay;		//Should transmission delay be simulated?
        double thermalNoise @unit(dBm);	//the strength of the thermal noise [dBm]
        bool useThermalNoise;			//should thermal noise be considered?

        xml analogueModels; 			//Specification of the analogue models to use and their parameters
        xml decider;					//Specification of the decider to use and its parameters

        double sensitivity @unit(dBm);	//The sensitivity of the physical layer [dBm]
        double maxTXPower @unit(mW);	//The maximum transimission power of the physical layer [mW]

        //switchTimes [s]:
        double timeRXToTX @unit(s) = default(0);
        double timeRXToSleep @unit(s) = default(0);

        double timeTXToRX @unit(s) = default(0);
        double timeTXToSleep @unit(s) = default(0);

        double timeSleepToRX @unit(s) = default(0);
        double timeSleepToTX @unit(s) = default(0);

        int initialRadioState = default(0); //state the radio is initially in

        double radioMinAtt = default(1.0); //radios gain factor (attenuation) while receiving
        double radioMaxAtt = default(0.0); //radios gain factor (attenuation) while not receiving

        int nbRadioChannels = default(1);  // Number of available radio channels. Defaults to single channel radio.
        int initialRadioChannel = default(0);  // Initial radio channel.

    gates:
        input upperGateIn; 	// from the MAC layer
        output upperGateOut; 	// to the MAC layer

        input upperControlIn; 	// control from the MAC layer        
        output upperControlOut; 	// control to the MAC layer

        input radioIn; // for sendDirect from other physical layers

}