Basic physical layer module. See the class "BasePhyLayer" documentation.
The following diagram shows usage relationships between types. Unresolved types are missing from the diagram. Click here to see the full picture.
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram. Click here to see the full picture.
| 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) |
| 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. |
| 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 |
// 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 }