You are on page 1of 7

1

NR - HARQ [Hybrid Automatic Repeat request]


Introduction
5G NR (New radio) has several retransmission systems using three different layers in the protocol stack:

• MAC protocol: It implements a fast retransmission system with delay less than 1ms in new radio,
called HARQ (Hybrid Automatic Repeat reQuest).
• RLC protocol: Even though HARQ is present at MAC but there might still be some possibility of
errors in the feedback system. So, for dealing with those errors, RLC has a slow retransmission
system but with a feedback protected by CRC. Compared to the HARQ acknowledgments, the RLC
status reports are transmitted relatively infrequently.
PDCP protocol: This will guarantee in-sequence delivery of user data and it is mainly used during

O

handover as RLC and MAC buffers are flushed when a handover is executed.

N
R
NR uses an “asynchronous” hybrid-ARQ protocol in both downlink and uplink, that is, the hybrid-ARQ

R
process which the downlink or uplink transmission relates to is explicitly signaled as part of the

N
downlink control information (DCI).

-
TE
|L
The hybrid-ARQ mechanism in the MAC layer targets very fast retransmissions and, consequently,
feedback on success or failure of the downlink transmission is provided to the gNB after each received
S
transport block (for uplink transmission no explicit feedback needs to be transmitted as the receiver and
G

scheduler are in the same node).


N
EE

HARQ is implemented to correct the erroneous packets coming from PHY layer. If the received data is
erroneous then the receiver buffers the data and requests for a re-transmission from the sender. When
AM

the receiver receives the re-transmitted data, it then combines it with buffered data prior to channel
decoding and error detection. This helps in the performance of re-transmissions. For this to work, the
ED

sending entity need to buffer the transmitted data until the ACK is received since the data needs to be
retransmitted in case a NACK is received.
M
AM

Differences with LTE HARQ


H
O

• NR [New Radio] is using an asynchronous protocol in both UL and DL, which is different from LTE,
M

where the protocol was synchronous in UL; UE should reply with an ACK/NACK after 3ms of
receiving the DL data. The gNB knows that when the ACK/NACK is expected.
* In NR, the report timing is not fixed to increase the flexibility which is important for
URLLC services.
• PHICH (Physical HARQ Indicator channel) was used in LTE to handle uplink retransmissions and
was tightly coupled to the use of a synchronous HARQ protocol, but since the NR HARQ protocol is
asynchronous in both uplink and downlink the PHICH is not needed in NR.
• In LTE, Non-adaptive retransmissions were triggered by a negative acknowledgement on the
PHICH, which used the same set of resources as the previous transmission i.e. the modulation
scheme and the set of allocated resource blocks remains unchanged. Only Redundancy version
used to change between transmissions. But in NR, PHICH is not there and retransmissions are
adaptive that can be triggered by DCI. NDI flag retriggers a transmission if its value is toggled
relative to previous transmission.

5G NR - HARQ | Hybrid Automatic Repeat request


2
• Maximum number of HARQ processes was set to 8 in LTE but is increased to 16 in NR. This was
motivated by shorter time slot and increased use of remote radio heads that will increase the
round-trip time slightly.

Reasons why NR HARQ is asynchronous in both UL and DL:


• Synchronous HARQ operation does not allow dynamic TDD.
• Operation in unlicensed spectra (part of later NR releases) is more efficient with asynchronous
operation as it is not guaranteed that the radio resources are available at the time for a
synchronous transmission.

Code Block Groups(CBG):


Due to increased data rate in NR, when several gigabits per second is transmitted, the size of the

O
transport block will be too large to handle. So, these transport blocks will be split into codeblocks, each

N
with its own 24 bits CRC. This principle made it possible to handle large transport block in parallel

R
channel coders/decoders.

R
In NR, there can be hundreds of codeblocks in a transport block. If only one or a few of them are in error,

N
retransmitting the whole transport block results in a low spectral efficiency compared to retransmitting

-
TE
only the erroneous codeblocks.

• |L
To reduce the control signaling overhead, 2,4,6 or 8 blocks can be grouped together
S
to Codeblock Groups (CBG). In case of an error in one Codeblock, only the Codeblock group
G

to which the faulty Codeblock belongs, need to be retransmitted instead of whole transport
block.
N

• If per-Code Block Group (per-CBG) retransmission is configured, feedback is provided per


EE

CBG instead of per transport block and only the erroneously received codeblock groups are
AM

