High Speed Downlink Packet Access (HSDPA) is a Release 5 feature of 3GPP that adds higher speed downlink data rates specifically for packet switched services. It does this by adding a new type of transport channel, the High Speed Downlink Shared Channel (HS-DSCH) that utilizes techniques such as adaptive modulation and hybrid ARQ to achieve high throughput.
The HS-DSCH transport channel is mapped onto one or more High Speed Physical Downlink Shared Channels (HS-PDSCHs) depending on the instantaneous data rate. The HS-PDSCHs operate on a 2ms sub-frame rather than the standard 10ms W-CDMA frame and have a fixed spreading factor of 16. The modulation format used on the HS-PDSCH can either be QPSK or the higher capacity 16QAM. One of the features of HSDPA is that the network can vary the number and modulation format of the HS-PDSCHs that are used for a particular UE on a subframe by subframe basis.
UEs in a cell share the same set of HS-PDSCHs, so a companion set of High Speed Shared Control Channels (HS-SCCHs) are used to indicate which UE should read which HS-PDSCH during a particular 2ms subframe. On call establishment each UE is assigned a unique identifier called the H-RNTI and a set of HS-SCCHs to monitor. Whenever the network wishes to send the UE some data it will code up the HS-SCCH using that UE's identity and the necessary information for the UE to be able to decode the HS-PDSCHs (for example, number of HS-PDSCHs, their channelization codes, the HARQ process number, etc.).
Whenever an HS-DSCH block is transmitted to a UE, the UE's L1 will attempt to decode it and will pass the result to a Hybrid ARQ (HARQ) process that is running in the MAC-hs layer. Depending on whether the block was received correctly or not, the UE's HARQ process will tell its L1 to transmit an ACK or NACK on the uplink HS-DPCCH channel. The UE may also include information about the channel in the Channel Quality Indicator field in the HS-DPCCH.
A peer HARQ process in the network uses the HS-DPCCH data to decide whether to retransmit the same block or send the next block in the transmit queue. There are between 1 and 8 HARQ processes running in parallel on any given UE connection.
The MAC-hs HARQ processes in the network also control which Redundancy Version (RV) is used by L1 when a block is transmitted. The RV parameter controls exactly which bits are transmitted to the UE (the systematic bits vs. the convolutionally coded bits) and, for the 16QAM modulation, which symbols are mapped to which modulation points. By selecting a different RV each time a block is retransmitted, the network increases the chances that the turbo decoder in the UE will be able to recover the original block. Alternatively the network can use the same RV for each retransmission and the UE will use chase combining on the received bits to increase the likelihood of receiving the block correctly.
MAC-hs does not guarantee transmission of a block, so once a block has been retransmitted the maximum number of times, the network will move onto the next block in the transmit queue even if the last transmission was NACK'ed by the UE. If this happens the higher level RLC layer is used to recover or skip over the lost block.
The MAC-hs layer in a real network dynamically adjusts the data rate going to a particular UE based on the amount of data waiting to be transmitted to it and the RF conditions that UE is experiencing. The amount of data transmitted to a UE during a particular subframe is defined by the choice of modulation scheme, number of HS-PDSCHs used and a transport block size index known as the Transport Format and Resource Indicator (TFRI) value, all of which are signaled on the HS-SCCH. From these elements the UE can compute the HS-DSCH transport block size that it has been sent (unlike regular DCHs only a single transport block can be transmitted during a TTI on an HS-DSCH).
To aid the network in block size selection the UE transmits a CQI (Channel Quality Indicator) on the uplink HS-DPCCH that tells the network how much data it can receive. The CQI indicates the modulation format, number of HS-PDSCHs and block size that the UE could have received during the previous 2ms subframe with a 90% chance of success. The 3GPP standards do not define how the CQI information shall be used; similar to handovers, each network is free to implement their own algorithm. The simplest algorithm would be to simply use the reported CQI as the next TFRI on the downlink.
HSDPA allows a very wide range of data rates. To give UE manufacturers some flexibility over how much functionality they choose to put in their device, 3GPP TS 25.306 Table 5.1a defines a set of HSDPA UE Categories that restrict those data rates by specifying attributes such as the minimum inter-TTI value that a UE can support, the maximum number of HS-PDSCHs it can receive, the size of its Incremental Redundancy memory, etc. A network must ensure that it respects a UE's capabilities when transmitting to it.
One of the parameters defined for each UE category is the size of its Incremental Redundancy memory. Each HARQ process has exclusive use of a portion of the IR memory. As data is received on the HS-PDSCH it is written into the IR memory associated with the target HARQ process. Subsequent transmissions of a block are added to IR buffer until the block is successfully decoded or the network transmits a new block (which is indicated by setting the New Data Indicator on the HS-SCCH). Using signaling messages the network can tell the UE to either equally divide the available IR memory across all HARQ processes or it can allocate specific amounts of memory to each process.
As HSDPA works alongside existing W-CDMA functionality, 3GPP largely defined it by augmenting existing specifications. The only stand-alone HSDPA specification is 25.308 - HSDPA Overall Description. In Layer 1 the most useful specifications with HSDPA content are: