RlcUmEntityBase¶
Package: simu5g.stack.rlc
compound module RlcUmEntityBase
Base type of the RLC UM entity of one data radio bearer: packages the transmitting and the receiving side (TS 36.322 / 38.322 model an entity per bearer). Created dynamically by BearerManagement, one per (peer, DRB) pair; a bearer with traffic in one direction only simply leaves the other side idle.
This base type binds no TX/RX entity types; the concrete subclasses do (LteRlcUmEntity, NrRlcUmEntity), so it is not instantiable on its own.
Usage diagram¶
Inheritance diagram¶
Known subclasses¶
Name |
Type |
Description |
|---|---|---|
compound module |
RLC UM entity of an LTE data radio bearer: the RlcUmEntityBase compound with its TX/RX sides bound to the LTE (FI wire format, TS 36.322) entity profiles. Selected by BearerManagement for LTE bearers via its lteRlcUmEntityModuleType parameter, which defaults to this type. |
|
compound module |
RLC UM entity of an NR data radio bearer: the RlcUmEntityBase compound with its TX/RX sides bound to the NR (SI/SO wire format, TS 38.322) entity profiles. Selected by BearerManagement for NR bearers via its nrRlcUmEntityModuleType parameter. |
Parameters¶
Name |
Type |
Default value |
Description |
|---|---|---|---|
macModule |
string |
“^.mac” |
This bearer leg’s MAC; set per leg by BearerManagement |
rlcMuxModule |
string |
“^.rlcMux” |
This bearer leg’s RLC mux |
Properties¶
Name |
Value |
Description |
|---|---|---|
display |
i=block/wheelbarrow |
|
dynamic |
true |
Gates¶
Name |
Direction |
Size |
Description |
|---|---|---|---|
upperIn |
input |
SDUs from PDCP |
|
upperOut |
output |
Reassembled SDUs to PDCP |
|
lowerIn |
input |
PDUs from RlcMux |
|
lowerOut |
output |
PDUs and new-data notifications to RlcMux/MAC |
|
macIn |
input |
MAC SDU requests via RlcMux |
Source code¶
//
// Base type of the RLC UM entity of one data radio bearer: packages the
// transmitting and the receiving side (TS 36.322 / 38.322 model an entity per
// bearer). Created dynamically by BearerManagement, one per (peer, DRB) pair;
// a bearer with traffic in one direction only simply leaves the other side idle.
//
// This base type binds no TX/RX entity types; the concrete subclasses do
// (~LteRlcUmEntity, ~NrRlcUmEntity), so it is not instantiable on its own.
//
module RlcUmEntityBase
{
parameters:
@dynamic(true);
@display("i=block/wheelbarrow");
string macModule = default("^.mac"); // This bearer leg's MAC; set per leg by BearerManagement
string rlcMuxModule = default("^.rlcMux"); // This bearer leg's RLC mux
*.macModule = default(absPath(this.macModule));
*.rlcMuxModule = default(absPath(this.rlcMuxModule));
gates:
input upperIn; // SDUs from PDCP
output upperOut; // Reassembled SDUs to PDCP
input lowerIn; // PDUs from RlcMux
output lowerOut; // PDUs and new-data notifications to RlcMux/MAC
input macIn; // MAC SDU requests via RlcMux
submodules:
tx: <> like IRlcTxEntity {
@display("p=50,50");
}
rx: <> like IRlcRxEntity {
@display("p=150,50");
}
connections:
upperIn --> { @display("m=n"); } --> tx.in;
macIn --> { @display("m=s"); } --> tx.macIn;
tx.out --> { @display("m=s"); } --> lowerOut;
lowerIn --> { @display("m=s"); } --> rx.in;
rx.out --> { @display("m=n"); } --> upperOut;
}