MAC Scheduling for High Speed Packet Access


Abstract— High Speed Packet Access has offered high data rate in Uplink and Downlink, faster round trip time, adaptive modulation coding. The user is promised much richer experience with services like video streaming, which could not be run on GSM or 3G release 4.

HSDPA and HSUPA features have resulted into introduction of MAC-hs and MAC-e entities at NodeB. One of the adaptations for the HSPA is the efficient scheduling of resources among the participating users in Uplink and Downlink. For HSDSCH channel, the Scheduler sits at MAC-hs and schedules the channelisation codes and Modulation Scheme among users, based on user priority, Channel Quality and available data to be transmitted. E-DCH scheduling characteristic is NodeB Centralized Scheduling. Scheduling Grants are sent from NodeB to UE which enable it to transmit data on E-DCH channel in the Uplink.
        This paper details the parameters available at MAC Scheduler which can be utilized in an algorithm for efficient scheduling of resources. In addition, a sample Scheduler Implementation is also presented.

Index TermsHSDPA, HSUPA, MAC Scheduling

I.     Inspiration for High Speed Packet Access

In the process of evolving the UMTS Specifications, 3GPP came out with High Speed Downlink Packet Access (HSDPA) in the release 5 and High Speed Uplink Packet Access (HSUPA) in release 6 of the specifications. The inspiration for High Speeds in Mobile Communication is derived from the end user requirements and the Research and Development being carried out to improve the volume and efficiency of data transfer over the Air Link.


II.     High Speed downlink packet access

A.     Transport and Physical channels introduced

The improvements in HSDPA are the shorter Transmission Time Interval (TTI) of 2ms, adaptive modulation, efficient scheduling and multiple HARQ. All these factors have resulted in shorter round trip time, efficient use of the spectrum and much higher data throughput.

HS-DSCH is a shared Transport Channel which carries the Downlink(DL) Data for HSDPA. It acts as a big pipe through which the data for multiple UEs flows. It is mapped onto HS-PDSCH physical channel. The signaling required for the data transfer is supported by the HS-DPCCH in the Uplink(UL) and HS-SCCH in the Downlink(DL).

HS-DPCCH is a physical channel carrying the HARQ Indications (ACK/NACK) and Channel Quality Indication(CQI) from the UE. The UE transmits on this channel, a fixed interval after receiving data on HS-PDSCH. Thus the timing of the reception at UTRAN identifies the HARQ process to which it relates. It is therefore possible to operate multiple HARQs in parallel, each having independent retransmissions and CQI reporting.

HS-SCCH is a physical channel signaling the transmission parameters; channelisation codes, TFRI, modulation scheme and HARQ Information to the destined UE and thus preparing it for the HS-PDSCH transmissions about to occur. Transport Format Resource Indicator (TFRI) is a 6 bit parameter which indicates the Transport Block Size to the UE. The HARQ process information includes the HARQ ID for which the data is to be transmitted, the Redundancy Version (used in chase combining algorithm) and the New Data Indicator (single bit, set in case of a new transmission).

Figure 1: Transport and Physical Channels for HSDPA


B.     MAC Architecture for HSDPA

MAC-hs has been introduced at the NodeB to support high data rates for HSDPA. It handles the HS-DSCH channel. The new MAC architecture is as shown in the figure below.

Figure 2: MAC Architecture for HSDPA


C.     Need for Scheduling

HS-DSCH being a shared channel, participating UEs have to compete among them to obtain maximum resources. The RNC allocates the resources per cell at Node B. These resources must be scheduled efficiently between the UEs in order to obtain the maximum possible throughput.

D.     Resources to be scheduled