retransmitted, which consumes less resources than retransmitting the whole transport
block.
ED
M
AM
H
O
M

Retransmission of single CodeBlock Group(CBG)

5G NR - HARQ | Hybrid Automatic Repeat request


3

HARQ in Downlink
The gNB will send a scheduling message to the UE that indicates where the user data is located and how it
is coded. Downlink Control Information (DCI) will indicate which HARQ process to be used by the UE.

• Since transmissions and retransmissions are scheduled using the same framework, the
UE needs to know whether the transmission is a new transmission, in which case the soft
buffer should be flushed, or a retransmission, in which case soft combining should be
performed.
• For that purpose, a New Data Indicator (NDI) bit will also be set to indicate that this will
be new data and the receive buffer should be flushed before loading the user data.

O
Upon reception of a downlink scheduling assignment, UE checks the new-data indicator to determine

N
whether the current transmission should be soft combined with the received data currently in the soft

R
buffer for the HARQ process in question, or if the soft buffer should be cleared.

R
N
UE receives the user data and starts to calculate a checksum of the single transport block and if used, the

-
TE
included codeblocks. After completing the calculation, the UE follows the timing order of the UL report
and sends an HARQ report indicating ACK or NACK. In case of NACK, the gNB will start to schedule a
retransmission of the data. |L
S
G
N
EE
AM
ED
M
AM
H
O
M

Retransmission of code block in DL

Now if per- CBG retransmissions are configured, UE needs to know which CBGs are retransmitted and
whether the corresponding soft buffer should be flushed or not.

For this purpose, two additional fields are present in the DCI.

* CBGTI & CBGFI

5G NR - HARQ | Hybrid Automatic Repeat request


4
1) CBG Transmit Indicator (CBGTI), which is a bitmap indicating whether a certain CBG is present
in the downlink transmission or not and

2) CBGFI which is a single bit, indicating whether the CBGs indicated by the CBGTI should be
flushed or whether soft combining should be performed.

O
N
R
R
- N
TE
|L
Example of per-CBG retransmission
S
The result of the decoding operation—a positive acknowledgment in the case of a successful decoding
G

and a negative acknowledgment in the case of unsuccessful decoding—is fed back to the gNB as part of
N

the uplink control information. If CBG retransmissions are configured, a bitmap with one bit per CBG is
EE

fed back instead of a single bit representing the whole transport block.
AM

DCI Format 1-0 and 1-1 for downlink scheduling assignment contains HARQ related information as:
ED

• Hybrid-ARQ process number (4 bit), informing the device about the hybrid-ARQ process to use for
M

soft combining.
AM

• Downlink assignment index (DAI, 0, 2, or 4 bit), only present in the case of a dynamic hybrid-ARQ
codebook. DCI format 1_1 supports 0, 2, or 4 bits, while DCI format 1_0 uses 2 bits.
H

• HARQ feedback timing (3 bit), providing information on when the hybrid- ARQ acknowledgment
O

should be transmitted relative to the reception of the PDSCH.


M

• CBG transmission indicator (CBGTI, 0, 2, 4, 6, or 8 bit), indicating the code block groups. Only
present in DCI format 1_1 and only if CBG retransmissions are configured.
• CBG flush information (CBGFI, 0_1 bit), indicating soft buffer flushing. Only present in DCI format
1_1 and only if CBG retransmissions are configured.

HARQ in Uplink
The gNB sends a scheduling message to the UE indicating resources to be used for uplink transmission,
which also has HARQ process number. The UE will follow the order and send the transport block (or
Codeblock group) as per the scheduling grant.

5G NR - HARQ | Hybrid Automatic Repeat request


5
The gNB will calculate and verify the checksum for the correctness of the message. The gNB will order the
UE to retransmit the transport block again with a new scheduling grant, if an error id detected. In order
to indicate a retransmission is required, same HARQ process number is sent with NDI bit set to no, which
will be interpreted by the UE as retransmission.

O
N
R
R
- N
TE
|L
Retransmission of a transport block in UL
S
The CBGTI is used in a similar way as in the downlink to indicate the codeblock groups to retransmit in
G

the case of per-CBG retransmission. Note that no CBGFI is needed in the uplink as the soft buffer is
N

located in the gNB which can decide whether to flush the buffer or not, based on the scheduling decisions.
EE
AM

DCI format 0-0 and 0-1 for uplink scheduling grants also contains HARQ related information as:
ED

