Wireless data transmission scheduling

Abstract: Scheduling priorities are established for the transmission of data to mobile stations in a cellular communication system based on a channel condition or a data rate associated with each mobile station, where each mobile station may have different channel conditions or data rates. Channel conditions and data rates associated with each mobile station may be set when the mobile station is first added to a mobile station list or they may be recalculated for each transmission period.

Description: Background of the Invention 1. Field of the Invention This invention relates to wireless communications; more particularly, to scheduling wireless data communications. 2. Description of the Related Art Wireless communications that involve transmitting internet based data over cellular networks has become more popular. As a result, the efficient scheduling of data transmission to multiple cellular mobile stations has become critical. Several techniques have been used to schedule data transmissions to cellular mobile stations. In a round robin technique, data is transmitted to each mobile station that has data in a queue until each mobile station has received a transmission. After all of the mobile stations have received a data transmission, the process is repeated. In another technique, data is transmitted to the mobile station based on the size of the backlog of data in a queue. In still another prior art technique, data is transmitted to the mobile station based on the data arrival instants for the mobile station. These prior scheduling techniques do not provide an efficient use of a cellular base station's ability to communicate with multiple mobile stations. EP-A-0 915 632 discloses a method and system which adapt scheduling priorities in a wireless communications system to conserve battery power in mobile stations operating within the system. A base station, within the system, receives battery power level information and other setup information from mobile stations operating within the service area of the base station during call setup procedures. Based on the battery power level information and other setup information, the base station assigns frequency channels to the mobile stations so that those mobile stations having battery power levels below a threshold value are assigned frequency channels that have lower interference levels than frequency channels assigned to other mobile stations. The frequency channel assignments are transmitted to the mobile stations. WO-A-99/63713 discloses a technique for providing high speed data service over standard wireless connections via an unique integration of protocols and existing cellular signaling, such as is available with Code Division Multiple Access (CDMA) type systems through more efficient allocation of access to CDMA channels. For example, when more users exist than channels, the technique determines a set of probabilities for which users will require channel access at which times, and dynamically assigns channel resources accordingly. Channel resources are allocated according to a buffer monitoring scheme provided on forward and reverse links between a base station and multiple subscriber units. Each buffer is monitored over time for threshold levels of data to be transmitted in that buffer. For each buffer, a probability is calculated that indicates how often the specific buffer will need to transmit data and how much data will be transmitted. This probability takes into account the arrival rates of data into the buffer, as well as which thresholds within the buffer are exceeded, as well as which resources in the form of channels are already allocated to the subscriber unit. Passas et al: "Improving traffic scheduling in wireless ATM networks" Computers and Communications, 1998. ISCC '98. Proceedings Third IEEE Symposium on Athens, Greece 30 June-2 July 1998, Los Alamitos, CA, USA, IEEE Comput. Soc, US, 30 June 1998 (1998-06-30), pages 429-435, XP010295133 ISBN: 0-8186-8538-7 discloses a scheduler algorithm which operates in the mobile terminals, and complements a centralized scheduling mechanism operating in the base stations, for improved performance. The algorithm is delay oriented to meet the requirements of the various traffic classes defined by the ATM architecture. Summary of the Invention Methods according to the invention are as set out in the independent claims. Preferred forms are set out in the dependent claims. The present invention schedules transmissions of data to mobile stations in a cellular communication system based on a data rate assigned to each mobile station where each mobile station may have different data rates. Mobile stations having higher associated data rates may receive higher scheduling priority for data transmission. Data rates associated with each mobile station may be set when the mobile station is first added to a mobile station list or the data rates may be modified based on changing channel conditions. In another embodiment, transmissions are scheduled based on a channel condition value associated with each mobile station, where each mobile station may have a different channel condition value. The channel condition value is an indication of the quality of the communication channel to a particular mobile station and may be determined once or updated regularly. Brief Description of the Drawings FIG. 1 illustrates the cellular communication system; FIG. 2 illustrates the amount of data in a queue for each mobile station within a cell or sector; FIG. 3 illustrates different transmission periods used for transmitting data to mobile stations; FIG. 4 illustrates transmit power distribution among several mobile stations; FIG. 5 illustrates a table including transmission rates, channel conditions, queue size and arrival times associated with each mobile station; FIGS. 6A, B and C illustrate a set of cell or sector calibration data tables; FIG. 7 is a flowchart illustrating establishing scheduling priorities where data is transmitted to only one mobile station during each transmission period; FIG. 8 is a flowchart illustrating establishing scheduling priorities where data is transmitted to multiple mobile stations during each transmission period; and FIGS. 9A and B are flowcharts illustrating establishing scheduling priorities where data is transmitted to multiple mobile stations during each transmission period using leftover power. Detailed Description FIG. 1 illustrates a cellular communication system connected to communication network 10. Network 10 provides data to and receives data from mobile station switching center (MSC) 12. MSC 12 provides communications to a group of base stations such as base stations 14 and 16. The base station may service a cell containing one or more sectors. For example, base - station 16 treats all mobile stations within its cell as being in one sector, and base station 14 treats its cell as having three sectors where mobile stations 18, 20 and 22 are in a single sector. When data communications from network 10 are destined for a station such as mobile station 20, the data flows from network 10 to MSC 12. From MSC 12, the data is sent to base station 14 which transmits the data to mobile station 20. The data destined for the mobile station may be queued at MSC 12 or base station 14. FIG. 2 illustrates a queue containing data stored for several different mobile stations. As mentioned earlier, the queue can be located in a base station or MSC. In FIG. 2, mobile station 4 has the most data stored in the queue while mobile station 1 has the second most, mobile station 3 the third most, and mobile station 2 has the least amount of data stored. The data transmitted to each mobile station from the queue is transmitted during transmission periods or frames. FIG. 3 illustrates several transmission sequences containing a series of transmission periods or frames. Sequence 30 includes transmission periods 32, 34 and 36 within which data is transmitted from the queue to mobile station 1, 3 and 1 respectively. Each frame is assigned to a particular mobile station based on transmission scheduling priority that will be discussed below. Likewise, sequence 40 includes transmission periods 42, 44 and 46 which contain data from the queue destined for mobile stations. One sequence may be transmitted at a time, or in systems such as CDMA (Code Division Multiple Access) systems several sequences of data may be transmitted simultaneously using different spreading sequences to distinguish the sequences. For a particular mobile station, different transmission periods may contain data with different data rates. For example, transmission periods 32, 44 and 36 may contain data being transmitted at different rates. Different rates associated with the different frames result from changing channel conditions and are typically restricted to standardized values that will be recognized by a mobile station. It should be noted that poorer channel conditions require additional power to maintain a particular data rate; however, the transmission rates are limited by the amount of power available in a particular base station. For example, if a large amount of power is used to transmit data at a high rate in frame 34, less power is then available for transmission within frame 44 which will result in a lower data rate within frame 44. FIG. 4 illustrates a power distribution example for a transmission period where mobile station 1 receives 30 percent of the available power, mobile station 2 receives 10 percent of the available power and mobile station 4 receives 50 percent of the available power. It should be noted that mobile station 3 receives zero power and is therefore not receiving any data transmission during the transmission period illustrated by the power distribution in FIG. 4. It should be noted there is still an additional 10 percent of the base station's power is leftover based on the distribution shown in FIG. 4 (the sum of mobile stations 1, 3 and 4's power allotments is only 90 percent). However, it is possible that the remaining 10 percent power is insufficient to provide data communications to mobile station 3 at the lowest standardized data rate with an acceptable error rate. FIG. 5 illustrates a table that is used to determine data transmission scheduling priorities to mobile stations. The table lists the mobile stations having data in a transmission queue and is used to keep track of information such as the amount of data in a queue for a particular mobile station, and the maximum standard rate at which data can be transmitted to the mobile station. In this example, the mobile stations are labeled mobile station 1 through mobile station n. Row 80 associates a different channel condition C i with each mobile station. The channel conditions are determined using signaling information received from a mobile station on a reverse channel such as a Dedicated Control Channel (DCCH as defined in CDMA standard IS2000). The channel conditions may change over time and are typically related to the ratio of the pilot signal energy received per chip period E c at a mobile station to the interference power P i received per chip period at the mobile station. It is possible to use other indicators of channel condition, for example, the ratio of the signal energy per control channel bit period to the interference power per bit period may be used. These measurements are typically made by mobile stations and are then forwarded to the base station for use in functions such as controlling the amount of power used for transmission to the mobile station. C i = E c P I Equation 1 illustrates how channel condition variable C i is calculated using pilot signal energy per chip period measurement E c and interference power per chip period measurement P i . Variable C i is then used to determine a maximum standard rate r max / i available for each mobile station in accordance with the cell or sector's calibration data. Tables, such as the calibration data tables in FIGS. 6A, 6B and 6C, are typically created as part of the initial calibration of a cell or sector. These tables are used to determine the maximum standard data rate r max / i available to a mobile station based on the channel condition C i reported by the mobile or calculated at the base - station. There may be a single set of calibration data tables for a cell or there may be a several sets of tables for a cell where each set of tables is associated with a different cell sector. A single set of tables is illustrated in FIGS. 6A, 6B and 6C. Each of the tables in the set is associated with a different frame error rate (FER). The different FERs may be associated with different classes of service where users are charged more for communications with lower FERs. For example, the table of FIG. 6A applies to a 0.01% FER, the table of FIG. 6B applies to a 0.001% FER and the table of FIG. 6C applies to a 0.0001% FER. Different values of C i are listed along the left side of the table with the value of C i increasing from bottom to top. It should be noted that improving channel conditions are associated with moving from the bottom to the top of the table. Different values of r max / i are listed along the top of the table with the value of r max / i increasing from left to right. The entries in the table indicate the fraction of the total cell or sector transmission power that is required to communicate with a mobile station at a particular rate, given a particular channel condition while maintaining a particular FER. For example, and in reference to the table of FIG. 6B, if a particular mobile station is to receive a FER that is less than or equal to 0.001% and the channel condition reported by the mobile station is C i = C 4 , the power fraction Φ of total cell or sector transmission power required to provide a rate of r max / i = r 3 is Φ=Φ 43 . It should be noted that the tables of FIGS. 6A through 6C may have all of the standard data rates along the top and one hundred or more values of channel conditions along the left side. If a particular value of C i from a mobile station is not shown on the table, the largest value of C that does not exceed the value from the mobile station may be used when determining the power fraction Φ that will produce a particular data rate. It should also be noted that it is possible to represent each table in other forms such as graphical form. It should also be noted that for some values of C, higher data rates are not available even if the fraction of total cell or sector power Φ=1. For example, in the table of FIG. 6B where the FER is 0.001%, the rates r 3 and r N are not available for C i = C 1 and the rate r N is not available for C i = C 2 . These examples illustrate the situation when a channel condition is too poor to support higher data rates even if all of the cell or sector's power is used to communicate with the mobile station. In the case of FIG. 6C where the FER is even lower (0.0001%), more data rates are unavailable for lower values of C. In this example, none of the standard data rates are available at a FER of 0.0001% when the channel condition C i = C 1 . A value r max / i is determined for each mobile station using the tables of FIGS. 6A, 6B and 6C based on the channel condition C i provided by the mobile station, and based on the FER associated with the mobile station's class of service. It is also possible to simply give all of the mobile stations the same FER. When determining the value r max / i it is assumed that all of the cell or sector's transmission power is available for one mobile, i.e., it is assumed Φ=1. As a result, r max / i is set equal to the highest rate available for a channel condition C i . The values r max / i are entered into the table of FIG. 5 along row 82. It should be noted that the rates r max / i may change over time as channel conditions C i vary. Row 84 indicates the amount of data currently in a queue associated with a particular mobile station, and row 86 indicates the arrival time A i of the oldest data in the queue associated with a particular mobile station. Row 88 indicates a deadline that is calculated for each mobile station. Deadline D i is calculated in accordance with Equation 2 where most of the variables are taken from the table of FIG. 5. D i = S( SIZE i r max i ) + A i The value S, or stretch variable, indicated in Equation 2 is initially set equal to 1. It should be noted that the deadline D i for each mobile station may be recalculated for each transmission period so that the deadline changes from transmission period to transmission period. It should also be noted that the channel conditions C i and data rates r max / i associated with each mobile station may be recalculated periodically, for example they may be recalculated for each transmission period. It is also possible to keep the initial C i and r max / i that were calculated when the mobile station was first entered into the table of FIG. 5. Once a deadline D i is established for each mobile station, a scheduling priority may be established for transmitting data to the mobile station. In some systems, data may be transmitted to one mobile station at a time, therefore providing that mobile station with the entire transmit power that is available. In other systems, data may be transmitted to several mobiles at a time, therefore requiring the sharing of the total transmit power. In the case where data is transmitted to only one mobile at a time, the mobile station with the earliest deadline is given the highest scheduling priority and is selected to receive data that is transmitted at the rate r max / i associated with that mobile station. At the end of that transmission period, the values D i may be recalculated and a mobile station is selected to receive data. It is also possible to keep the values D i until the mobile station currently selected to receive data no longer has data in the queue. Once a particular mobile station's queue is emptied, the value S is recalculated for use in further deadline calculations. The value S is recalculated in accordance with Equation 3. S = F i -A i SIZE i /r max i The variable F i corresponds to the completion time or the time at which the particular mobile station's queue was emptied and the value r max / i may be taken from the table of FIG. 5. It should be noted that the value r max / i may be the initial value that was calculated when the mobile station was first entered into the table, or the current value of r max / i which may be the latest of many recalculated values. If r max / i was recalculated, the history of the values of r max / i may be used to determine the value of r max / i in Equation 3. It is possible to determine the value r max / i of Equation 3 by selecting the maximum or minimum r max / i value from the history, or the value used in Equation 3 may be based on an average or any function of the history of r max / i values. FIG. 7 is a flowchart for establishing transmission scheduling priorities to mobile stations in a system where data is transmitted to only one mobile station at a time. The flowchart of FIG. 7 is executed for each transmission period. In step 110, S is initially set equal to 1. In step 112, the channel condition variable C i is obtained or determined for each mobile station. In step 116, the largest standard rate r max / i is determined using C i and the calibration data tables. In step 118, the deadlines are calculated for each mobile station in accordance with Equation 2. The earliest deadline is selected in step 120, and in step 122 data is transmitted to the selected mobile station at the maximum standard rate associated with that mobile station using the entire power budget for the cell or sector in which the mobile station is located (power fraction Φ=1). In step 124, it is determined whether the mobile station's queue has been emptied. If it is determined that the mobile station's queue is not empty, steps 112 and 116 are executed where C i and r max / i may be redetermined for all mobile stations including new mobile stations that have data in the queue. It is also possible to redetermine C i and r max / i for only the new mobile stations while maintaining the older values for mobile stations that previously had data in the queue. If in step 124 it is determined that the mobile station's queue has emptied, the finish time F i associated with that mobile is stored in the table of FIG. 5 and a new value of S is calculated in accordance with Equation 3. It should be recalled that this new value of S can be calculated using a history of values for r max / i. The history of r max / i values is available when the value r max / i is redetermined each time steps 112 through 116 are executed. When a history is available, the maximum of the history of r max / i values may be selected, or the average of the values may be selected. If the new r max / i is not redetermined for each mobile station, and the initial r max / i value is kept, then the initial value of r max / i may be used in Equation 3 when recalculating S. In step 130, the mobile station associated with the emptied queue is removed from the table of FIG. 5, and then step 112 is once again executed. As discussed earlier, the variables for each mobile station may be redetermined each time the flowchart of FIG. 7 is executed, or they may be determined once and then stored when a mobile station's data initially enters the queue. FIG. 8 illustrates a scheduling scheme that is similar to that of FIG. 7 except that data is transmitted to n mobile stations at one time. As with FIG. 7, this flowchart is executed for each transmission period. In step 150, the stretch variable S is initially set equal to 1 and then in step 152, the value C i is obtained for each mobile station. The standard maximum rate r max / i is determined for each mobile station in step 156 using C i and the calibration data tables; but in this case, Equation 4 is used to calculate the value of power fraction Φ. Φ = 1 n This is necessary because the total transmission power P for the cell or sector is now shared across n mobile stations equally. In step 158, the deadlines D i are calculated for each mobile station in accordance with Equation 2 and in step 160; the n mobile stations having the earliest deadlines and therefore the highest scheduling priorities are selected. In step 162, data is transmitted to the n mobile stations where each mobile station receives data at the maximum standard rate r max / i associated with that mobile station using a power level of P Φ. In a fashion similar to FIG. 7, in step 164 it is determined whether any of the n mobile stations have emptied their queue. If none of the queues are empty, step 152 is executed. As mentioned earlier, the values C i and r max / i may be redetermined for all mobile stations or they may be redetermined for just the new mobile stations that have data in the queue. If in step 164 it is determined that one or more of the n mobile stations have emptied their queues, the completion times F i are stored in the table of FIG. 5 during step 166. In step 168, a new value of S is calculated in accordance with Equation 3 using the rate r max / i from the table in FIG. 5, or using one of the rates or average of the rates in the rate history associated with the mobile station. If more than one mobile station's queue is emptied at this time, the value of S may be recalculated based on any one of the mobile stations. The new value of S may also be determined by calculating a value of S based on each of the mobile stations with an empty queue and then selecting the largest value of S as the new S value for use in Equation 2. After the recalculation of S, step 170 is executed where the mobile stations associated with emptied queues are removed from the table of FIG. 5. After step 170, step 152 is executed as discussed above. FIG. 9 illustrates a system where data is transmitted to more than one mobile station simultaneously; however, each mobile station does not receive the same amount of transmission power. As with the other flowcharts, it should be noted that the flowchart of FIG. 9 is executed for each transmission period. In step 200, S is initially set equal to 1 and in step 202, the value C i is obtained for each mobile station. In step 206, using C i and the calibration data tables, the maximum standard rate r max / i is determined for each mobile station assuming that each mobile station gets the total transmit power budget for a particular cell or sector, i.e., Φ=1. In step 208, the deadline D i is calculated for each mobile station in accordance with Equation 2. In step 210, the mobile station with the earliest deadline and therefore highest scheduling priority is selected. In step 212 and in accordance with Equation 5, the first selected mobile station is assigned the maximum standard rate r max / i associated with that mobile station from the table of FIG. 5 using a transmit power level P i . The transmit power P i is calculated using the value Φ i associated with that mobile station, where P is the total transmission power for the cell or sector. The value Φ i is obtained from the calibration data tables using the values of C i and r max / i associated with the mobile station. P i =PΦ i In step 214 and in accordance with Equation 6, the leftover power P LO is determined. P LO = P - PΦ i The leftover power is determined by subtracting the power associated with the transmissions for the first mobile station from the total power available for the cell or sector. In step 216, the mobile station with the next earliest deadline D i and therefore next highest scheduling priority is selected. The leftover standard rate R maxLO / i for the selected mobile is determined based on the value of C i associated with the selected mobile and the leftover power fraction Φ LO using the calibration data tables. The value of Φ LO is determined using Equation 7. Φ LO = P LO P When using the calibration data table to determine r maxLO / i, the rate associated with the largest Φ that does not exceed Φ LO is used. In step 220, it is determined whether a maximum standard leftover rate r maxLO / i is available from step 216. It should be noted that an r maxLO / i may not be available because for some values of C, Φ LO may be less than the Φ associated with the lowest standard rate in the calibration data table. If r maxLO / i is unavailable, step 226 is executed. If r maxLO / i is available, step 222 is executed where the maximum standard leftover rate is assigned to the second selected mobile station using a power level P i that is equal to the value calculated in accordance with Equation 8, where the value C i and r maxLO / i are used to obtain the value Φ i from the calibration data table. P i = PΦ i In step 224, it is determined what additional power is leftover by subtracting the power associated with the transmissions that will be made to the first and/or other mobile stations that are scheduled to receive data from the total transmission power available to the cell or sector. P LO = P - P i - ... - P j In step 226, it is determined whether the remaining leftover power is greater than zero. If the power is not greater than zero, step 228 is executed to begin transmission. If the power is greater than zero, step 230 is executed where it is determined whether all of the mobile stations having data in the queue have been examined to determine whether it is possible to transmit data to those mobile stations using some leftover power. If it is determined that all the mobile stations have not been examined, step 216 is executed. In step 216, the mobile station with the next earliest deadline D i and therefore next highest scheduling priority is selected for examination to determine whether there is sufficient leftover power to transmit to the selected mobile station using at least the lowest standard data rate. If it is determined that all the mobile stations having data in the queue have been examined, step 228 is executed where transmissions are made to each of the j mobile stations that were assigned a transmission rate and power level. Data is transmitted to each of the j mobile stations at the data rate and power level calculated for that mobile station. In step 232, it is determined whether any of the j mobile stations are now associated with an empty queue. If no queues have been emptied, step 202 is executed. It should be noted that, as discussed earlier, the values C i and r max / i may be redetermined for each transmission period for all the mobile stations in the table of FIG. 5, or the originally calculated values may be kept for each mobile station while new values are calculated for the new mobile stations. If in step 232, it is determined that any of the j mobile stations have emptied a queue, step 234 is executed where the finish time F i is entered into the table of FIG. 5. In step 236, a new S is calculated using Equation 3 where, as discussed earlier, the r i max value used in Equation 3 may be the originally calculated value or it may be obtained using the history of r max / i values. If more than one mobile station's queue has been emptied, it is possible to simply recalculated S using any one of the mobile stations that have an empty queue. The new value of S may also be determined by calculating a value of S based on each of the mobile stations with an empty queue, and then selecting the largest resulting value as the new S value for use in Equation 2. After S has been recalculated, step 238 is executed where the mobile stations associated with empty queues are deleted from the table of FIG. 5. At this point, step 202 is executed where, as discussed above, all the values in the table of FIG. 5 may be redetermined for all of the mobile stations or where the values for just the new mobile stations are determined.

