ProDeveloperTutorial.com

Tutorials and Programming Solutions
Menu
  • Shell Scripting
  • System Design
  • Linux System Programming
  • 4g LTE
  • Coding questions
  • C
  • C++
  • DSA
  • GIT
  • 450 DSA Cracker
  • 5G NR
  • O-RAN

LTE HARQ

prodevelopertutorial May 17, 2020

HARQ stands for Hybrid Automatic Repeat Request (HARQ).
This is a physical layer functionality in LTE.

It is type of error detection and correction technique.

It uses forward error correction.

ARQ: Automatic Repeat Request.

It means, if the sender doesn’t receive ACK from the receiver before timeout, then the receiver will discard the packet and sender will retransmit the packet.

For example:

LTE HARQ

The eNB is sending T1 block to the smart-phone, but the smart phone has received half of the data. Hence it will send a NACK. Again the sender will send the same T1 block again.

This is not an efficient way to handle the error.

HARQ

Maximum 3 times HARQ NACK can be sent.

Soft Combining:

Soft Combining one method to correct the errors. Errors might be due to the bad packets, that might have lost during the transmission.

In soft combining, the bad block will not be discarded, but will be kept, and bad packets will be taken from the next re-transmitted block. This is called as HARQ.

 

Incremental Redundancy with Soft Combining

This type of HARQ is used in LTE.

This is across 2 layers, between MAC and Physical Layer.

MAC layer will do Incremental Redundancy

Physical Layer will do the Soft Combining

Incremental Redundancy: It is change the coding from transmitted from re-transmitted.

It will have maximum of 8 level. After that, it will drop the packet fully.

Hence HARQ retransmissions are faster than compared to RLC based retransmission.

There are 2 level of re-transmission for error correction.
HARQ at MAC layer
ARQ at RLC layer.

ARQ will try to handle errors that are not corrected by HARQ.

Different types of HARQ :

There are 2 different types of HARQ:

  1. Synchronous HARQ, used for uplink
  2. Asynchronous HARQ, used for downlink.

Synchronous and Asynchronous HARQ:

In Synchronous HARQ, retransmission is known at what time it will occur. Hence this will not require the packet number for retransmission. It can operate in minimum signaling overhead.

In asynchronous HARQ, retransmission processes can occur at any time. Hence, explicit signaling like HARQ process number is required to transmit each retransmission packets. This will require a signaling overhead.

Different types of Synchronous HARQ: Adaptive or Non-Adaptive:

In adaptive HARQ, transmission parameters like code rate, number of resource allocation, and modulation order may change during retransmissions.

In non-adaptive HARQ, retransmission packet format is not changed or know to both communicating parties.

Quantity of HARQ process is required for a packet:

There are 8 HARQ process required for a single packet and there is 8ms round trip time.

Calculation:

Tx packet transmission : 1 ms
Rx received and processed: 3 ms
RX NACK transmit time :1 ms
Tx process NACK & retransmission time : 3 ms
Overall Time consuming : 8 ms

Need of HARQ instead of RLC ARQ?

As RLC will be having multiple instances of Rx and Tx that will be dealing with multiple logical channels CCCH, DCCH, DTCH., there will be waste of system resources.

Hence when MAC layer multiplex all the packets from multiple RLC entities and send it to the PHY, HARQ correction will be after and efficient.

HARQ Mechanisms

HARQ Type1:
If the channel quality is good, it will receive all the packets correctly. It will rectify all the transmission information.
If the channel quality is bad, and if not all the transmission errors can be corrected, then that packet will be discarded. And an request for retransmission will be requested.

HARQ Type2:
FEC and ED (Error Detecting) will be known to decrypt the data block correctly.

Notes:

In FDD, ACK/NACK refers to the downlink packet.
In TDD, ACK/NACK timing depends on the uplink/downlink configuration.
UE can request retransmission of data packets that were incorrectly received on PDSCH
8 HARQ process can be used.

 

Click here for complete 4G/LTE tutorials for free

 

List Of Tutorials available in this website:

C Programming 20+ ChaptersC++ Programming 80+ Chapters
100+ Solved Coding QuestionsData Structures and Algorithms 85+ Chapters
System design 20+ ChaptersShell Scripting 12 Chapters
4g LTE 60+ ChaptersMost Frequently asked Coding questions
5G NR 50+ ChaptersLinux System Programming 20+ chapters
Share
Email
Tweet
Linkedin
Reddit
Stumble
Pinterest
Prev Article
Next Article

About The Author

prodevelopertutorial

Follow this blog to learn more about C, C++, Linux, Competitive Programming concepts, Data Structures.

ProDeveloperTutorial.com

Tutorials and Programming Solutions
Copyright © 2023 ProDeveloperTutorial.com
We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies.
Do not sell my personal information.
Cookie SettingsAccept
Manage consent

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
CookieDurationDescription
cookielawinfo-checkbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Performance
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Analytics
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Advertisement
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
Others
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
SAVE & ACCEPT