The resources to be scheduled for HSDPA in the DL by MAC-hs are Channelisation Codes and HS-PDSCH power to be used for transmission. HS-PDSCH channel gets mapped to physical channels with SF=16, HS-DPCCH onto SF=256 and HS-SCCH onto SF=128. HS-PDSCH channel corresponds to one channelisation code, and multiple such codes can be allocated to a UE in one TTI. Thus the DL data rate for a UE depends upon the number of Channelisation Codes allocated. Some channelisation codes (SF=16) are reserved for signaling on HS-SCCH channels (1 (SF=16) code gives 8 (SF=128) codes). UE is required to monitor up to 4 physical channels for HS-SCCH transmissions.
Therefore in every TTI, MAC-hs schedules the available channelisation codes among the active UEs. It also selects the channelisation code for HS-SCCH. The channelisation code(s) allocated for a UE, the modulation scheme selected based on Channel Quality reported for the HARQ, the TFRI determined based on the scheduled TBS constitute the signaling parameters on that particular HARQ for the UE in a given TTI. These are signaled to the UE on the HS-SCCH channel.


E.     Parameters for Scheduling


The MAC-hs scheduler allocates the channelisation codes, computes the TFRI and selects the modulation scheme for the UE(s) whose transmission is scheduled in the given TTI. It does this based on these parameters;

Channel Quality Indicator: This is an indicator of the prevalent channel conditions. It is reported by the UE along with the HARQ information in every TTI.

Data on the Priority Queues for the UE: The amount of data buffered at MAC-hs to be transmitted to the UE.

Available Channelisation Codes: The channelisation codes available for HS-PDSCH transmission.

III.     High Speed uplink packet access


A.     Transport and Physical channels introduced

HSUPA provides in the UL what HSDPA has in the DL. Shorter TTI (2ms or 10ms), Node B Centralized Scheduling, multiple HARQ processes are the major features of HSUPA network. HSUPA is also referred to as Enhanced DCH. It provides significantly data rates in the UL with good response to bursty traffic.



Enhanced DCH (E-DCH) is the transport channel for carrying Data for HSUPA in the UL. It is capable for supporting high data rates in UL, hence the name, Enhanced. It is mapped to the E-DPDCH physical channel which has different slot formats with SF=2 to 256. The capability to send data on lower SF and multiple E-DPDCH depends on the UE Category. The data transmitted on E-DCH consists of the MAC-e Header and payload containing MAC-es PDUs. It can also optionally contain the Scheduling Information.            E-DCH is supported by E-DPCCH in UL to send HARQ information and UE feedback on scheduling and E-HICH, E-RGCH and E-AGCH in DL for sending HARQ information and Scheduling Grants.



E-DPCCH is the physical channel with SF=256. It is used in the UL to send HARQ Info and Happy Bit prior to the UL E-DCH transmission. The HARQ info consists of E-TFCI, which indicates the TBS in UL and Retransmission Number (RSN). Happy Bit (HB), if set, indicates that the UE is Happy with the current level of resources allocated to it. Both RSN and HB become an input to the E-DCH Scheduler.



E-HICH: It is the HARQ Indication Channel and carries the ACK/NACK in the DL.



E-RGCH: It is the Relative Grant Channel and carries the Relative Grants in the DL.



E-AGCH: It is the Absolute Grant Channel and carries the Absolute Grants in the DL.





Figure 3: Transport and Physical Channels for HSDPA

B.     MAC Architecture for HSUPA

The new MAC entities introduced for HSUPA are MAC-e at NodeB, MAC-es at RNC and MACe/es at UE. These entities together enable the E-DCH transmissions. MAC-e has the job of processing MAC-e PDUs and extracting MAC-es PDUs besides performing E-DCH Scheduling. Mac-es does macro diversity combining on the E-DCH channel. It reorders the MAC-es PDUs and delivers MAC-d PDUs to MAC-d.

Figure 4: MAC Architecture for HSUPA


C.     Need for Scheduling

Multiple UEs are participating in the UL for transmission on E-DCH channel. With limited resources, there is a need to schedule the UE’s transmissions so as to maximize the throughput and provide Quality of Service.


D.     Resources to be scheduled

The data rate of a UE, participating in EDCH transmission, depends on the Serving Grant allocated to it. The value of Serving Grant(SG) determines the transmission power on E-DPDCH channel, and hence the maximum data rate that can be supported. The SG of each UE is controlled by Scheduling Grants sent by the E-DCH Scheduler at MAC-e. Therefore the resources for transmission in UL on E-DCH are scheduled by a Node B controlled Scheduler.
The E-DCH scheduler has to ensure that the Received Total Wideband Power in a Cell does not exceed the RoT limit set by the RNC. The wideband power available for scheduling at the E-DCH scheduler is the margin left in the RoT limit, as shown in the figure below.