• Hybrid ARQ process number (4 bit), informing the device about the hybrid-ARQ process to
(re)transmit.
M

• Downlink assignment index (DAI), used for handling of hybrid-ARQ codebooks in case of UCI
AM

transmitted on PUSCH. Not present in DCI format 0_0.


• CBG transmission indicator (CBGTI, 0, 2, 4, or 6 bit), indicating the code block groups to
H

retransmit. Only present in DCI format 0_1 and only if CBG retransmissions are configured.
O
M

Timing of UL reports
The timing of the UL HARQ reports was fixed in LTE as 3ms, which was way too much for 5G and URLLC
services. The solution in NR is to have a flexible solution that can be modified between different service
requirements and when new HW is developed.
The gNB informs the UE about the timing in a ‘HARQ timing’ field in the Downlink Control
Information (DCI). This flexibility was also required in dynamic TDD when the directions of the slots is
flexible (UL/DL).
The “HARQ Timing” field contains a 3-bit pointer to an RRC Configured Table, which will indicate
the timing between the scheduling message (The data this is included in the slot) and the related UL
report. This will also allow for the gNB to order several transmissions to be grouped together or to order

5G NR - HARQ | Hybrid Automatic Repeat request


6
the UE to report as quickly as possible (for delay sensitive services). This information provides the UE
with the information when to send the HARQ report back to the gNB.

Now where in the frequency band the information should be sent (Physical Uplink Control Channel,
PUCCH)?
The answer is that RRC protocol configures another table and the UE will get a pointer to the table in the
scheduling message. This will tell the UE where to send the HARQ report.

Multiple Bits in HARQ reports


5G NR supports very high bitrates and multiple simultaneous carriers. A UE can be configured to use
carrier aggregation, spatial multiplexing and dual connectivity at the same time. This means that UE
should be able to report the success or failure of the transmission of multiple transport blocks at the

O
same time. To do this, there are two ways defined in the standard:

N
R
• Semi-static HARQ acknowledgement codebook

R
Below example can be considered to understand semi-static HARQ acknowledgement codebook:

- N
TE
|L
S
G
N
EE
AM
ED
M
AM
H
O
M

Example of semi-static HARQ Codebook

The codebook which is configured by RRC protocol is valid for a specific time span. In the example, it is
valid for 4 slots.

• The upper carrier is using transmission with 1 transport block per slot.
• The middle carrier uses spatial multiplexing with either one or two transport blocks per
slot.
• Finally, lower carrier is configured with one transport block and CBG retransmission.

5G NR - HARQ | Hybrid Automatic Repeat request


7
A configured table is shown below the figure where A/N means Ack/Nack is transmitted while only N
means NACK is sent. Negative acknowledgements are always sent for Non-scheduled slots which will
help the gNB to detect that a scheduling message was not received by the UE. When the UE reports, there
will always be 21 bits in the report as there are 7 rows in the table and 4 slots.

• Dynamic HARQ acknowledgement codebook


As you can see above, the drawback with semi-static codebook was that the number of bits can be rather
high in case of, for example carrier aggregation with large number of component carriers.

This is the reason 3GPP adopted dynamic HARQ codebook as default approach of reporting.

The principle is to only report those transport blocks or codeblock groups that are actually sent,

O
which will reduce the overhead in the reporting. However, there is a problem with this reporting method

N
as the scheduling message sent to the UE may be lost on one of the carriers (or many carriers). This might

R
create a situation where gNB and the UE do not agree on how many transport blocks to report.
To avoid this situation, the scheduling message will indicate how many transport blocks or codeblock

R
groups to report.

- N
TE
|L
S
G
N
EE
AM
ED
M
AM
H
O
M

Example of dynamic HARQ Codebook


In the above example, there are 0-6 carrier in the carrier aggregation scenario. For every scheduling
message sent on each carrier,
the “cDAI” tells the number of transport block (Count Downlink Assignment Index).
For detecting lost scheduling messages, the total number of scheduled carriers is also indicated as
“tDAI” (Total Downlink Assignment Index).

The figure shows that the number 15, sent on carrier #5, gets lost and is not detected/decoded by the UE.
This will be detected easily by the UE by comparing tDAI and cDAI, it can conclude which transmission
that was missed (that is 15). The HARQ report in this case will consist of 12 bits, one for each received
transport block during the time span of the codebook.

5G NR - HARQ | Hybrid Automatic Repeat request

You might also like