3GPP Yang Model for nrCellDU “5G SW Development”
August 22, 2022

3GPP TS 28.541 explains how Yang models are implemented in 5G gNB in gNB-CU and gNB-DU as below:

5G CU/DU 3GPP Yang Models

The nrCellDU table models a geographical area of radio coverage that is implemented and supported by physical radio equipment for 5G NR GNB devices, These are contained in GNBDU Functions.

NRCellDU under GNBDUFunction

Definition

NRCELLDU represents the information of a cell known by DU. The procedure for cell setup is initiated from the DU, thus requiring a notion of a cell. The DU owns the resources realizing the cell, thus requiring a notion of a cell owning the specific resources instances.

An NR cell transmits SS/PBCH block and always requires downlink transmission at a certain carrier frequency with a certain channel bandwidth. Transmission may be performed from multiple sector-carriers using different transmission points, and these may be configured with different carrier frequencies and channel bandwidths, as long as they are aligned to the cell’s downlink resource grids.

The values of arfcnDL and bSChannelBwDL attributes define the resource grids which each sector-carrier needs to be aligned to. 

An NR cell requires an uplink in order to provide initial access. In case of TDD, the values of arfcnUL and bSChannelBwUL have to always be set to the same values as for the corresponding DL attributes. For both FDD and TDD, the arfcnUL and bSChannelBwUL define uplink resource grids to which each sector-carrier needs to align to.

An NR cell can in addition be configured with a supplementary uplink, which has its own arfcnSUL and bSChannelBwSUL, which define resource grids for supplementary uplink sector-carriers.

Each of downlink, uplink and supplementary uplink (if configured) need an initial bandwidth part (BWP), which defines resources to be used by UEs during and immediately after initial access. Additional BWPs can be either configured or calculated by gNB internally and be applied to UEs dynamically by gNB based on e.g. UE capability and bandwidth need of each UE.

Attributes

The following table describes the nrCellDU table.

NRCellDU Table Created by Moniem Tech

3GPP YANG Model

This is under 3gpp-nr-nrm-nrcelldu.yang

