5.3 DL-SCH data transfer
38.3213GPPMedium Access Control (MAC) protocol specificationNRRelease 17TS
5.3.1 DL Assignment reception
Downlink assignments received on the PDCCH both indicate that there is a transmission on a DL-SCH for a particular MAC entity and provide the relevant HARQ information.
When the MAC entity has a C-RNTI, Temporary C-RNTI, CS-RNTI, G-RNTI or G-CS-RNTI, the MAC entity shall for each PDCCH occasion during which it monitors PDCCH and for each Serving Cell:
1> if a downlink assignment for this PDCCH occasion and this Serving Cell has been received on the PDCCH for the MAC entity’s C-RNTI, or Temporary C‑RNTI, or G-RNTI configured for multicast MTCH:
2> if this is the first downlink assignment for this Temporary C-RNTI:
3> consider the NDI to have been toggled.
2> if the downlink assignment is for the MAC entity’s C-RNTI, and if the previous downlink assignment indicated to the HARQ entity of the same HARQ process was either a downlink assignment received for the MAC entity’s CS-RNTI or G-CS-RNTI, or a configured downlink assignment for unicast or MBS multicast; or
2> if the downlink assignment is for the MAC entity’s G-RNTI configured for multicast MTCH, and if the previous downlink assignment indicated to the HARQ entity of the same HARQ process was either a downlink assignment received for the MAC entity’s CS-RNTI or G-CS-RNTI, or other G-RNTI, or C-RNTI, or a configured downlink assignment for unicast or MBS multicast:
3> consider the NDI to have been toggled regardless of the value of the NDI.
2> stop the cg-SDT-RetransmissionTimer, if it is running, for the corresponding HARQ process for initial transmission with CCCH message;
2> stop the configuredGrantTimer, if it is running, for the corresponding HARQ process for initial transmission with CCCH message;
2> indicate the presence of a downlink assignment and deliver the associated HARQ information to the HARQ entity.
1> else if a downlink assignment for this PDCCH occasion has been received for this Serving Cell on the PDCCH for the MAC entity’s CS-RNTI or G-CS-RNTI:
2> if the NDI in the received HARQ information is 1:
3> consider the NDI for the corresponding HARQ process not to have been toggled;
3> indicate the presence of a downlink assignment for this Serving Cell and deliver the associated HARQ information to the HARQ entity.
2> if the NDI in the received HARQ information is 0:
3> if PDCCH contents indicate SPS deactivation:
4> clear the configured downlink assignment for this Serving Cell (if any);
4> if the timeAlignmentTimer, associated with the TAG containing the Serving Cell on which the HARQ feedback is to be transmitted, is running:
5> indicate a positive acknowledgement for the SPS deactivation to the physical layer.
3> else if PDCCH content indicates SPS activation:
4> store the downlink assignment for this Serving Cell and the associated HARQ information as configured downlink assignment;
4> initialise or re-initialise the configured downlink assignment for this Serving Cell to start in the associated PDSCH duration and to recur according to rules in clause 5.8.1;
For each Serving Cell and each configured downlink assignment, if configured and activated, the MAC entity shall:
1> if the PDSCH duration of the configured downlink assignment does not overlap with the PDSCH duration of a downlink assignment received on the PDCCH for this Serving Cell:
2> instruct the physical layer to receive, in this PDSCH duration, transport block on the DL-SCH according to the configured downlink assignment and to deliver it to the HARQ entity;
2> set the HARQ Process ID to the HARQ Process ID associated with this PDSCH duration;
2> consider the NDI bit for the corresponding HARQ process to have been toggled;
2> indicate the presence of a configured downlink assignment and deliver the stored HARQ information to the HARQ entity.
For configured downlink assignments without harq-ProcID-Offset, the HARQ Process ID associated with the slot where the DL transmission starts is derived from the following equation:
HARQ Process ID = [floor (CURRENT_slot × 10 / (numberOfSlotsPerFrame × periodicity))]
modulo nrofHARQ-Processes
where CURRENT_slot = [(SFN × numberOfSlotsPerFrame) + slot number in the frame] and numberOfSlotsPerFrame refers to the number of consecutive slots per frame as specified in TS 38.211 [8].
For configured downlink assignments with harq-ProcID-Offset, the HARQ Process ID associated with the slot where the DL transmission starts is derived from the following equation:
HARQ Process ID = [floor (CURRENT_slot × 10 / (numberOfSlotsPerFrame × periodicity))]
modulo nrofHARQ-Processes + harq-ProcID-Offset
where CURRENT_slot = [(SFN × numberOfSlotsPerFrame) + slot number in the frame] and numberOfSlotsPerFrame refers to the number of consecutive slots per frame as specified in TS 38.211 [8].
NOTE 1: In case of unaligned SFN across carriers in a cell group, the SFN of the concerned Serving Cell is used to calculate the HARQ Process ID used for configured downlink assignments.
NOTE 2: CURRENT_slot refers to the slot index of the first transmission occasion of a bundle of configured downlink assignment.
When the MAC entity needs to read BCCH, the MAC entity may, based on the scheduling information from RRC:
1> if a downlink assignment for this PDCCH occasion has been received on the PDCCH for the SI-RNTI;
2> indicate a downlink assignment and redundancy version for the dedicated broadcast HARQ process to the HARQ entity.
When the MAC entity needs to read MCCH, the MAC entity may, based on the scheduling information from RRC:
1> if a downlink assignment for this PDCCH occasion has been received on the PDCCH for the MCCH-RNTI:
2> indicate a downlink assignment and redundancy version for the selected HARQ process to the HARQ entity.
When the MAC entity needs to read broadcast MTCH, the MAC entity may, based on the scheduling information from RRC and DCI:
1> if a downlink assignment for this PDCCH occasion has been received on the PDCCH for the G-RNTI configured for broadcast MTCH:
2> indicate the presence of a downlink assignment and deliver the associated HARQ information for the selected HARQ process to the HARQ entity.
5.3.2 HARQ operation
5.3.2.1 HARQ Entity
The MAC entity includes a HARQ entity for each Serving Cell, which maintains a number of parallel HARQ processes. Each HARQ process is associated with a HARQ process identifier. The HARQ entity directs HARQ information and associated TBs received on the DL-SCH to the corresponding HARQ processes (see clause 5.3.2.2).
The number of parallel DL HARQ processes per HARQ entity is specified in TS 38.214 [7]. The dedicated broadcast HARQ process is used for BCCH.
The HARQ process supports one TB when the physical layer is not configured for downlink spatial multiplexing. The HARQ process supports one or two TBs when the physical layer is configured for downlink spatial multiplexing.
When the MAC entity is configured with pdsch-AggregationFactor > 1, the parameter pdsch-AggregationFactor provides the number of transmissions of a TB within a bundle of the downlink assignment. Bundling operation relies on the HARQ entity for invoking the same HARQ process for each transmission that is part of the same bundle. After the initial transmission, pdsch-AggregationFactor – 1 HARQ retransmissions follow within a bundle.
The MAC entity shall:
1> if a downlink assignment has been indicated:
2> allocate the TB(s) received from the physical layer and the associated HARQ information to the HARQ process indicated by the associated HARQ information.
1> if a downlink assignment has been indicated for the broadcast HARQ process:
2> allocate the received TB to the broadcast HARQ process.
NOTE: It is up to UE implementation to allocate the received TB for MCCH or broadcast MTCH to one HARQ process.
5.3.2.2 HARQ process
When a transmission takes place for the HARQ process, one or two (in case of downlink spatial multiplexing) TBs and the associated HARQ information are received from the HARQ entity.
For each received TB and associated HARQ information, the HARQ process shall:
1> if the NDI, when provided, has been toggled compared to the value of the previous received transmission corresponding to this TB; or
1> if the HARQ process is equal to the broadcast process, and this is the first received transmission for the TB according to the system information schedule indicated by RRC; or
1> if the HARQ process is associated with a transmission indicated with a MCCH-RNTI for MBS broadcast, and this is the first received transmission for the TB according to the MCCH schedule indicated by RRC; or
1> if the HARQ process is associated with a transmission indicated with a G-RNTI for MBS broadcast, and this is the first received transmission for the TB according to the MTCH schedule indicated by RRC or according to the scheduling indicated by DCI as specified in TS 38.214 [7]; or
1> if this is the very first received transmission for this TB (i.e. there is no previous NDI for this TB):
2> consider this transmission to be a new transmission.
1> else:
2> consider this transmission to be a retransmission.
The MAC entity then shall:
1> if this is a new transmission:
2> attempt to decode the received data.
1> else if this is a retransmission:
2> if the data for this TB has not yet been successfully decoded:
3> instruct the physical layer to combine the received data with the data currently in the soft buffer for this TB and attempt to decode the combined data.
1> if the data which the MAC entity attempted to decode was successfully decoded for this TB; or
1> if the data for this TB was successfully decoded before:
2> if the HARQ process is equal to the broadcast process:
3> deliver the decoded MAC PDU to upper layers.
2> else if this is the first successful decoding of the data for this TB:
3> deliver the decoded MAC PDU to the disassembly and demultiplexing entity.
1> else:
2> instruct the physical layer to replace the data in the soft buffer for this TB with the data which the MAC entity attempted to decode.
1> if the HARQ process is associated with a transmission indicated with a Temporary C-RNTI and the Contention Resolution is not yet successful (see clause 5.1.5); or
1> if the HARQ process is associated with a transmission indicated with a MSGB-RNTI and the Random Access procedure is not yet successfully completed (see clause 5.1.4a); or
1> if the HARQ process is equal to the broadcast process; or
1> if the HARQ process is associated with a transmission indicated with a MCCH-RNTI or a G-RNTI for MBS broadcast; or
1> if the HARQ process is associated with a transmission indicated with a G-RNTI or a G-CS-RNTI for MBS multicast and HARQ feedback is disabled; or
1> if the HARQ process is associated with a transmission indicated with a G-RNTI or a G-CS-RNTI for MBS multicast and NACK only HARQ feedback is configured and the data for this TB is successfully decoded; or
1> if the timeAlignmentTimer, associated with the TAG containing the Serving Cell on which the HARQ feedback is to be transmitted, is stopped or expired and if the cg-SDT-TimeAlignmentTimer, if configured, is not running; or
1> if the HARQ process is configured with disabled HARQ feedback:
2> not instruct the physical layer to generate acknowledgement(s) of the data in this TB.
1> else:
2> instruct the physical layer to generate acknowledgement(s) of the data in this TB.
The MAC entity shall ignore NDI received in all downlink assignments on PDCCH for its Temporary C-RNTI when determining if NDI on PDCCH for its C-RNTI has been toggled compared to the value in the previous transmission.
NOTE: If the MAC entity receives a retransmission with a TB size different from the last TB size signalled for this TB, the UE behavior is left up to UE implementation.
5.3.3 Disassembly and demultiplexing
The MAC entity shall disassemble and demultiplex a MAC PDU as defined in clauses 6.1.2 and 6.1.5a.
When a MAC entity receives a MAC PDU for MAC entity’s G-RNTI or G-CS-RNTI, or by the configured downlink assignment for MBS multicast containing an LCID or eLCID which is not configured, the MAC entity shall at least:
1> discard the received subPDU.