PhyEnbD2D

Package: simu5g.stack.d2d.phy

simple module PhyEnbD2D

Extends the PHY functionalities on the eNodeB side to support device-to-device (D2D) communications. Specifically, it enables the computation of Channel Status Information (CSI) related to the D2D link between two UEs, which still needs to be stored at the eNodeB for scheduling purposes.

simu5g.stack.d2d.phy.PhyEnbD2DPhyEnbD2Dsimple

Inheritance diagram

Extends

Name

Type

Description

PhyEnb

simple module

Extends the PhyBase module by providing the specific PHY functions on the eNodeB side. It is responsible for checking if a frame received on the air interface originates from a User Equipment (UE) connected to the eNB itself, and it provides the functions necessary to compute the Channel Status Information (CSI) for the UEs connected to it.

Parameters

Name

Type

Default value

Description

isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb on their PHY submodule)

macNodeId

int

MacNodeId of the stack leg this PHY belongs to (set by the NIC)

ueTxPower

double

26dBm

eNodeBTxPower

double

46dBm

microTxPower

double

30dBm

txDirection

string

“OMNI”

txAngle

double

0deg

binderModule

string

“binder”

channelModelModule

string

“^.channelModel[0]”

Set to “^.nrChannelModel[0]” on an NR leg, see NrNicUe

enableHandover

bool

false

Marks this eNB as a handover target: its beacons are used by UEs for handover feasibility assessment. Requires enableBeacons=true (the default when handover is on); the module errors out at initialization if beacons are disabled while handover is enabled.

enableBeacons

bool

enableHandover

Enables broadcasting periodic beacons (at cellInfo.beaconInterval). Beacons are the measurement signal UEs use both for handover feasibility assessment and for radio link monitoring (RLF detection), decoupled from enableHandover so radio link monitoring can run without handover. Defaults to enableHandover (beacons flow exactly when handover is enabled). cellInfo.beaconInterval must be positive: a zero/negative interval is an error – switch beacons off with enableBeacons=false.

targetBler

double

0.001

d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

enableD2DCqiReporting

bool

true

Properties

Name

Value

Description

class

PhyEnbD2D

display

i=block/wrxtx

Gates

Name

Direction

Size

Description

upperGateIn

input

From upper layer

upperGateOut

output

To upper layer

radioIn

input

Gate to receive message via sendDirect

Source code

//
// Extends the PHY functionalities on the eNodeB side to support device-to-device (D2D)
// communications. Specifically, it enables the computation of Channel Status Information (CSI) related
// to the D2D link between two UEs, which still needs to be stored at the eNodeB for scheduling purposes.
//
simple PhyEnbD2D extends PhyEnb
{
    parameters:
        @class("PhyEnbD2D");
        string d2dBinderModule = default("d2dBinder");  // The network's ~D2dBinder, which holds the D2D state
        bool enableD2DCqiReporting = default(true);
}

File: src/simu5g/stack/d2d/phy/PhyEnbD2D.ned