LtePdcpEntity

Package: simu5g.stack.pdcp

LtePdcpEntity

compound module

PDCP entity of an LTE data radio bearer: the PdcpEntityBase compound with its TX/RX sides bound to the LTE entity profiles (TS 36.323). Selected by BearerManagement via its pdcpEntityModuleType parameter, which defaults to this type.

tx : like IPdcpTxEntity

IPdcpTxEntity: Module interface for the transmitting side of a PDCP entity.

Source:
tx: <> like IPdcpTxEntity {
    @display("p=50,50");
} rx : like IPdcpRxEntity

IPdcpRxEntity: Module interface for the receiving side of a PDCP entity.

Source:
rx: <> like IPdcpRxEntity {
    @display("p=150,50");
} splitter : like IPdcpLegSplitter

DcPdcpLegSplitter: TX-side leg dispatcher of a dual-connectivity split bearer (two legs), steering each PDCP PDU to a...

IPdcpLegSplitter: Module interface for the TX-side leg dispatcher of a PDCP entity (see ~PdcpEntityBase):...

Source:
splitter: <default("simu5g.stack.pdcp.DcPdcpLegSplitter")> like IPdcpLegSplitter if hasSplitter {
    @display("p=50,130;is=s");
} joiner : like IPdcpLegJoiner

PdcpLegJoiner: RX-side leg merger of a multi-leg PDCP entity (see ~PdcpEntityBase): relays the PDU streams of all...

IPdcpLegJoiner: Module interface for the RX-side leg merger of a multi-leg PDCP entity (see ~PdcpEntityBase):...

Source:
joiner: <default("simu5g.stack.pdcp.PdcpLegJoiner")> like IPdcpLegJoiner if numLegs > 1 {
    @display("p=150,130;is=s");
}

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Extends

Name Type Description
PdcpEntityBase compound module

Base type of the PDCP entity of one data radio bearer: packages the transmitting and the receiving side of TS 36.323 / 38.323, plus the leg split/join stage of a multi-leg bearer (e.g. an NR dual connectivity split bearer). Created dynamically by BearerManagement, one per (peer, DRB) pair.

Parameters

Name Type Default value Description
numLegs int 1

Number of RLC legs of this bearer

legs string numLegs == 1 ? "MCG" : "MCG SCG"

Cell group of each leg, space-separated, in leg-index order

hasSplitter bool numLegs > 1 || legs != "MCG"

The TX side routes through the splitter whenever a leg needs its per-leg id mapping

headerCompressedSize int -1B
rlcMode string "UM"

Forwarded to tx only; determines the PDCP header size

Properties

Name Value Description
dynamic true
display i=block/wheelbarrow

Gates

Name Direction Size Description
upperIn input

SDUs from IP (via PdcpMux)

upperOut output

Reassembled SDUs to IP (via PdcpMux)

legOut [ ] output numLegs

PDUs to leg k (RLC entity, or DcMux/X2)

legIn [ ] input numLegs

PDUs from leg k

Source code

//
// PDCP entity of an LTE data radio bearer: the ~PdcpEntityBase compound with
// its TX/RX sides bound to the LTE entity profiles (TS 36.323). Selected by
// BearerManagement via its pdcpEntityModuleType parameter, which defaults to
// this type.
//
module LtePdcpEntity extends PdcpEntityBase
{
    parameters:
        tx.typename = default("simu5g.stack.pdcp.LtePdcpTxEntity");
        rx.typename = default("simu5g.stack.pdcp.LtePdcpRxEntity");
}
File: src/simu5g/stack/pdcp/LtePdcpEntity.ned