Claims: A method for scheduling communications, characterized by the steps of: associating a channel condition value with each of a plurality of mobile stations (18, 20, 22) to create a plurality of associated channel condition values, where each associated channel condition value indicates a quality of a communication channel to a mobile station (18, 20, 22) and where at least two of the plurality of associated channel condition values are unequal; and determining a mobile station scheduling priority for each of the plurality of mobile stations (18, 20, 22) using the associated channel condition values. The method of claim 1, characterized in that the associated channel condition values are updated at least once per transmission period. A method for scheduling communications, characterized by the steps of: assigning a transmission rate to each of a plurality of mobile stations (18, 20, 22) to create a plurality of assigned transmission rates, where at least two of the plurality of assigned transmission rates are unequal; and determining a mobile station scheduling priority for each of the plurality of mobile stations (18, 20, 22) using the assigned transmission rates. The method of claim 3, characterized in that the assigned transmission rates are updated at least once per transmission period. The method of claim 1 or 3, characterized in that the step of determining the mobile station scheduling priority comprises using a measure of an amount of data in a queue associated with each of the plurality of mobile stations (18, 20, 22). The method of claim 1,2,3,4 or 5, characterized in that the step of determining a mobile station scheduling priority is performed at least once per transmission period. The method of claim 5, further characterized in that the step of transmitting data from the queue to at least a highest priority mobile station (18, 20, 22) having a highest mobile station scheduling priority. The method of claim 5, further characterized in that the step of transmitting data from the queue to only a highest priority mobile station (18, 20, 22) having a highest mobile station scheduling priority. The method of claim 5, further characterized in that the step of transmitting data from the queue to each of a selected plurality of mobile stations (18, 20, 22), the selected plurality of mobile stations (18, 20, 22) belonging to the plurality of mobile stations (18, 20, 22) and having a higher mobile station scheduling priority than an unselected plurality of mobile stations (18, 20, 22) belonging to the plurality of mobile stations (18, 20, 22). The method of claim 9, characterized in that transmissions to each of the selected plurality of mobile stations (18, 20, 22) are made using substantially equal transmit power. The method of claim 9, characterized in that transmissions to each of the selected plurality of mobile stations (18, 20, 22) are made using unequal transmit power.

Inventors: KADABA SRINIVAS R, NIRANJAN SUDHIR JOSHI, SUNDARAM GANAPATHY SUBRAMANIAN, KADABA, SRINIVAS R., NIRANJAN, SUDHIR JOSHI, SUNDARAM, GANAPATHY SUBRAMANIAN
Applicants: LUCENT TECHNOLOGIES INC, LUCENT TECHNOLOGIES INC.
Application year: 2000
Main classification: H04Q7
IPC codes: H04L12, H04W84, H04W28, H04W24, H04W72