BackgroundScheduler

Package: simu5g.background.cell

BackgroundScheduler

simple module

Computes the allocation of time-frequency resources for background UEs in a BackgroundCell, taking into account the traffic generated by these UEs and their channel quality.

Used in compound modules

Name Type Description
BackgroundCell compound module

Implements a lightweight model for a 4G eNodeB or 5G gNodeB for generating configurable inter-cell interference in the simulated network.

Parameters

Name Type Default value Description
binderModule string "binder"
trafficManagerModule string "^.bgTrafficGenerator.manager"
channelModelModule string "^.bgChannelModel"
txPower double 46dBm

Transmission power

txDirection string "OMNI"

Transmission direction

txAngle double 0deg

Transmission angle

isNr bool false

Flag to indicate whether this is a NR base station

numerologyIndex int 0

Operating carrier

carrierFrequency double 2GHz

Operating carrier

numBands int 6

Carrier bandwidth

Properties

Name Value Description
display i=block/control
class BackgroundScheduler

Signals

Name Type Unit Description
bgAvgServedBlocksDl

Statistics

bgAvgServedBlocksUl

Statistics

Name Title Source Record Unit Interpolation Mode Description
bgAvgServedBlocksDl Average DL served blocks for background cells bgAvgServedBlocksDl mean, vector
bgAvgServedBlocksUl Average UL served blocks for background cells bgAvgServedBlocksUl mean, vector

Source code

//
// Computes the allocation of time-frequency resources for background UEs in a
// ~BackgroundCell, taking into account the traffic generated by these UEs and
// their channel quality.
//
simple BackgroundScheduler
{
    parameters:
        @display("i=block/control");
        @class("BackgroundScheduler");

        string binderModule = default("binder");
        string trafficManagerModule = default("^.bgTrafficGenerator.manager");
        string channelModelModule = default("^.bgChannelModel");

        // Transmission power
        double txPower @unit(dBm) = default(46dBm);

        // Transmission direction
        string txDirection @enum(ANISOTROPIC,OMNI) = default("OMNI");

        // Transmission angle
        double txAngle @unit(deg) = default(0deg);

        // Flag to indicate whether this is a NR base station
        bool isNr = default(false);

        // Operating carrier
        int numerologyIndex = default(0);

        // Operating carrier
        double carrierFrequency @unit(GHz) = default(2GHz);

        // Carrier bandwidth
        int numBands = default(6);

        // Statistics
        @signal[bgAvgServedBlocksDl];
        @statistic[bgAvgServedBlocksDl](title="Average DL served blocks for background cells"; unit=""; source="bgAvgServedBlocksDl"; record=mean,vector);
        @signal[bgAvgServedBlocksUl];
        @statistic[bgAvgServedBlocksUl](title="Average UL served blocks for background cells"; unit=""; source="bgAvgServedBlocksUl"; record=mean,vector);
}

File: src/simu5g/background/cell/BackgroundScheduler.ned