grouping NRCellDUGrp {
    description "Represents the NRCellDU IOC.";
    reference "3GPP TS 28.541";
    uses mf3gpp:ManagedFunctionGrp;
    uses nrrrmpolicy3gpp:RRMPolicy_Grp;
        
    leaf cellLocalId {
      description "Identifies an NR cell of a gNB. Together with the
        corresponding gNB identifier in forms the NR Cell Identity (NCI)."; 
      reference "NCI in 3GPP TS 38.300";
      mandatory true;
      type int32 { range "0..16383"; }
    }

    leaf operationalState  {
      description "Operational state of the NRCellDU instance. Indicates
        whether the resource is installed and partially or fully operable
        (ENABLED) or the resource is not installed or not operable
        (DISABLED).";
      config false;
      type types3gpp:OperationalState;
    }

    leaf administrativeState  {
      description "Administrative state of the NRCellDU. Indicates the
        permission to use or prohibition against using the cell, imposed
        through the OAM services.";
      type types3gpp:AdministrativeState;
      default LOCKED;
    }

    leaf cellState  {
      description "Cell state of the NRCellDU instance. Indicates whether the
        cell is not currently in use (IDLE), or currently in use but not
        configured to carry traffic (INACTIVE), or currently in use and is
        configured to carry traffic (ACTIVE).";
      config false;
      type types3gpp:CellState;
    }

    list pLMNInfoList {
      description "The PLMNInfoList is a list of PLMNInfo data type. It 
        defines which PLMNs that can be served by the NR cell, and which 
        S-NSSAIs that can be supported by the NR cell for corresponding PLMN 
        in case of network slicing feature is supported. The plMNId of the 
        first entry of the list is the PLMNId used to construct the nCGI for 
        the NR cell.";
      key "mcc mnc sd sst";
      min-elements 1;
      ordered-by user;
      uses types5g3gpp:PLMNInfo;
    }

    leaf nRPCI {
      description "The Physical Cell Identity (PCI) of the NR cell.";
      reference "3GPP TS 36.211";
      mandatory true;
      type int32 { range "0..1007"; }
    }

    leaf nRTAC {
      description "The common 5GS Tracking Area Code for the PLMNs."; 
      reference "3GPP TS 23.003, 3GPP TS 38.473";
      type types3gpp:Tac;
    }

    leaf arfcnDL {
      description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for
        downlink.";
      reference "3GPP TS 38.104";
      mandatory true;
      type int32;
    }
 
    leaf arfcnUL {
      description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for
        uplink.";
      reference "3GPP TS 38.104";
      type int32;
    }

    leaf arfcnSUL {
      description "NR Absolute Radio Frequency Channel Number (NR-ARFCN) for
        supplementary uplink.";
      reference "3GPP TS 38.104";
      type int32;
    }

    leaf bSChannelBwDL {
      description "Base station channel bandwidth for downlink.";
      reference "3GPP TS 38.104";
      type int32;
      units MHz;
    }

    leaf bSChannelBwUL {
      description "Base station channel bandwidth for uplink.";
      reference "3GPP TS 38.104";
      type int32;
      units MHz;
    }

    leaf bSChannelBwSUL {
      description "Base station channel bandwidth for supplementary uplink.";
      reference "3GPP TS 38.104";
      type int32;
      units MHz;
    }

    leaf ssbFrequency {
      description "Indicates cell defining SSB frequency domain position.
        Frequency (in terms of NR-ARFCN) of the cell defining SSB transmission.
        The frequency identifies the position of resource element RE=#0
        (subcarrier #0) of resource block RB#10 of the SS block. The frequency
        must be positioned on the NR global frequency raster, as defined in
        3GPP TS 38.101-1, and within bSChannelBwDL.";
      mandatory true;
      type int32 { range "0..3279165"; }
    }       

    leaf ssbPeriodicity {
      description "Indicates cell defined SSB periodicity. The SSB periodicity
      is used for the rate matching purpose.";
      mandatory true;
      type int32 { range "5 | 10 | 20 | 40 | 80 | 160"; }
      units "subframes (ms)";
    }

    leaf ssbSubCarrierSpacing {
      description "Subcarrier spacing of SSB. Only the values 15 kHz or 30 kHz
        (< 6 GHz), 120 kHz or 240 kHz (> 6 GHz) are applicable.";
      reference "3GPP TS 38.211";
      mandatory true;
      type int32 { range "15 | 30 | 120 | 240"; }
      units kHz;
    }

    leaf ssbOffset {
      description "Indicates cell defining SSB time domain position. Defined
        as the offset of the measurement window, in which to receive SS/PBCH
        blocks, where allowed values depend on the ssbPeriodicity
        (ssbOffset < ssbPeriodicity).";
      mandatory true;
      type int32 { range "0..159"; }
      units "subframes (ms)";
    }

    leaf ssbDuration {
      description "Duration of the measurement window in which to receive
        SS/PBCH blocks.";
      reference "3GPP TS 38.213";
      mandatory true;
      type int32 { range "1..5"; }
      units "subframes (ms)";
    }

    leaf-list nRSectorCarrierRef {
      description "Reference to corresponding NRSectorCarrier instance.";
      min-elements 1;
      type types3gpp:DistinguishedName;
    }

    leaf-list bWPRef {
      description "Reference to corresponding BWP instance.";
      type types3gpp:DistinguishedName;
    }

    leaf-list nRFrequencyRef {
      description "Reference to corresponding NRFrequency instance.";
      type types3gpp:DistinguishedName;
    }
  }

  augment "/me3gpp:ManagedElement/gnbdu3gpp:GNBDUFunction" {

    list NRCellDU {
      description "Represents the information of a cell known by DU.";
      reference "3GPP TS 28.541";
      key id;
      uses top3gpp:Top_Grp;
      container attributes {
        uses NRCellDUGrp;
      }
      uses mf3gpp:ManagedFunctionContainedClasses;
    }
  }
}

Support & Share