Figure 5: Components of RTWP

E.     Parameters for Scheduling

There are multiple HARQ processes running in the UL for transmission on the E-DCH channel. Each process has a means to independently signal the ACK/NACK and Scheduling Grants. The HARQ ID to which the HICH and RGCH/AGCH relates is determined by the timing of reception at UE. UE maintains a serving_grant for every HARQ process. E-DCH scheduler at MAC-e performs the task of allocating Serving Grant to the UEs. The scheduling is done for a given HARQ. Scheduling Grants are transmitted at the appropriate instance from UTRAN so that the UE is able to relate these to the correct HARQ. The Scheduling Grant can be one of the following.

Absolute Grant: It can be sent only from the Serving Cell in the EDCH Radio Link Set. UE updates  the value of serving_grant with the value received in the Absolute Grant(AG).

Relative Grant: It can be sent from the Serving as well as the Non-Serving Radio Links. The Relative Grant (RG) can be UP, DOWN or HOLD; directing the UE to increase, decrease, hold the serving_grant from the value last used for transmission. The delta by which the serving_grant is modified is configurable at MAC-e.
Therefore the job of the E-DCH Scheduler is to transmit periodic Scheduling Grants to the UE to set the serving_grant. The UE, as it comes up, is allowed a initial serving_grant. The minimum and maximum serving_grant that can be allocated is also configured. Certain kind of data, such as signaling or high priority data, cannot wait for Scheduling Grants to be transmitted. Such transmissions are allocated a priori Grant by the RNC. E-DCH Scheduler reserves power at the onset, for these Non-scheduled transmissions. The HARQ ID for the Non-scheduled transmissions are also specified.
The period of the Scheduling Grants, Scheduling Period, can be any value depending on the Algorithm. The minimum value is one TTI. The Scheduling Algorithm can use some or all of the following parameters to pass a verdict for the UE in every scheduling period.



Happy Bit : This is sent by UE on the E-DPCCH. This is the most reliable feedback information from the UE, as it is refreshed along with every transmission from the UE. It indicates whether the UE is happy or not with the current grant it has used for transmission.



Scheduling Information: It is sent by the UE along with the Data, on E-DPDCH channel. UE sends it, whenever it can accommodate the 18 bits in the padding of the MAC-e PDU. There are also some triggers when the UE has to compulsorily send Scheduling Info. It consists of more elaborate information for Scheduling; Total E-DCH Buffer Status (TEBS), Highest priority Logical channel Buffer (HLBS), UE Power Headroom (UPH) and Highest priority Logical channel ID (HLID).



Received Total Wideband Power (dbm):.This is the total wideband power received in the cell in a given period. It should be reported to MAC-e at least every scheduling period.

Maximum Target Received Total Wideband Power(dbm): This is the value specified by RNC for each cell. E-DCH scheduler ensures that this maximum value is not crossed in any cell.



Maximum UE UL Tx Power (dbm): This sets a limit on the maximum value of SG that can be sent to the UE.



2-index step threshold and 3-index step threshold: These specify the range of SG based on which the delta to vary the SG is determined. If the current value of SG is below the 2-index step threshold, the SG is varied by one. Between 2- index step threshold and 3- index step threshold, the delta becomes 2, and above 3- index step threshold, the delta is 3.



Non-scheduled grant: This is the maximum allowed number of bits in the MAC-e PDU when it is sent using Non-scheduled grant. This is configured for each MAC-d flow of the UE.



Scheduling Priority for logical channel: This can allow the Scheduler to prioritize the UEs, based on the priority of logical channels configured.


IV.     Sample Implementation


A.     HSDPA

This scheduler selects the UEs for DL transmission in a round robin fashion. The steps involved in scheduling are as follows:


B.     HSUPA

The following Algorithm computes the Scheduling Grants for the UEs in the Node B. In each Scheduling Period the available power for scheduling has to be distributed among the competing UEs, based on their priorities. The algorithm first prioritises all the UEs and then according to the priorities gives them scheduling grants. Thus the algorithm can be explained in the following two parts.

