Abstract:
A method and apparatus for scheduling data transmissions is disclosed that compensates for link level errors and uses retransmission information to schedule future transmissions from each user. The disclosed method and apparatus utilizes a more accurate measure of users&#39; data rates (i.e., their effective data throughput rates) that accounts for the Frame Error Rate (FER) as well as retransmissions when scheduling transmissions from multiple users.

Description:
FIELD OF THE INVENTION  
         [0001]    The present invention relates to wireless packet data transmission systems and, more specifically, to improving scheduler performance in such systems when hybrid automatic repeat request (HARQ) techniques are utilized.  
         BACKGROUND OF THE INVENTION  
         [0002]    Wireless communications systems are becoming an increasingly integral aspect of modern communications. Mobile radio channels in such systems are often characterized by unpredictable degradation of the channel due to fading. Fading is typically caused by various types of interference such as, for example, co-channel interference, adjacent channel interference, propagation path loss, and multi-path propagation (i.e., Rayleigh fading). Transmission errors typically occur in bursts when fading causes the signal level to go below the noise or interference level. Therefore, explicit measures often need to be taken to maintain an acceptable level of quality of the transmission over a radio channel.  
           [0003]    The quality of the transmission over a radio channel connection may be measured by the reliability with which the receiver receives the transmitted data. This channel reliability may, for example, be defined in terms of the frame-error-rate (FER) as experienced at the receiver. In packet data transmissions, forward error correction (FEC) and automatic repeat request (ARQ) are two well-known error control techniques commonly used for noisy and fading channels (i.e., those channels with high FERs). In a system that uses FEC for error control, for example, the transmitter encodes the data using a given redundancy code, while the receiver, which has been informed of the code used, decodes the data at the receiving end. Many such systems using conventional block or convolutional codes have been explored and/or employed. In a system that uses ARQ, the receiver returns (i.e., transmits back to the transmitter) an acknowledgement which indicates whether the given transmitted packet was received free of errors (in which case an acknowledgement signal, or “ACK” is sent), or whether the packet was received with errors (in which case a negative acknowledgement signal, or “NACK” is sent). If the packet was not received error-free (i.e., if the transmitter receives back a “NACK” signal), the transmitter then re-transmits the same packet again, anticipating that the packet will be successfully received on this (or else on a further, subsequent) transmission.  
           [0004]    Third-generation (3G) cellular systems, which are designed to support high-speed packet data service on the downlink from the base station to the mobile device, require relatively low FERs. Obtaining such low FERs in wireless environments is challenging, even in the presence of very low rate forward error correction codes. ARQ techniques, however, provide very reliable communication, albeit at the expense of variable and sometimes large delays. Therefore, in more recent attempts, hybrid ARQ schemes, in which both FEC and ARQ techniques are employed simultaneously, have been used because they combine the fixed delay error correction capability of FEC techniques with the low FER of basic ARQ schemes. Such hybrid ARQ schemes are described, for example, in S. Lin, D. Costello and M. J. Miller, “Automatic Repeat Request Error Control Scheme,” IEEE Communications Magazine, vol. 22, no. 12, pp. 5-16, December, 1984, which is hereby incorporated by reference in its entirety herein.  
           [0005]    In fading channels the performance gains obtained from an FEC technique depends on the state of the channel. For example, when the received signal-to-noise ratio (SNR) is large, an uncoded system or a high code rate FEC is sufficient to give a satisfactory FER. On the other hand, for lower received SNRs, a very low rate FEC may be necessary to meet the requirements. Adaptive hybrid ARQ (HARQ) schemes using, for example, well-known Chase combining methods, can be used very efficiently in slow fading channels, since in a slow fading channel the channel remains in a particular state for relatively long periods of time. An adaptive HARQ scheme takes into account the fact that the channel is good for long periods of time and advantageously transmits information using a high rate FEC during those times. However, when the channel conditions are deteriorating, the adaptive HARQ scheme switches to a low rate code. Lowering the rate of the FEC reduces the overhead that is transmitted and thus improves the channel throughput. In comparison to non-adaptive HARQ schemes, adaptive schemes employ fewer bits for error correction. Therefore, these adaptive schemes typically result in a better overall throughput than do non-adaptive schemes.  
           [0006]    In multi-user systems utilizing an adaptive HARQ scheme, scheduling algorithms are used to give priority to users with better channel conditions. For multi-user systems where user channel conditions change over time, such scheduling algorithms take advantage of channel variations by giving priority to the users with better channel conditions in a given time frame. Several well-known scheduling algorithms have been used to maximize the packet data throughput subject to various conditions, known as “fairness” conditions. For example, the “proportional fair” algorithm utilizes asynchronous channel variations by first selecting the user with the maximum value of the ratio of a) the calculated instantaneous transmission rate to b) the average transmission rate of past transmissions. The calculated transmission rate is typically obtained by measuring the signal-to-noise-and-interference ratio (SINR) and then mapping that SINR to a modulation and coding scheme (MCS) that equates to an expected transmission rate for that channel. Other well-known scheduling algorithms utilize differing ratios or variables to schedule transmissions but, similar to the proportional fair algorithm, they all rely on the instantaneous transmission rate of each user to attempt to assign a transmission window to each user when its channel condition is at its best. Examples of such well-known prior algorithms that rely on the instantaneous transmission rate include the “maximum weight” scheduler (described in, e.g., M. Andrews et. al., “Providing Quality of Service Over a Shared Wireless Link,”  IEEE Communications Magazine,  39(2): 150 - 154 , February 2001) and the “exponential weight” scheduler (described in, e.g., A. Stolyar and S. Shakkaottai, “Scheduling for multiple flows sharing a time-varying channel: the exponential rule,” Translations of AMS, a volume in memory of F. Karpelvich, American Mathematical Society, 2002), both of which are hereby incorporated by reference herein in their entirety.  
         SUMMARY OF THE INVENTION  
         [0007]    The present inventors have recognized that the more accurate the estimated data rate used in the scheduler for a given user, the more efficient the scheduler operations. Efficiency in scheduler operations translates directly to reduced bandwidth requirements for transmissions resulting in better Quality of Service (QoS) to mobile users. While prior scheduling algorithms using the instantaneous data rate to determine the user to be served in each scheduling interval are useful, they do not fully take into account transmission errors and the resulting transmission performance impact of retransmission techniques (e.g., HARQ) to recover those errors.  
           [0008]    Therefore, we have invented a method and apparatus for scheduling data transmissions that maximizes data throughput and that uses retransmission information to schedule future transmissions from each user. This method and apparatus utilizes a more accurate measure of users&#39; data rates (i.e., their effective data throughput rates) that accounts for the Frame Error Rate (FER) as well as the number of retransmissions when scheduling transmissions from the users. Specifically, in order to schedule transmissions from a plurality of mobile terminals, a data rate for future transmissions from each of the mobile terminals is calculated. The calculation of this data rate takes into account possible future retransmissions of the packet; it may also include the information about past (re)transmissions.  
           [0009]    Future transmissions from each mobile terminal are scheduled by prioritizing transmissions from those terminals according to the calculated future data rate. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWING  
       [0010]    [0010]FIG. 1 shows an illustration of a wireless communications system; and  
         [0011]    [0011]FIG. 2 shows a flow chart illustrating a method in accordance with the principles of the present invention.  
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0012]    [0012]FIG. 1 shows an embodiment of a wireless communications system, in which the present invention may be implemented, in which data and voice messages are transmitted to and from mobile terminals  101 . Mobile terminals  101  communicate with other communications nodes (e.g., other mobile terminals or traditional telephones) by transmitting signals to antenna  102 . Antenna  102  is used to both transmit data from network  115  to the mobile terminals  101  along air interface  109 , as well as to receive data from mobile terminals  101  along air interface  108  and transmit it to network  115 . Antenna  102  is connected to illustrative base station  103  via connection  116  and base station  103  is connected to an illustrative base station controller (BSC)  104  via connection  117 . One skilled in the art will recognize that wireless systems may or may not use BSCs, such as illustrative BSC  104 . BSC  104  is connected to mobile switching center (MSC)  105  via connection  118 . MSC  105 , which typically controls multiple base station or base station controllers, comprises, among other components, control module  110  and switching network  111  which, together, function to issue control signals to other parts of the network and to switch incoming and outgoing voice and data messages such that they reach the correct destination. MSC  105  is connected via communication paths  112  and  113  to a packet data serving node (PDSN)/interworking facility (IWF)  106  in order to facilitate data communications over, for example, the internet  119  between wireless terminals  101  and other communication nodes, for example computer  120 .  
         [0013]    When one of the mobile terminals  101  attempts to establish a call connection to another communication node, MSC  105  receives a data message, via base station  103  and BSC  104 , indicating that such an attempt is being made. Upon receiving the data message, MSC  105  checks the mobile terminal&#39;s identification, checks the called number and selects an outgoing trunk to the PDSN/IWF  106 . The MSC  105  also selects a radio channel for the mobile terminal and sends a data message to the cell site to instruct the mobile to tune to the selected radio channel. In the case of calls to, rather than from, the mobile terminal, the MSC  105  sends a data message to the cell sites served by it to broadcast a paging message to the mobile terminals. MSC  105  also coordinates handoffs from one cell site to another and controls signaling functions associated with call disconnect.  
         [0014]    As discussed above, in adaptive HARQ schemes, scheduling algorithms are used to compensate for the aforementioned fading by using feedback from the mobile device. Referring once again to FIG. 1, this scheduling function is typically implemented within network  115  by circuitry within, illustratively, the BS  103  or the BSC  104 . One skilled in the art will realize that such scheduling may be implemented in any component within network  115 . Additionally, one skilled in the art will also realize that the different calculations necessary in such scheduling algorithms may take place in one circuit or in separate calculations performed by individual circuits.  
         [0015]    Prior scheduling algorithms typically rely on the instantaneous transmission rate to a particular mobile terminal based on a transmission modulation and coding scheme (MCS) to schedule transmissions to and from that terminal. Typically, such MCSs are calculated as a function of the SINR and then the MCS is mapped to a chosen instantaneous data rate for future transmissions of data. The instantaneous rate is the ratio of a) the number of information bits transmitted in a frame and b) the frame length. For example, if 1000 information bits are transmitted in a 0.002 second frame, then the instantaneous rate is 1000/0.002=500 kbps. This instantaneous data rate is then used in a scheduling algorithm to determine the priority of transmissions from mobile users. An illustrative equation for calculating the MCS is:  
                 MCS     FER   =   x            (   η   )       =         arg                 max       i   ∈   M            {       R   i     |         F   i          (   η   )       &lt;   x       }               (   1   )                               
 
         [0016]    where x is the maximum allowable frame error rate, R i  is the instantaneous transmission rate of MCS indexed i, F i (η) is the estimated frame error rate of MCS i at SINR η , and M represents the set of MCS rates that are available. Thus equation 1 uses the instantaneous transmission rate of a mobile to determine the appropriate MCS conditions necessary to achieve a maximum allowable frame error rate of x. Another illustrative equation for calculating the MCS is based on the average rate that the transmission could achieve, i.e.,  
               MCS        (   η   )       =         arg                 max       i   ∈   M                         R   i     ·     (     1   -       F   i          (   η   )         )                 (   2   )                               
 
         [0017]    After selecting a MCS for each user, the scheduler determines the user to be served in the future based on the instantaneous rate of the users. For example, assuming MCS(k) represents the chosen MCS for user k, and R MCS(k)  represents the instantaneous rate of use k that uses MCS(k) then the scheduler selects to serve user U according to  
             U   =         arg                 max       k   ∈   Π                       Ψ        (       R     MCS        (   k   )         ,   k     )                 (   3   )                               
 
         [0018]    where Ψ(·) represents the scheduler metric, and Π represents the set of active users in the system. An illustrative example of the scheduler metric, corresponding to the above mentioned proportional fair scheduler is  
               Ψ        (     x   ,   k     )       =     x       R   avg          (   k   )                 (   4   )                               
 
         [0019]    where R avg (k) is the average rate received by user k in the past over a certain time window. Another example of scheduler metric, corresponding to the maximum rate scheduler, is  
         Ψ( x )= x   (5)  
         [0020]    The instantaneous rates, i.e. {R MCS(k) } do not fully take into account the true transmission rate since they fail to account for frame errors and the resulting retransmissions that reduce the effective transmission rate to and from the mobile terminal. Specifically, when a frame error occurs, the transmission rate of that frame is, in essence, zero (i.e., it must be transmitted again). Thus, the instantaneous transmission rate obtained by mapping the calculated MCS value and utilized in prior art systems is not an accurate overall transmission rate of data from a transmitter to a receiver. This inaccuracy is especially harmful in a multi-user system where the scheduler must prioritize one user over another.  
         [0021]    Thus, in accordance with the principals of the present invention, an effective data throughput rate for each user is used in a HARQ-based wireless transmission system that takes into account the retransmissions of frames that occur when frame errors are encountered. Expressed as a general equation, the effective data throughput rate is the ratio of the a) the average amount of information that the future transmission(s) could carry, and b) the average amount of time or resource that will take to carry such information.  
         [0022]    One example calculation of the effective data throughput for a general user k assuming it is at the Lth (L&gt;0) transmission of a packet, can be expressed as  
                 R   eff          (   k   )       =         μ   L          (     η   ,       Φ   →       L   -   1       ,   MCS     )       =       E        (       S   |   η     ,       Φ   →       L   -   1       ,   MCS     )         E        (       T   |   η     ,       Φ   →       L   -   1       ,   MCS     )                   (   6   )                               
 
         [0023]    where {right arrow over (Φ)} L-1  represents the past transmission history, which may include transmit power usage, channelization code and modulation and coding schemes, etc. When L=1, equation 6 can be simplified as:  
                 R   eff          (   k   )       =         μ   1          (     η   ,   MCS     )       =       E        (       S   |   η     ,   MCS     )         E        (       T   |   η     ,   MCS     )                   (   7   )                               
 
         [0024]    In equations 6-7, MCS represents the modulation and coding scheme that is selected for user k, and η represents the estimated channel SINR value of user k. E(S|η, {right arrow over (Φ)} L-1 , MCS) is the average number of successfully transmitted information bits related to the packet that takes into account past (re) transmissions, and E(T|η, {right arrow over (Φ)} L-1 , MCS) is the average transmission time taken by the packet which takes into account past (re)transmissions. It should be noted that the actual formats of μ L (·) depend on the underlying transmission algorithms and system implementations.  
         [0025]    Under certain circumstances, it may be advantageous to disregard the retransmission history while defining the effective rate R eff  (k). In this case,  
                 R   eff          (   k   )       =       max     MCS   ∈   M              μ   1          (     η   ,   MCS     )                 (   8   )                               
 
         [0026]    where μ 1  (η, MCS) is defined as in equation 7.  
         [0027]    Using the general equation 6 for a successful packet transmission, specific transmission rates can be derived that fully take into account retransmissions. Specifically, in a particular embodiment for a mobile terminal in a HARQ system at the Lth transmission of a packet, an effective transmission rate that fully reflects the effects of Chase combining in HARQ retransmissions can be expressed as:  
                   μ   L          (     η   ,       Φ   →       L   -   1       ,   MCS     )       =         R   MCS     ·     (     1   -       ∏     q   =   1         T                 max     +   1   -   L              F   MCS          (       q                 η     +       η   ^     L       )           )                   ∑     k   =   1         T                 max     +   1   -   L              k        (       ∏     q   =   1       k   -   1              F   MCS          (       q                 η     +       η   ^     L       )         )            (     1   -       F   MCS          (       k                 η     +       η   ^     L       )         )         +                 (       T   max     +   1   -   L     )     ·       ∏     q   =   1         T                 max     +   1   -   L              F   MCS     (       q                 η     +     η   ^                       ;           (   9   )                               
 
         [0028]    where k is the number transmissions attempted, Tmax is the maximum number of retransmissions, R MCS  represents the instantaneous data rate using MCS as the modulation and coding scheme and {circumflex over (η)} L  is the accumulated SINR of the previous L-1 transmission(s), i.e.  
           η   ^     L     =       ∑     i   =   1       L   -   1            η        (     t   i     )                               
 
         [0029]    which may be substituted for {right arrow over (Φ)} L-1 .  
         [0030]    F MCS  represents the estimated frame error rate using MCS, which could take into account the impact of channel uncertainty including mobile speed and channel estimation errors.  
         [0031]    One skilled in the art will recognize that, equation 9 can be approximated as:  
                       μ   L          (     η   ,       Φ   →       L   -   1       ,   MCS     )       =              R   MCS     ·     (       ∑     k   =   1         T                 max     +   1   -   L              1   k     ·                                  (       ∏     q   =   1       k   -   1            f        (       q                 η     +       η   ^     L       )         )          (     1   -     f        (       k                 η     +       η   ^     L       )         )       )                 (   10   )                               
 
         [0032]    which can be further approximated by using just the first term of the summation, i.e.:  
         μ L (η, {right arrow over (Φ)} L-1   , MCS )= R   MCS ·(1 −f (η+{circumflex over (η)} L )  (11)  
         [0033]    Equations 10 and 11 will reduce the computational complexity of determining the effective data rate while yielding approximately the same results as equation 9.  
         [0034]    Thus, in accordance with the principles of the present invention, the effective data throughput rates of equations 6-11 can be used in place of the instantaneous data rate to schedule data transmissions for individual mobile users. The scheduling algorithm for selecting each user for transmission can be expressed as:  
             U   =         arg                 max       k   ∈   Π                     Ψ                   (         R   eff          (   k   )       ,   k     )               (   12   )                               
 
         [0035]    where U is the user to be given priority in data transmission and R eff  (k) is the effective data throughput rate for a given user k. Thus, the particular user U that is selected for transmission will be that user having the highest scheduler metric using the effective data throughput rate as the input  
         [0036]    Thus, by utilizing one or more of equations 6-11 above, the instantaneous data rate used to schedule data transmissions for a particular user is replaced with an effective data throughput rate that takes into account past transmissions and retransmissions as well as present and possible futur channel conditions. However, the instantaneous SINR is still used to initially select an MCS for use in calculating the effective data throughput rate as calculated, for example, by equation 6 above. This results in inaccuracy because, as discussed above, the instantaneous data rate is not necessarily representative of the actual data throughput that can be expected in a HARQ system.  
         [0037]    Therefore, in another embodiment in accordance with the principles of the present invention, the MCS used above in calculating the effective transmission rates in equations 6-11 is modified to take into account past transmissions and retransmissions as well as the current and future likely channel conditions. This results in more accurate scheduling because it increases the accuracy of selecting MCS conditions for mobile users. Thus, the effective data throughput rate is calculated with a greater degree of accuracy. A corresponding illustrative equation for selecting an appropriate transmission rate (MCS) in a HARQ system is:  
               MCS        (     η   ,   L     )       =     {                 arg                 max       i   ∈   M                         μ   L          (     η   ,                  Φ   -&gt;       L   -   1       ,   i     )         ,     L   &gt;   1                       arg                 max       i   ∈   M                         μ   1          (     η   ,   i     )         ,     L   =   1                       (   13   )                               
 
         [0038]    where, μ is the effective data rate, η is the SINR, i is the given MCS rate, and {right arrow over (Φ)} L-1  represents the transmission history up to the L-1 transmissions of the packet. The term μ L (η, {right arrow over (Φ)} L-1 ,i) can be expressed as:  
                   μ   L          (     η   ,                  Φ   -&gt;       L   -   1       ,   i     )       =         E        (       S   |   η     ,                  Φ   -&gt;       L   -   1       ,   i     )         E        (       T   |   η     ,                  Φ   -&gt;       L   -   1       ,   i     )                       and            
              μ   1          (     η   ,   i     )       =       E        (       S   |   η     ,   i     )         E        (       T   |   η     ,   i     )                   (   14   )                               
 
         [0039]    where S is the number of information bits successfully received, T is the transmission time taken by the respective packet, E(S|η, {right arrow over (Φ)} L-1 , i) is the average number of successfully received information bits, and E(T|η, {right arrow over (Φ)} L-1 , i) is the average transmission time taken by the packet. One skilled in the art will recognize that equation 14 represents the effective data throughput rate for a general MCS i at the Lth transmission of a packet. Note that the computation of μ L (η,{right arrow over (Φ)} L-1 , i) for MCS selection could be different from that for scheduler decision as in equations 6 to 11.  
         [0040]    Under certain circumstances, it may be advantageous to disregard the retransmission history while choosing the MCS. In this case,  
               MCS        (     η   ,   L     )       =       max     i   ∈   M                         μ   1          (     η   ,   i     )                 (   15   )                               
 
         [0041]    where μ 1 (η, i) is defined as in equation 14.  
         [0042]    Some HARQ schemes such as Chase Combining require the MCS during retransmissions to be the same as that of the initial transmission. Thus, the general MCS calculation represented by equations 13-15 takes into account past and future transmissions as well as the retransmissions that would result if future transmissions are not successful.  
         [0043]    In a particular embodiment of an MCS calculation for a mobile terminal in a HARQ system, an MCS algorithm that fully reflects the effects of Chase combining in HARQ retransmissions can be expressed as:  
                 MCS   thrpt   HARQ          (   η   )       =         arg                 max       i   ∈   M                R   i     ·     (     1   -       ∏     q   =   1         T                 max     +   1              F   i          (     q                 η     )           )             ∑     k   =   1         T                 max     +   1              k        (     1   -       F   i          (     k                 η     )         )              ∏     q   =   1       k   -   1              F   i          (     q                 η     )             +       (       T   max     +   1     )     ·       ∏     q   =   1         T                 max     +   1              F   i          (     q                 η     )                         (   16   )                               
 
         [0044]    which determines the MCS for the first and all consecutive retransmissions. Here, η is the SINR, i is the MCS rate used, R i  is the instantaneous transmission rate at MCS i, k is the number of transmissions, F i (kη) is the frame error rate of MCS i at SINR Ti for a given number of transmissions k, and M represents the set of MCS rates that are available. The term  
         (     1   -       F   i          (     k                 η     )         )            ∏     q   =   1       k   -   1              F   i          (     q                 η     )                               
 
         [0045]    in equation 16 represents the probability of successful reception after k transmissions.  
         [0046]    [0046]FIG. 2 shows the steps of an illustrative method in accordance with the principles of the present invention for scheduling data transmissions from a plurality of mobile terminals. One skilled in the art will recognize that, for example, the steps represented by the flow chart of FIG. 2 may illustratively be carried out by software executed on a processor. Such a processor may reside, illustratively, in the MSC, the BSC or any other component of network  112  in FIG. 1.  
         [0047]    At step  201 , an MCS such as that represented by equation 8 above, is chosen for a given SINR based on an average data throughput At step  202 , the MCS selected in step  201  is used to determine an effective data throughput rate for a particular mobile user. This effective data throughput rate is used at step  203  to prioritize the transmissions from each mobile terminal according to the calculated data rates for future transmissions such as, for example, prioritizing the mobile terminal with the highest future data rate in the first transmission slot.  
         [0048]    Thus, according to the foregoing, a more accurate effective data throughput rate for each mobile user that takes into account retransmissions is used to schedule mobile user transmissions. This effective data throughput rate is made more precise by using a more accurate MCS mapping relative to the channel SINR for the particular mobile user. The resulting estimated data rate results in more efficient scheduler operations that directly result in reduced bandwidth requirements for transmissions. The ultimate result is better Quality of Service (QoS) to mobile users.  
         [0049]    The foregoing merely illustrates the principles of the invention. It will thus be appreciated that those skilled in the art will be able to devise various arrangements which, although not explicitly described or shown herein, embody the principles of the invention and are within its spirit and scope. Furthermore, all examples and conditional language recited herein are intended expressly to be only for pedagogical purposes to aid the reader in understanding the principles of the invention and are to be construed as being without limitation to such specifically recited examples and conditions. Moreover, all statements herein reciting aspects and embodiments of the invention, as well as specific examples thereof, are intended to encompass functional equivalents thereof.