In HSDPA mode, key techniques include the use of higher order modulation (16QAM), AMC (Adaptive Modulation and Coding), (Hybrid Automatic Repeat reQuest (H-ARQ), and fast cell search.
AMC changes the modulation and coding format in accordance with variations in the channel conditions, subject to system restrictions. The channel conditions can be estimated based on feedback from the receiver. Key advantages of AMC are:
higher code rates are available for users in favorable positions which in turn increases the average throughput of the cell. Users close to the cell boundary are assigned lower order modulation with lower code rates.
reduced interference variation due to link adaptation based on variations in the modulation/coding scheme rather than variations in transmit power
Using H-ARQ, link layer acknowledgements are used for retransmission decisions instead of explicit measurements as in AMC. The software supports both Chase combining, and incremental redundancy H-ARQ retransmission schemes.
Incremental redundancy or H-ARQ-type-II provides UE feedback by sending different coded bits instead of the same coded packets if the decoding fails on the first attempt. It combines additional parity bits from the retransmission with bits of the first transmission, which gives better throughput performance since coding is effectively done across retransmissions, instead of sending simple repeats of the entire coded packet. This approach is more suited to lower data rates.
Chase Combining provides UE feedback by sending the same coded packet again upon reception of a NACK signal. In practice, the incorrectly received coded data blocks are often stored at the receiver rather than discarded, and when the retransmitted coded data block is received, the information from both coded data blocks are combined before being fed to the decoder of the error-correction code, which can increase the probability of successful decoding. In general, since the same data is repeated, the signal gain increases; however, the signal-to-noise ratio also increases.