1)     Prioritising the UEs

The scheduler uses the proportional fair algorithm for prioritising the UEs. The priority of the UE is dependent on the following parameters-
  • HLBS and HLID as obtained from the Scheduling Information
  • Rate on which UE is transmitting,

The priority of the UE is directly proportional to the HLBS and the priority of the HLID reported by UE. It is inversely proportional to the rate. This is due to the fact that a UE with more high priority data on a logical channel with higher priority shall be given more priority, but to be fair to all the UEs, if the rate at which a UE is transmitting is higher, then the priority reduces, so as to give the chance to another UE. The priority is thus calculated as:

Priority =  HLBS * rate_req by the UE / (rate_avg * sched_priority of the HLID)

        The sched_priority of HLID is in the denominator, as the logical channels are assigned a priority of 1-8 by the RNC, where 1 is for the Highest Priority.
        A UE which is either retransmitting, or wants a non-scheduled transmission is assigned the highest priority.

2)     Computing the Scheduling Grants

After the UEs have been arranged according to their priorities, the scheduler proceeds to assign the grants. The strategy is to assign that much grant to a UE, which will be required to send all the data in the UE buffer at one go. If that much grant is not available, due to traffic in the cell, then it reduces the power to the maximum possible grant. The scheduling period is one TTI. Starting from the first UE, repeat the following steps for each UE in the list.
1>  If the Node B is non serving Node B for this UE,
2> Check that the RTWP received for this UE is less than the target RTWP.
2> If not then check that the non-serving-total-edch power ratio is less than the target ratio.
2> If both the above conditions are not sufficed then send a Relative Grant as DOWN to that UE and continue with the next UE.
2> If the RG DOWN is being sent for the 5th consecutive TTI for this UE, then send a load excess indication to the Application.
1>  If the HARQ ID to be scheduled for this UE is reserved for Non-Scheduled transmission, then we need to allocate resources for this transmission as its non-scheduled grant is already confirmed.
2> Allocate resources for the transmissions of this UE in this Node B, according to the maximum bits configured for this non-scheduled transmission and update the cell power of all the cell’s of this.
2> Pick the next UE in the list.
1>  If the UE has to retransmit in the next scheduling period, even then the UE shall be given a grant.
2> Allocate resources for the transmissions of this UE in this Node B, according the grant given for the last transmission and update the cell power of all the cells in the nodeb_rls_list of this UE.
2> Pick the next UE in the list.
1>  For fresh/New transmission,
2> Allocate the power to UE. The power allocation depends on:
-         UE Power Headroom
-         Requested power according to TEBS.
-         Happy bit (If unset, it restricts the allocated power to a minimum of      R [t-1] +Delta)
-         Scheduling Mode: This can be set to either decreasing grants when the UE is Happy or giving the same grant as previously sent.
2> Check if this allocated power is allowed in each of the cells in nodeb_rls_list of the UE. This is done by dividing this power by the total number of cells in the UE RLS and then comparing that with each cell’s target RTWP. If this much power is not available across any of these cells, adjust this power so that available power is not crossed in any of the cells.
2> The value of allocated power will decide the nature of grant (absolute or relative).If the difference between the last grant sent and the new grant calculated is such that it can be adjusted with incrementing or decrementing 1, 2 or 3 index depending upon its location in the scheduling grant table.(An adjustment of 1 if above the 2-index step threshold, 2 if it lies between 2 and 3 index threshold and 3 if it lies below the 3-index threshold.) then we send a relative grant otherwise an absolute grant.
1>  Decrement the rate corresponding to the scheduling grant being given to the UE, from its TEBS, as in the next Scheduling Period the UE is assumed to have sent data corresponding to the grant given.
References
[1]     3GPP TS 25.321 v6.16.0, Sept 2008, Medium Access Control (MAC) protocol specification.
[2]     3GPP TS 25.308 v6.4.0, Mar 2007 High Speed Downlink Packet Access (HSDPA); Overall description; Stage 2.
[3]     3GPP TS 25.309 v6.6.0, Mar 2006 FDD Enhanced Uplink; Overall description; Stage 2.