5G/NR - MAC  

 

 

 

MAC

As of Mar 2028, 38.321 (MAC Specification) is almost completed and of course it is evolving continuously evolving. In this page, I will describe on NR MAC and try to explain in the comparison to LTE MAC whenever it is possible. If you are familiar with LTE MAC, this comparison would help you a lot to understand NR MaC.

High Level View of NR MAC Layer

High level MAC functionality and its interaction with lower and higher layer can be summarized as in the following diagram.

At high level view, NR MAC function/operation is very similar to LTE MAC function/operation. For your reference, I put the NR MAC function and LTE MAC function side-by-side as below.

 

5G/NR(38.321)

LTE(36.321)

Services

provided to upper layers

  • data transfer
  • radio resource allocation
  • data transfer
  • radio resource allocation

MAC Functions

  • mapping between logical channels and transport channels
  • multiplexing of MAC SDUs
  • demultiplexing of MAC SDUs
  • scheduling information reporting;
  • error correction through HARQ;
  • logical channel prioritisation.
  • mapping between logical channels and transport channels;
  • multiplexing of MAC SDUs
  • demultiplexing of MAC SDUs
  • scheduling information reporting
  • error correction through HARQ
  • priority handling between UEs
  • priority handling between logical channels of one MAC entity
  • Logical Channel prioritisation
  • transport format selection
  • radio resource selection for SL

Services

expected from physical layer

  • data transfer services;
  • signalling of HARQ feedback;
  • signalling of Scheduling Request;
  • measurements (e.g. Channel Quality Indication (CQI)).
  • data transfer services;
  • signalling of HARQ feedback;
  • signalling of Scheduling Request;
  • measurements (e.g. Channel Quality Indication (CQI)).

There is another way of describing MAC functionality. It is to describe about each separate procedures that are performed by MAC as summarized below. This is the way I like to describe MAC layer. When MAC and PHY layer specification gets finalized, I would create separate pages for each of these process.

Procedure Name

Description

Random Access Procedure Get the initial uplink grant and perform synchronization to network
DL-SCH data transfer (NW) Do everything needed to perform DL Data Transfer (DCI-Scheduling, HARQ etc)
UL-SCH data scheduling (NW) Schedule UL data transmission by sending DCI X (UL Grant)
UL-SCH data transfer (UE) Do everything needed to perform UL Data Transfer (DCI X decoding, HARQ, multiplexing and assembly)
SR-Scheduling Request (UE) Send the request to Network to get a UL Grant
DRX - Discontinous Reception Control UE's PDCCH monitoring activity in special pattern mainly to save energy consumption
SPS - Semi Persisent Scheduling Scheduling DL/UL transmission in special pattern to reduce scheduling overhead
PCH Reception Monitoring Paging message in special period
BCH Reception Get basic information on cell (MIB and SFN)

Channel Mapping at MAC Layer

The illustration shown above may show you a little bit detailed picture of MAC process, but it may not be so clear about the channel mapping unless you follow through each lines very carefully. In terms of channel mapping, the tables in 38.321 would be clearer and simple to understand and my illustration to the right would be even more clear and intuitive :).

As you see, most of channels from Logical channel to Transport channel is one-to-one or many-to-one relation, but BCCH case it maps to BCH and DL-SCH.

What does this mean ? Does this mean that a BCCH message maps both to BCH and DL-SCH simultaneously ?

No. It means some BCCH data maps to BCH and some BCCH data maps to DL-SCH.  If you are familiar with LTE, you would know there are largely two types of BCCH in LTE. One is MIB and the others are SIBs. MIB goes through BCCH-BCH path and SIBs go through BCCH-DL SCH path. NR would use the same pattern of channel mapping.

Refer to Channel Mapping page to see how this mapping embedded into the mapping with wider scope.

Comparison of MAC PDU / Headers between NR and LTE

Following shows the overal MAC PDU struction of NR and LTE MAC. You would notice here, all the MAC subhaeders are located at the beginning of a MAC PDU in LTE, but in NR MAC subheaders are located right in front of corresponding SDU(Payload). In other words, in LTE MAC Subheader and correponding data are located in different region, but in NR MAC subheader and corresponding data(payload) are in the same region sitting next to each other.

Followings shows header structure of MAC subheaders in NR and LTE. Overall structure would look similar but in NR there is no 'E' field. NR does not require 'E' field since one subheader is located right in front of the corresponding payload. There is no case where multiple headers are sitting next to each other. So 'E' filed is not needed (NOTE : 'E' field indicate whether any other MAC header come after the current MAC subheader).

NR MAC Subheader Structure

Followings shows the structure of MAC Subheaders in NR and meaning of each field in the sub headers.

< 38.321- Figure 6.1.2-1 R/F/LCID/L MAC subheader with 8-bit L field >

 

< 38.321- Figure 6.1.2-2 R/F/LCID/L MAC subheader with 16-bit L field >

 

< 38.321- Figure 6.1.2-3 R/LCID MAC subheader >

 

Field

Description

LCID

This field indicates Logical Channel ID. There is one LCID field per MAC subheader. The LCID field size is 6 bits;

L

This indicates Length of the corresponding MAC SDU or variable-sized MAC CE in bytes. There is one L field per MAC subheader except for subheaders corresponding to fixed-sized MAC CEs and padding. The size of the L field is indicated by the F field;

F

F stands for 'Format'. It indicates the size of the Length field. There is one F field per MAC subheader except for subheaders corresponding to fixed-sized MAC CEs and padding. The size of the F field is 1 bit.

  •   0 indicates 8 bits of the Length field.
  •   1 indicates 16 bits of the Length field

Followings table shows the LCID field in MAC Subheader based on 38.321 v15.1 (Mar 2018 version).

Followings table shows the LCID field in MAC Subheader based on 38.321 v15.2 (Jun 2018 version).

Comparing to v15.1, followings are added or modified.

  • DL : Recommended bit rate is added
  • UL : CCCH is divided into two different types, CCCH of size other than 48bits and CCCH of size of 48 bits

Followings table shows the LCID field in MAC Subheader based on 38.321 v16.4 (Apr 2021 version).

Reference

[1]