Communication system for forward link rate scheduling
Abstract
A communication system comprising: at least one transmitter (42) of cellular headquarters, each transmitter (42) of cellular headquarters being adapted to transmit primary traffic not programmed by at least one primary channel; a channel programmer (12) adapted to program secondary traffic in a set of at least one secondary channel; wherein said channel programmer (12) is adapted to program said secondary traffic according to a residual capacity of the direct link of said transmitter, or cell-based transmitters (42), in which said channel programmer (12) is additionally adapted to program said secondary traffic according to a total transmission power required.

Term
Term ended
Projected expiry passed 10 February 2018, 8.6 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
34 claims: 2 independent, 32 dependent
- 1ES 2 293 452 T3 ES 2 293 452 T3 CLAIMS REIVINDICACIONES 1. A communication system that includes:1. Un sistema de comunicación que comprende: al menos un transmisor (42) de sede celular, estando cada transmisor (42) de sede celular adaptado para transmitir tráfico primario no programado por al menos un canal primario;at least one cell-site transmitter (42), each cell-site transmitter (42) being adapted to transmit unscheduled primary traffic on at least one primary channel;a channel scheduler (12) adapted to schedule secondary traffic on a set of at least one secondary channel;un programador (12) de canales adaptado para programar tráfico secundario en un conjunto de al menos un canal secundario;en el cual dicho programador (12) de canales está adaptado para programar dicho tráfico secundario según una capacidad residual del enlace directo de dicho transmisor, o transmisores, (42) de sede celular, en el cual dicho programador (12) de canales está adicionalmente adaptado para programar dicho tráfico secundario según una potencia total de transmisión requerida. wherein said channel scheduler (12) is adapted to schedule said secondary traffic according to a residual forward link capacity of said cell-site transmitter (s) (42), wherein said channel scheduler (12) is additionally adapted to schedule said secondary traffic according to a required total transmission power.
- 18A method for scheduling transmissions in a communication system, comprising at least one cell-site transmitter (42), with each cell-site transmitter (42) transmitting unscheduled primary traffic on at least one primary channel, and the procedure comprising:18. Un procedimiento para programar transmisiones en un sistema de comunicación, que comprende al menos un transmisor (42) de sede celular, con cada transmisor (42) de sede celular transmitiendo tráfico primario no programado por al menos un canal primario, y comprendiendo el procedimiento: determinar una capacidad residual de enlace directo de dicho transmisor, o transmisores (42) de sede celular;determining a residual forward link capacity of said cell-site transmitter (s) (42);determinar una potencia total de transmisión requerida;determining a total required transmit power;programar, por medio de un programador (12) de canales, el tráfico secundario en un conjunto de al menos un canal secundario, según dicha capacidad residual de enlace directo de dicho transmisor, o transmisores (42), de sede celular y dicha potencia total de transmisión requerida. schedule, by means of a channel scheduler (12), the secondary traffic in a set of at least one secondary channel, according to said residual direct link capacity of said cell-site transmitter, or transmitters (42), and said total power required transmission.
Independent claims2
274 paragraphs in 21 sections, as filed
ES 2 293 452 T3
DESCRIPTION
Communication system to program direct link speeds.
Background of the invention
I. Field of the invention
The present invention relates to data communication. More specifically, the present invention relates to a method and apparatus for programming forward link rates for data transmission in a communication network.
II. Description of Related Art
Document WO 96/37081 discloses an accredited bandwidth allocator for a radio system, which refers to a bandwidth allocation plan that can make better use of the available bandwidth within the system, only allocating codes when mobiles are active. By counting the number of data units that have been correctly received by an air interface, the bandwidth allocation plan is able to establish an equitable allocation of codes for mobiles, such that each mobile within the system receives a portion Equitable bandwidth and support equal delays.
EP 0 656 716 A1 shows a mobile radio station with multiple cells. In each cell of the code division multiple access mobile radio station, a power control, based on the carrier-to-interference ratio of each mobile station, is performed on the link between base and mobile. The power control is carried out by a device that is associated with the base station and that, in a complete period, during which the carrier-to-interference ratios do not vary, allocates to each traffic channel directed towards the active mobile stations. a fraction of the total power available for the transmission of traffic information to the mobile station. This fraction is determined in order to equalize the carrier to interference ratios of all mobile stations, and keep the total power constant for a given number of active channels.
The ability to work with a variety of applications requires a modern communication system. One such communication system is a code division multiple access (CDMA) system that complies with the “TIA / EIA / IS-95A Mobile Station-Base Station Compatibility Standard for Dual-Mode Wideband Spread Spectrum Cellular System” [“ TIA / EIA / IS-95A Standard for Compatibility between Mobile Station and Base Station for a Broadband Spread Spectrum Cellular System in Dual Mode ”], hereinafter referred to as“ IS-95A standard ”. The CDMA system allows voice and data communications between users, through a terrestrial link. The use of CDMA techniques in a multiple access communication system is disclosed in US Patent No. 4,901,307, entitled "SPREAD SPECTRUM MULTIPLE ACCESS COMMUNICATION SYSTEM USING SATELLITE OR TERRESTRIAL REPEATERS" spread spectrum using satellite or terrestrial repeaters ”], and US Patent No. 5,103,459, entitled "SYSTEM AND METHOD FOR GENERATING WAVEFORMS IN A CDMA CELLULAR TELEPHONE SYSTEM", both transferred to the assignee of the present invention.
The IS-95A standard has been designed to optimize voice communication, and many of the important system design parameters are selected to achieve this goal. For example, since a time delay between peers is unacceptable, an attempt will be made to minimize processing delays. Each user will be assigned a traffic channel capable of transmitting voice data throughout the call. At the end of the call, the traffic channel will be available to another user.
According to the IS-95A standard, each traffic channel is designed to support a symbol rate of 19.2 Ksps. Using a 1/2 rate convolutional encoder, the data rate of each traffic channel is close to 9.6 Kbps. Although not specified in the IS-95A standard, higher data transmission rates are permissible thanks to the use of other code rates, For example, a data transmission rate of 14.4 Kbps is obtained using an encoder rate 1/2 convolutional and suppressing two out of eight symbols, to obtain a punctured rate 3/4 convolutional encoder.
The CDMA system must operate within the pre-existing frequency allocation in the cellular band. By design, a 1.2288 MHz bandwidth is assigned to IS-95A compliant CDMA systems so that the cellular band is fully utilized. Forward link refers to transmission from a cell to remote stations. On the forward link, the 1.2288 MHz bandwidth is divided into 64 code channels, each of which has a capacity of 19.2 Ksps. Most code channels are defined as traffic channels that are assigned, upon request, to users for voice communication. Some code channels are defined as paging channels that are used for paging and messaging between the cell and remote stations. Various code channels, such as pilot and sync channels, are reserved for system overhead.
ES 2 293 452 T3
In the CDMA system, users communicate with each other through remote stations which, in turn, communicate with each other through one or more base stations. As used herein, the term "base station" refers to the hardware with which remote stations communicate. The term "cell" refers to hardware or geographic coverage area, depending on the context in which the term is used.
In the CDMA system, communications between users are directed through one or more cells that are served by base stations. A first user at a remote station communicates with a second user at a second remote station, or with an ordinary telephone, by transmitting voice data over the reverse link to a cell. The cell receives the voice data and can route the data to another cell or a public switched telephone network (PSTN). If the second user is at a remote station, the data is transmitted over the forward link from the same cell, or from a second cell, to the second remote station. Otherwise, the data is routed through the PSTN to the second user of the ordinary telephone system. In IS95A systems, the forward link and the reverse link are assigned different frequencies, and the links are independent of each other.
The remote station communicates with at least one cell during a communication. CDMA remote stations are capable of communicating with several cells at the same time during a soft handoff. A soft handoff is the procedure of establishing a link with a new cell before breaking the link with the previous cell. Soft transfer minimizes the likelihood of calls being dropped. The procedure and system for providing communication with a remote station through more than one cell during the soft handoff procedure are disclosed in US Patent No. 5,267,261, entitled "MOBILE ASSISTED SOFT HANDOFF IN A CDMA CELLULAR TELEPHONE SYSTEM "[" Continuous transfer assisted by mobile phone in a CDMA cell phone system "], transferred to the assignee of the present invention. Soft handoff affects various aspects of CDMA system design because attention needs to be paid to the status and capacity of each of the various cells involved in soft handoff when a new resource allocation is made.
The CDMA system is a spread spectrum communication system. The benefits of spread spectrum communication are well known in the art and can be appreciated by referring to the references cited above. Each code channel of the CDMA system can transmit up to 19.2 Ksps. The 19.2 Ksps are then spread across the entire 1.2288 MHz bandwidth of the system. The CDMA IS-95A system increases capacity by transmitting fewer bits, and therefore using less power, when the user is not speaking. Since the capacity of the forward link between the cell and the remote station is limited by the maximum transmit power available to the cell, reducing the transmit power during idle periods allows the forward link capacity to be increased.
The user of each remote station transmits at a different bit rate, depending on the level of voice activity in that user's conversation. A variable rate speech vocoder provides speech data at full speed when the user is in active conversation, and at slow speed during periods of silence (eg, pauses). The variable rate vocoder is described in detail in US Patent No. 5,414,796, entitled "VARIABLE RATE VOCODER", assigned to the assignee of the present invention.
The forward link capacity for voice communication between the cell and remote stations, measured by the number of users that the CDMA system can support, can be determined by the user bit rate of each remote station. This is so, because other parameters, which determine the capacity of the forward link, are set by the design of the system or are given. For example, the maximum transmission power available for each cell is limited by FCC (Federal Communications Commission) regulations and also by acceptable levels of interference with adjacent cells. The transmit power required for a given symbol rate depends on the ratio of energy per bit to noise (Eb / No) required for the remote station, the path loss (e.g., the location of the remote station within the cell) and the noise level, which are factors that cannot be controlled. The Eb / No ratio needed to maintain the desired performance level depends on the condition of the channel (eg fading). Lastly, the 1.2288 MHz bandwidth of the CDMA system is selected by design.
In the forward link, the necessary transmission power also depends on the orthogonality of the code channels. Walsh code spreading is used to obtain the orthogonality of the forward link code channels. Orthogonality minimizes interference between code channels. This orthogonality is not preserved in a multipath environment and consequently the interference level increases. The necessary transmit power is then increased to maintain the same Eb / No operating ratio.
The magnitude of vocal activity at a given time is non-deterministic. Also, there is usually no correlation in the level of speech activity between users. Consequently, the total power transmitted from a cell to all users in that cell varies with time and can be estimated as a Gaussian distribution. During the period of time when the level of speech activity is high and the transmit power
ES 2 293 452 T3 required exceeds the maximum transmission power available to the cell, each bit of voice data is transmitted with less than optimal power. Since the path loss is fixed, the Eb / No ratio is reduced. The reduction of the Eb / No causes an increase in the probability of frame errors in the voice data received by the users. This event is called a "temporary outage."
The number of users capable of accessing the communication system is limited in order to maintain a predetermined frame error rate (TET). Limiting the forward link capacity to maintain the predetermined TET forces the cell to transmit at less than the maximum capacity, on average, thereby under-utilizing the forward link capacity of the cell. In the worst case, up to half of the forward link capacity is wasted to maintain a slack of up to 3 dB. Slack is the difference between the maximum transmit power available in the cell and the average transmit power of the cell. The slack is only used during the period when the vocal activity of the users is high.
Data communication within the CDMA system has different characteristics than voice communication. For example, data communication is usually characterized by a long period of inactivity, or low activity, punctuated by strong bursts of data traffic. An important system requirement for data communication is the transmission delay necessary to transfer the data burst. Transmission delay does not have the same impact on data communication as it does on voice communication, but it is an important metric for measuring the quality of the data communication system.
A method for transmitting data traffic in fixed-size code channel frames, where the data source provides the data at variable rate, is described in detail in US Patent No. 5,504,773, entitled "METHOD AND APPARATUS FOR THE FORMATTING OF DATA FOR TRANSMISSION ”, transferred to the assignee of the present invention. The data is divided into data frames, and each data frame can be further divided into data portions. The data portions are then encoded into code channel frames that are 20 msec wide. At the 19.2 Ksps symbol rate, each code channel frame contains 384 symbols. A 1/2 speed convolutional encoder, or 1/2 punch speed for 3/4 speed, is used to encode the data, depending on the application. Using a 1/2 speed encoder, the information rate is approximately 9.6 Kbps. At the 9.6 Kbps data rate, there are 172 data bits, 12 cyclic redundancy check (CRC) bits, and 8 code tail bits for each code channel frame.
High speed data transmission over the forward link can be achieved by simultaneously transmitting data traffic over multiple code channels. The use of multiple code channels for data transmission is disclosed in US Patent Application No. 08 / 656,649, entitled "METHOD AND APPARATUS FOR PROVIDING RATE SCHEDULED DATA IN A SPREAD SPECTRUM COMMUNICATION SYSTEM" ["Procedure and apparatus to Provide Scheduled Rate Data in a Spread Spectrum Communication System "], filed May 31, 1996, and assigned to the assignee of the present invention.
The demand for the forward link changes continuously over time, due in part to variations in the level of vocal activity. The inefficient use of the forward link can be improved by transmitting data traffic during the period of low speech activity. In order to avoid degradation in the quality of voice communication, the data transmission should be dynamically adjusted to match the available capacity of the forward link of the cell.
When dealing with sporadic large bursts of data traffic, a system should be designed with the ability to transmit at high data rates, and with the ability to allocate direct link resources to users whenever requested, based on availability. of the resource. In a CDMA system, the design will need to take other system considerations into account. First, since voice communication cannot tolerate a long delay, the transmission of voice data should be given priority over the transmission of any type of data traffic. Second, since the magnitude of speech activity at any given time is unpredictable, the forward link must be continuously monitored and data transmission must be dynamically adjusted so as not to exceed the forward link capacity. Third, since the user may be experiencing soft handoff between multiple cells, the data rate must be assigned based on the forward link capacity of each of the cells involved in the soft handoff. The present invention addresses these and other issues.
Summary of the invention
According to the present invention, there is provided a communication system, as set forth in claim 1, and a method for scheduling transmissions, as set forth in claim 18. Embodiments of the present invention are provided in the dependent claims.
According to one aspect of the present invention, a method is provided for scheduling data transmissions over a direct link of a communication network comprising at least one cell and at least one scheduled user, said method comprising the following steps: determining the forward link capacity available to each of said cell (s); assign a baud rate assigned to ca
ES 2 293 452 T3 gives one of said programmed user (s) and send said assigned transmission speed to said programmed user (s), and in which said assigned transmission speed it is based on said forward link capacity available to each of said cell (s).
According to another aspect of the present invention, there is provided an apparatus for scheduling the transmission of data over a direct link in a communication network comprising at least one cell and at least one programmed user, said apparatus comprising: control means for collecting status information for said communication network and for scheduling data transmissions from said cell (s) to said scheduled user (s); memory means connected to said control means for storing said status information; and timing means connected to said control means for providing timing signals to said control means, said timing signals allowing scheduling of data transmission to said control means.
The present invention also provides apparatus for scheduling data communication over a direct link between a base station and one or more remote stations of a cell, the apparatus comprising: means for determining, in each period of a sequence of scheduling periods, the resources available in the cell for data communication over the forward link; means for allocating the resources available in each scheduling period to the remote station, or to each remote station; and means for controlling data communication over the forward link, according to the resources respectively assigned to the remote station, or to each remote station.
The present invention also provides a method for scheduling data communication over a direct link between a base station and one or more remote stations of a cell, the method comprising the following steps: determining, in each period of a sequence of scheduling periods , the resources available in the cell for data communication over the forward link; allocating the available resources in each scheduling period to said remote station, or to each remote station; and controlling data communication over the forward link, according to the resources respectively assigned to the remote station, or each remote station.
In a CDMA system, forward link utilization is improved and the data communication delay is reduced by providing means of transmitting data traffic through the primary and secondary code channels. Each remote station is assigned a primary code channel for the duration of communication with a cell. The primed code channel can be used by the cell to effect unscheduled transmissions of small amounts of data and control messages without the additional delay caused by scheduling. Remote stations may or may not be assigned secondary code channels. The secondary code channels can be of several types and each type can have the same transmission capacity as the primary code channel or a different capacity. Secondary code channels are assigned by the channel scheduler for the scheduled transmission of high speed data traffic. Secondary code channels are assigned by a channel scheduler in each programming period, and may be reassigned during the programming period, depending on the availability of forward link capacity. In addition, the secondary code channels may be grouped into sets of secondary code channels, each set being defined by means of a unique grouping of secondary code channels.
When the cell presents a large amount of data to transmit to the remote station, the channel scheduler collects information regarding the amount of data to be transmitted, the forward link capacity available for each cell in the network, and other parameters to be indicated. later. Based on the information collected and based on a list of system goals, the channel scheduler schedules high-speed data transmission, assigning a resource to the remote station and selecting a set of secondary code channels corresponding to the assigned transmission speed. . The data is divided into data frames, and each data frame can also be divided into data portions. All data portions are encoded and distributed in code channel frames. The code channel frames are transmitted through the assigned primary and secondary code channels. The remote station receives the code channel frames for each of the assigned code channels and reassembles the data portions of the code channel frames. If the transmission power demand for the forward link increases, one or more secondary code channels may be temporarily abandoned, as needed, to meet the additional demand.
The data transmission rate is assigned by the channel scheduler based on the amount of data to be transmitted. Small amounts of data are transmitted immediately over the primary code channel. For larger amounts of data, the channel programmer assigns secondary code channels. Secondary code channels increase the forward link transmission speed and therefore reduce the time required to transmit larger amounts of data.
Users of the CDMA system are assigned a priority based on a group of factors. These factors include the transmission power per bit required by the user for the required level of performance, the list of cells serving the user, the amount of data to be transmitted, the type of data to be transmitted, the type of data service that is provided to the user and the amount of delay the user has already experienced. The available resources are assigned first to the user with the highest priority and last to the user with the lowest priority.
ES 2 293 452 T3
Brief description of the drawings
The characteristics, objects and advantages of the present invention will become more apparent from the detailed description of an embodiment given below, taken in conjunction with the drawings, in which similar reference characters are uniformly used for refer to similar elements, and in which:
Figure 1 is a diagram of a cellular network comprising a plurality of cells, a plurality of base stations, and a plurality of remote stations;
Figure 2 is a block diagram illustrating the implementation example of the present invention in a CDMA transmission system;
Figure 3 is a block diagram of the channel controller;
Figure 4 is a block diagram of the remote station receiver structure example;
Figure 5 is a forward link rate schedule flow chart of the present invention;
Figure 6 is a flow chart of the baud rate assignment of the present invention;
Figure 7 is a flow chart of the baud rate reassignment of the present invention;
Figure 8 is a timing diagram representing the allocation of transmission rates and the transmission of data at the assigned transmission rate, and Figure 9 is a diagram representing an example of use of forward link rate scheduling. the present invention.
Detailed description of the preferred embodiments
With reference to the Figures, Figure 1 represents an example of a cellular communication network that is composed of several cells 2a to 2g. Each cell 2 receives the service from a corresponding base station 4. In the exemplary embodiment, the cellular network is a CDMA communication network, although the present invention is applicable to all wireless communication formats. Scattered throughout the CDMA network, there are several remote stations 6. Each of the remote stations 6 communicates with one or more cells, depending on whether or not the remote station is undergoing a soft handoff. For example, remote stations 6a and 6b communicate exclusively with base station 4c, remote stations 6d and 6e communicate exclusively with base station 4d, but remote station 6c, which is located near the edge of a cell, is experiencing a seamless handoff and communicating simultaneously with base stations 4c and 4d. The use of soft handoff in a CDMA system is described in detail in the aforementioned US Patent No. 5,267,261,
Figure 2 shows an example block diagram illustrating the basic architecture of the CDMA network. The base station controller 10 interfaces with a packet network interface (IRP) 22, the PSTN 30, and all base stations 4 in the CDMA network (only one base station 4 is shown in Figure 2, for simplicity) . The base station controller 10 coordinates communication between the remote stations 6 of the CDMA network and other users connected to the packet network interface 22 and the PSTN 30. The PSTN 30 interfaces with users via the telephone network current (not represented in Figure 2).
The data source 20 contains a large amount of information that must be transmitted to the remote station 6. The data source 20 provides the data to the packet network interface 22. The packet network interface 22 receives the data and provides it to the selection element 14. The base station controller 10 contains many selection elements 14, although only one is shown in Figure 2, for simplicity. A selection element 14 is assigned to control communication between one or more base stations 4 and remote station 6. If selection element 14 has not been assigned to remote station 6, indicating that a channel has not been assigned From the primary code to remote station 6, packet network interface 22 indicates to call control processor 16 that remote station 6 needs to be located. Call control processor 16 then instructs base station 4 to locate remote station 6 and assigns a primary code channel to remote station 6. Once remote station 6 has been assigned a primary code channel and Once the selection element 14 has been assigned, the packet network interface 22 supplies data from the data source 20 to the selection element 14. The selection element 14 maintains a queue that contains the data to be transmitted to the remote station 6.
Channel programmer 12 connects to all selection elements 14 within base station controller 10. The channel scheduler 12 schedules the high speed data transmission and allocates the code channels to be used in the high speed data transmission over the forward link. The assigned baud rate programming is provided to selection element 14, routed through base station 4, and transmitted to remote station 6.
ES 2 293 452 T3
The selection element 14 sends the data, in data frames, to the base station 4. In the present specification, the term "data frame" refers to the amount of data that is transmitted from the base station 4 to the station. remote 6 in a one-frame time period. If the data transmission takes place over several code channels, the data frame is further divided into data portions, each data portion being transmitted through a primary or secondary code channel. Accordingly, a data portion may be a fraction of the data frame or the entire data frame, depending on the number of code channels used. Each piece of data is encoded and the resulting encoded data forms what is called a "code channel frame."
The data frames are sent from the selection element 14 to the channel elements 40a and 40b. Channel elements 40a and 40b format the data frames, input a set of generated CRC bits and a set of code tail bits, convolutionally encode the data, and interleave the encoded data in accordance with the disclosure of US Patent No. 5,504. 773 mentioned above. Channel elements 40a and 40b then perform spreading of the interlaced data with a long pseudo-noise (PN) code, a Walsh code, and PN codes.<sub>I</sub> and PN<sub>Q</sub> short. The spread data is frequency-boosted, filtered, and amplified by the transmitter (TRMR) 42 to obtain an RF (Radio Frequency) signal. The RF signal is transmitted through the air, via antenna 44, on forward link 50.
At remote station 6, the RF signal is received by antenna 60 and routed to receiver (RCTR) 62. Receiver 62 filters, amplifies, frequency down, and quantizes the RF signal, and provides the digitized baseband signal to the demodulator (DEMOD) 64. The digitized baseband signal is de-spread by demodulator 64 and the demodulated outputs of demodulator 64 are provided to decoder 66. The decoder 66 performs the inverse functions of the signal processing functions performed in the base station 4, in particular, the functions of deinterleaving, convolutional decoding and CRC verification. The decoded data is provided to the data sink 68. The hardware, as described above, is capable of transmitting voice and data communications over the CDMA network.
The functions described above can also be performed by other implementations. For example, channel programmer 12 and selection element 14 can be included in base station 4. The location of channel programmer 12 and selection element 14 depends on whether centralized or distributed programming processing is desired. Accordingly, other implementations of the functions described above, and which are within the scope of the present invention, may be considered.
Forward link transmissions can be divided into two classes. The first class contains unscheduled tasks that, in the preferred embodiment, have not been scheduled due to intolerance of additional processing delays. This class includes voice communications and part of the system's own overhead, such as the pilot signal, paging information, and data traffic confirmations. The second class covers scheduled tasks that can tolerate additional processing and queuing delays. This class includes most of the data communications between cells and remote stations 6. This second class can be assigned high speeds.
As shown in Figure 1, remote stations 6 are scattered throughout the CDMA network and can communicate with one or more cells at a time. Accordingly, the channel scheduler 12 coordinates the transmissions of scheduled and unscheduled tasks throughout the CDMA network. The transmission of the scheduled tasks over the direct link between the cells and the remote stations 6 is scheduled by the channel scheduler 12, based on the availability of the forward link capacity, to avoid degradation in the transmission of the scheduled tasks and not programmed, The channel programmer 12 is in charge of the function of assigning the available resources to each user programmed in the remote station 6 within the CDMA network to optimize, in this way, a set of objectives. These goals include (1) better utilization of the forward link by transmitting as many scheduled and unscheduled tasks as the system capacity limitations can support, (2) better communication quality by increasing the transmission speed and therefore minimizing data transmission delay and (3) equitable allocation of resources to all scheduled users based on a set of priorities. The objectives are optimized by balancing a list of factors that will be described in detail later.
In Figure 3, a block diagram of the channel programmer 12 of the present invention is depicted. Controller 92 collects pertinent information from all cells in the CDMA network and schedules high-speed data transmissions. Controller 92 may be implemented in a microcontroller, microprocessor, digital signal processing (DSP) chip, or an ASIC (Application Specific Integrated Circuit) programmed to perform the function as described herein. Controller 92 connects to all selection elements 14 of base station controller 10. Controller 92 collects information regarding forward link demand and available capacity in each cell. The collected information is stored in memory element 94 and is retrieved by controller 92 when needed. The memory element 94 may be implemented by a storage element or any one of the memory devices known in the art, such as RAM memory devices, latches, or other types of memory devices. Controller 92 also connects to timing element 96. Timing element 96 may be implemented with a counter that is driven by the system clock, a built-in oscillator that is synchronized. with an external signal or a storage element that receives the system timing from a source
ES 2 293 452 T3 external. Timing element 96 provides controller 92 with the timing signals necessary to perform forward link rate programming. The timing signals also allow the controller 92 to send the schedule of the baud rates assigned to the selection element 14 at the appropriate interval.
I. Direct link speed programming
Figure 5 shows the flow chart of the forward link rate scheduling procedure. The first stage of the scheduling procedure, step 200, includes the collection of all pertinent information necessary for the optimal allocation of resources to each scheduled user. Relevant information may include the maximum transmission power available for each cell, the number of scheduled and unscheduled users, the transmission power of the unscheduled task of each remote station 6 during the previous scheduling periods, the transmission power per bit for scheduled tasks from previous scheduling periods, the amount of data to be scheduled and transmitted to each user, the set of active members of each remote station 6 indicating the cells with which the remote station 6 communicates, the priority of scheduled users, and the code channels available for transmission for each cell. All these parameters are described in detail below. Once the information for each cell has been collected, the channel scheduler 12 allocates the resources to the scheduled users based on the collected information and the set of objectives mentioned above in step 202. The allocated resources may take the form of a assigned baud rate or an assigned baud power. Then, the assigned transmit power can be matched to an assigned transmit rate, based on the required energy per bit of the programmed user. The schedule of the assigned baud rates is then sent to each remote station 4 that has been assigned a baud rate in step 204. The data is sent to the selection element 14 and transmitted to the remote station 6, at the assigned transmission rate, after a predetermined number of frames. Channel scheduler 12 then waits, in step 206, until the next scheduling period to restart the scheduling cycle.
As indicated above, resource allocation can be accomplished by at least two embodiments. In the first embodiment, the channel scheduler 12 assigns a data rate to each scheduled user. And, in the second embodiment, the channel scheduler 12 assigns a transmit power to each scheduled user.
In the first embodiment, the allocation of resources to scheduled users, at step 202 of the flow chart of Figure 5, is further illustrated by the flow chart depicted in Figure 6. The channel scheduler 12 initiates the flow chart. flow of Figure 6, after having collected the pertinent information necessary for the optimal allocation of data rates to scheduled users. Channel scheduler 12 begins at step 210. In the first step, channel scheduler 12 calculates the total residual power available for each cell of the CDMA network in step 212. The total residual power available for scheduled transmission for each cell is calculated as follows:
<sup>P</sup>j <sup>P</sup>max, j <sup>P</sup>comp, j <sup>P</sup>noprog, j <sup>(1)</sup> where Pj is the total residual power available to cell j, P<sub>max</sub>, j the maximum available transmit power for cell j, P<sub>comp</sub>, j the compensation power for cell j, and P<sub>noprog</sub>, j is the expected transmit power required for unscheduled tasks in cell j. Compensation power is a value that allows cells to compensate for variations in transmit power required for scheduled and unscheduled tasks within the scheduling period. The compensation power can also be used to control the forward link power of scheduled tasks. Later, a complete and detailed description of each of the power terms in equation (1), and of obtaining equation (1), is provided.
Channel scheduler 12 then creates a priority list of all scheduled users in step 214. The priority list depends on numerous factors which are described in detail below. Scheduled users are arranged according to their relative priority, that is, the scheduled user with the highest priority is placed at the top of the list and the scheduled user with the lowest priority is placed at the bottom of the list . The channel scheduler 12 then loops and allocates the available forward link capacity to scheduled users, based on the priority list.
In the first stage within the baud rate allocation loop, the channel scheduler 12 selects the scheduled user who has the highest priority from the priority list, at step 216. The channel scheduler 12 then identifies the schedules. cells that serve this programmed user. These cells are indicated in the set of active members of the scheduled user. In the exemplary embodiment, each cell of the set of active members communicates with remote station 6 on the primary code channel. High-speed data transmission through the secondary code channels can be performed through one or more cells of the active member set. The channel programmer 12 first selects the cells
ES 2 293 452 T3 are in the set of active members that will support high speed data transmission. For each selected cell, the channel scheduler 12 calculates the maximum allowable transmission rate for the programmed user, in step 218. The maximum allowable transmission rate can be calculated by dividing the total residual power available for the selected cell by the energy per bit. necessary to transmit to the user. To ensure that the transmission power to be assigned to this scheduled user can be provided by each selected cell, the channel scheduler 12 selects the minimum transmission rate from the list of maximum allowable transmission rates, in step 220. The selected minimum baud rate is defined as the maximum baud rate for this scheduled user. The channel scheduler 12 then determines the amount of data to be transmitted to the scheduled user, based on the size of the data queue. The channel scheduler 12 recommends a preferred transmission rate, according to the size of the queue, in step 222. The preferred transmission rate is the minimum transmission rate (or a lower rate) necessary to transmit the data within the scheduling interval.
Channel scheduler 12 assigns a data rate to the scheduled user based on the preferred rate and maximum rate; at step 224. The allocated baud rate is the lower between the preferred baud rate and the maximum baud rate, also in this case, to maintain compliance with the total residual power for the selected cells, Once a data baud rate is assigned to this scheduled user, the channel scheduler 12 deletes the scheduled user from the priority list, in step 226. Next, in step 228, the total residual power available for each selected cell is updated to reflect the power assigned to the scheduled user that was just removed from the priority list. The channel scheduler 12 then determines in step 230 whether a baud rate has been assigned to all scheduled users on the priority list. If the priority list is not empty, the channel scheduler 12 returns to step 216 and assigns a data rate to the scheduled user having the next highest priority. The allocation loop repeats until the priority list contains no scheduled users. If the priority list is empty, the allocation procedure ends at step 232.
In the second embodiment, the allocation of resources to scheduled users, in step 202 of the flow chart of Figure 5, is performed by assigning a transmission power to each scheduled user, In this embodiment, steps 210, 212 and 214 they are the same as in the first embodiment, but the transmission rate allocation loop is replaced by a transmit power allocation loop. In the first stage within the transmit power allocation loop, the channel scheduler 12 selects the scheduled user having the highest priority from the priority list. Channel scheduler 12 then selects cells from the active member set to serve this scheduled user in high speed data transmission. For each selected cell, the channel scheduler 12 calculates the maximum allowable transmit power for the scheduled user. To ensure that the transmit power assigned to this scheduled user can be provided by each selected cell, the channel scheduler 12 selects the minimum transmit power from the list of maximum allowable transmit powers. The channel scheduler 12 then recommends a preferred transmit power based on the size of the queue. The assigned transmit power is the lower of the minimum transmit power and the preferred transmit power. Then, the assigned transmit power is sent to the selection element 14, which determines the assigned transmit rate based on the assigned transmit power and required energy per bit of the programmed user.
Once a transmit power has been assigned to this scheduled user, the channel scheduler 12 deletes the scheduled user from the priority list. The total residual power available for each selected cell is then updated to reflect the power assigned to the scheduled user that was just removed from the priority list. The channel scheduler 12 then determines whether a transmit power has been assigned to all scheduled users on the priority list. If the priority list is not empty, the channel scheduler 12 assigns a transmit power to the scheduled user having the next highest priority. The transmit power allocation loop repeats until the priority list contains no programmed users. If the priority list is empty, the allocation procedure ends.
In the second embodiment, the selection element 14 may assign new data rates to the scheduled users in each frame of the schedule period, based on changes in the required Eb / No ratio of the scheduled users. This enables the selection element 14 to maintain quality communication of scheduled and unscheduled tasks, maintaining the necessary Eb / No ratio while limiting the necessary transmit power to the maximum transmit power available to the cells.
The total residual power available for each selected cell can also be allocated to scheduled users without using any allocation loop. For example, the total transmit power can be assigned according to a weighting function. The weighting function can be based on the priority of scheduled users and / or other factors.
The priority list determines the allocation of resources (eg, transmit power) to scheduled users. A scheduled user with a higher priority is assigned more resources
ES 2 293 452 T3 than another that has a lower priority. Although it is preferable to allocate resources in an order based on the priority of scheduled users, this is not a necessary limitation. The available resources can be assigned according to any type of order, all of these being within the scope of the present invention.
Forward link rate scheduling can be done continuously, periodically, or staggered. If scheduling is done continuously or periodically, the scheduling interval is selected in such a way that the transmit power of the cells is fully utilized throughout the scheduling period, but does not exceed the maximum transmit power available for each cell. This objective can be achieved by the embodiments indicated below. It is possible to consider other embodiments that constitute variants or combinations of the following embodiments and that are within the scope of the present invention.
In the first embodiment, scheduling (or resource allocation) is done on each frame. This embodiment allows the channel scheduler 12 to dynamically adjust the transmit power required for scheduled tasks in each frame to fully utilize the total residual power available for each cell in the network. More processing is needed to allocate the resources in each frame. Also, more system overhead is needed to transmit, in each frame, the necessary scheduling information to each scheduled user.
In the second embodiment, scheduling is performed every K frames, where K is an integer greater than one. At each scheduling interval, the channel scheduler 12 allocates the maximum amount of resources for each scheduled task. In the exemplary embodiment, the maximum amount of allocated resources can be calculated, suppressing the compensation power, P<sub>comp</sub>, j from equation (1) and / or using a low prediction of the necessary transmit power, <sup>TO</sup>P<sub>do not</sub>pr<sub>Og</sub>, j for unscheduled tasks. Alternatively, the maximum amount of resources allocated can be calculated using a value greater than the specific value of P<sub>max</sub>, j in equation (1). Schedule of assigned baud rates is broadcast to scheduled users once per schedule period. Data transmissions at the assigned transmission rates occur after a predetermined number of frames, as indicated below. The maximum amount of resources allocated for scheduled tasks is allocated by the channel scheduler 12 for the entire scheduling period. If during a scheduling period the total residual power available to the cells does not support the transmission of data at the assigned transmission rates, the channel scheduler 12 may perform the transmission of data at lower transmission rates.
The second embodiment has the advantage that it requires less system overhead to transmit the programming of the transmission rates assigned to the scheduled users. In the first embodiment, the schedule of the assigned rates is transmitted in each frame to the scheduled users. A part of the available transmit power is thus allocated to this extra cost. In the second embodiment, the schedule of the assigned transmission rates is transmitted once in each schedule period to the scheduled users. For example, if the scheduling interval is ten frames, the second embodiment will need slightly more than 1/10 of the overhead of the first embodiment and still maintain efficient forward link utilization.
On the other hand, in a third embodiment, the scheduling of the forward link speeds can be staggered. In this embodiment, the schedule can be triggered by certain events. For example, the channel programmer 12 may perform direct channel speed programming. direct whenever a request for high-speed data transmission is received or each time a scheduled high-speed data transmission to remote station 6 ends. . Channel scheduler 12 knows the amount of data to be transmitted to each remote station 6 and the assigned transmission rate. In this way, the channel scheduler 12 can determine when the high speed data transmission ends. When the scheduled transmission to remote station 6 ends, channel scheduler 12 can perform scheduling and assign the direct link resources to other remote stations 6. The assigned transmission rate is transmitted to the remote stations 6 to which a transmission rate has been assigned.
Channel scheduler 12 can perform forward link rate scheduling for all cells in the CDMA network. This implementation allows channel scheduler 12 to effectively schedule high speed data transmission for remote stations 6 that are undergoing soft handoff and are communicating with multiple cells. Programming for the entire network is more complex, due to the various interactions between cells and remote stations 6. To simplify programming, scheduled tasks can be divided into two specific categories: scheduled tasks for remote stations 6 that are experiencing a soft handoff and scheduled tasks for remote stations 6 that are not undergoing any soft handoff. By this implementation, scheduling of forward link rates for remote stations 6 that are communicating with only one cell can be done at the cell level. Remote stations 6 that are communicating with multiple cells can be programmed by channel scheduler 12. The present invention is applicable to all implementations of forward link rate scheduling, including centralized scheduling, distributed scheduling, and any combinations of the two.
ES 2 293 452 T3
II. Reallocation of resources
In the first embodiment of the resource allocation routine described above, in which the resource allocation is performed in each frame, the resources can be reallocated during the scheduling period to match the demand of the forward link with the available transmit power. . Although resources are allocated on a frame-by-frame basis, the scheduling delay may determine that the resource allocation is less than optimal. During the programming delay, the state of the system may have changed. Also, initial forecasts may not be accurate and may require some modification.
In the second embodiment of the resource allocation routine, where the resource allocation is performed every K frames, the resources can also be reallocated during the scheduling period. In the implementation example of the second embodiment, the data transmission is performed at the assigned transmission rate for the entire scheduling period, without using the resource reallocation routine. In this way, the scheduling routine is simplified, although temporary outages may occur when the necessary transmit power exceeds the maximum transmit power available to the cell. In the preferred implementation, resources are reallocated from frame to frame to minimize outages.
If during the scheduling period the total residual power for the cells does not allow data transmissions at the assigned transmission rates, the channel scheduler 12 may determine that the data transmissions are made at lower transmission rates. For each frame in which the total residual power for the cell is inadequate to meet the demand of scheduled and unscheduled tasks, the channel scheduler 12 determines the magnitude of the increase in forward link demand and available forward link resources. and assigns lower transmission speeds for some or all scheduled users, in such a way that the transmission power required for the cells does not exceed the maximum transmission power available for the cells. In the exemplary embodiment, the lower transmission rates are called "temporary transmission rates" and are used only for one frame. For subsequent frames in the scheduling period, the assigned baud rates are used as well, unless modified, again, by the channel scheduler 12. In the exemplary embodiment, resource reallocation is performed frame by frame to ensure that the transmission power required for the scheduled and unscheduled tasks of each cell is less than the maximum transmit power available to the cells. Resource reallocation can be accomplished by various embodiments, two of which will be described below. Other embodiments that are within the scope of the present invention may also be considered.
In a first embodiment of the resource reallocation routine, which is complementary to the first embodiment of the resource allocation routine described above, the reallocation of resources is performed by reallocating transmission rates. This embodiment is illustrated in the flow chart of Figure 7. Channel scheduler 12 begins at step 240. In step 242, channel scheduler 12 creates a list of cells in the network in which the transmit power required for scheduled and unscheduled tasks exceeds the transmit power available to the cell. Channel scheduler 12 then calculates the total residual power available for each cell in the cell list using equation (1), in step 244. The channel scheduler 12 then creates the priority list of all scheduled users who are communicating with at least one cell in the cell list and who have been assigned a transmission rate for the current schedule period, at step 246. The scheduled users on the priority list are called "affected scheduled users." The channel scheduler 12 then loops and reallocates the transmission rate of some or all of the affected scheduled users based on the priority list and the cell list.
In the first stage of the baud rate reassignment loop, the channel scheduler 12 selects the affected scheduled user with the highest priority at step 248. The channel scheduler 12 then identifies the cells serving the Programmed user affected in high speed data transmission. These cells are called "selected cells." The channel scheduler 12 then calculates the affected scheduled user's maximum allowable transmission rate for each selected cell, in step 250. To ensure that the necessary transmission power for this scheduled user can be provided by each of the selected cells, the channel scheduler 12 selects the minimum transmission rate from the list of maximum allowable transmission rates and the assigned transmission rate, at step 252. The selected minimum transmission rate is defined as the temporary transmission rate. In the preferred embodiment, the temporary transmission rate is only assigned to the scheduled user for the next frame, at step 254. The affected scheduled user is removed from the priority list at step 256. Then, at step 258, the total residual power available for each selected cell is updated to reflect the power assigned to the affected scheduled user that was just removed from the priority list. Channel scheduler 12 then updates the cell list and deletes cells for which the total residual power is zero in step 260. Channel scheduler 12 then determines if the cell list is empty, at step 262. If the cell list is not empty, channel scheduler 12 determines if the priority list is empty, at step 264. If the priority list is not empty, channel scheduler 12 returns to step 248 and reassigns a data rate to the affected scheduled user having the next highest priority. The velocity remapping loop
ES 2 293 452 T3 transmission continues until the cell list or priority list is empty. If the cell list or priority list is empty, the baud rate reassignment procedure ends at step 266.
In the second embodiment, which is complementary to the second embodiment of the resource allocation routine described above, the reallocation of resources is performed by the reallocation of transmission powers. In this embodiment, steps 240, 242, and 244 are the same as in the first embodiment, but the rate reassignment loop is replaced by a transmit power reassignment loop. In the first stage of the transmit power reallocation loop, the channel scheduler 12 creates a cell list of network cells in which the transmit power required for scheduled and unscheduled tasks exceeds the available transmit power for the cell. Power deficit is defined as the amount of transmit power required by a cell minus the transmit power available to the cell. The channel scheduler 12 then creates the priority list of all scheduled users who are communicating with at least one cell in the cell list and who have been assigned a transmit power for the current schedule period. . The scheduled users in the priority list are called "affected scheduled users." The channel scheduler 12 then loops and reallocates the transmit power of some or all of the affected scheduled users according to the priority list and the cell list.
In the first stage of the transmit power reallocation loop, the channel scheduler 12 selects the affected scheduled user having the lowest priority. The channel scheduler 12 then identifies the cells serving the affected scheduled user in high speed data transmission and reallocates the transmit power to reduce the power deficit. The reallocated transmit power is sent to the selection element 14 which determines the temporary transmission rate based on the reallocated transmit power and the required energy per bit of the affected scheduled user. The affected scheduled user is then removed from the priority list and the power deficit for each selected cell is updated to reflect the recovered power. The channel scheduler 12 then updates the cell list and deletes cells that are not experiencing a power deficit. If the cell list and priority list are not empty, the channel scheduler 12 reallocates the transmit power of the affected scheduled user exhibiting the next lowest power. The transmit power reallocation loop continues until the cell list or priority list is empty. If the cell list or priority list is empty, the transmission power reallocation procedure ends.
The resource reallocation performed in each frame of the scheduling period allows the channel scheduler 12 to dynamically allocate the forward link resources in each frame. The system overhead required to transmit the program of temporary baud rates is minimal, since, in each frame, only a fraction of the scheduled users are reallocated the baud rate. In reality, reallocation is only done for the right amount of scheduled users that allows all cells in the network to transmit at a power that is less than the maximum transmit power available to the cells.
Transmission and reception of data at the temporary transmission rate can be accomplished by numerous embodiments, three of which will be described below. It is possible to consider other embodiments, which are within the scope of the present invention. In the exemplary implementation of these embodiments, the high speed data transmission takes place over several code channels. The concept of using multiple code channels and sets of code channels for high-speed data transmission is described in detail below. In essence, the transmission rate assigned by the channel programmer 12 to each remote station 6 is matched by a set of code channels. The identity of the assigned code channels is transmitted to each remote station 6. Each remote station 6 receives the data transmitted on the code channels assigned for each frame in the scheduling period. In transmitting data at the temporary rate, a subset of the allocated code channels is used.
In the first embodiment, the temporary transmission rates are transmitted over the primary code channels to the affected scheduled users of the remote stations 6. Simultaneously, in the same frame, data is transmitted to the affected scheduled users at the temporary transmission rates. . The identity of the subset is transmitted to remote station 6 in each frame in which data transmission takes place at the temporary transmission rate. Remote stations 6 demodulate the primary code channel and associated secondary code channels at the assigned transmission rates. The remote stations 6 then keep the data received by the secondary code channels associated with the temporary transmission rates and reject the rest of the data.
In each frame within the scheduling period, each scheduled user receives the data transmission at the assigned transmission rate. For each frame, the user verifies that the transmission rate has not been reassigned. If the scheduled user determines that the data transmission has taken place at the temporary rate, the scheduled user keeps the portion of data received at the temporary rate and rejects the rest of the data. It may be necessary to store the received data during a frame so that the programmed user can determine which subset of the received data is valid, due to the delay in processing the primary code channel.
ES 2 293 452 T3
In the second embodiment, the temporary baud rates are transmitted on the primary code channels to the affected scheduled users of the remote stations 6. The data transmission at the temporary baud rate occurs two frames later, once the Remote stations 6 have received the temporary baud rates and configured the hardware to receive the data transmissions at the temporary baud rates. This embodiment presents additional processing delay, but minimizes the requirement for temporary storage in memory of the remote station 6. However, this embodiment saves battery power of the remote station 6, since they are only demodulated and they decode the code channels that perform high-speed data transmission. However, due to scheduling delay, dynamic resource allocation is not optimal. Also, the schedule delay can cause an increase in the compensation power requirement in equation (1).
Finally, in the third embodiment, the remote stations 6 demodulate all the secondary code channels associated with the assigned transmission rate and perform the CRC check of the received code channel frames. The remote stations 6 then retain the data portions of the code channel frames that do not contain any frame errors and reject the code channel frames that contain errors.
III. Consideration of transmit power
As indicated above, the necessary transmission power for unscheduled tasks, such as voice communication, varies over time, but is allocated, on demand, to requesting remote stations 6. To maintain an acceptable level of signal quality, the total transmit power needed for each cell should be less than the maximum transmit power available for the cell, Therefore, the total transmit power needed for each cell should meet the equation following:
<sup>N</sup>jp + and P ·· <p <sup>r</sup>noprog, j <sup>+</sup> Zj <sup>1</sup> íj - maxj (2) in which,
P<sub>noprog</sub>, j = necessary transmission power of the jth cell for unscheduled tasks during the next scheduling period,
Nj = number of programmed users to be programmed in the j-th cell,
P<sub>1</sub>j = necessary transmission power of the i-th user programmed in the j-th cell, and
P<sub>max</sub>, j = maximum transmit power available for the jth cell.
The total transmit power required for each cell should remain below the maximum transmit power available to the cell throughout the scheduling period, to avoid unexpected degradation in the transmission of scheduled and unscheduled tasks. The maximum transmit power available to each cell may differ from cell to cell, although the upper limit is regulated by the FCC and by network issues relating to interference with adjacent cells. The objective of the channel scheduler 12 is to schedule the transmission of scheduled tasks in such a way that the transmit power throughout the scheduling period approaches the maximum transmit power without exceeding it.
In an IS-95A compliant CDMA system, the average transmit power of a cell is lowered from the maximum transmit power to maintain spare capacity. The spare capacity provides a margin to use the dynamic power control mechanism on the forward link, which is necessary, taking into account the mobility of the remote station 6. The reserve capacity also allows adaptation to variations in the transmission power required for unscheduled tasks, such as variations caused by changes in the magnitude of voice activity, during the programming period. compensation power, equation (2) becomes the following:
<sup>n</sup>j <sup>P</sup>noprog, j <sup>+</sup> Σ <sup>P</sup>ij i = 1
PP <sup>- x</sup> maxj <sup>x</sup> compj (3)
As noted above, compensation power is required to adjust for dynamic variations in unscheduled tasks. It is necessary to use the cell at an average transmit power that is less than the maximum transmit power, to provide quality communication of scheduled and unscheduled tasks. This compensation power ensures the availability of the transmission power during the period of high demand (for example, of great speech activity). The compensation power also represents an under-utilization of the forward link for most of the time (for example, during a period of normal or low speech activity). Efficient use of the forward link is achieved by dynamically changing the power
ES 2 293 452 T3 transmission of scheduled tasks to compensate for the increase or decrease in transmission power required for unscheduled tasks.
To respect the restriction imposed by equation (3), the channel scheduler 12 needs to determine the transmit power needed for the unscheduled tasks of each cell in the next scheduling period. The transmit power required for unscheduled tasks is predominantly determined by the magnitude of speech activity and channel conditions. Consequently, the necessary transmit power cannot be determined with exact precision, due to the unpredictability of speech and channel conditions. The transmit power required for unscheduled tasks can be predicted by calculating the mean value of the effective transmitted power for unscheduled tasks from previous scheduling periods. The intended transmit power for unscheduled tasks, denoted by P<sub>noprog</sub>, j, is then used in subsequent power calculations,
The necessary transmission power, P, j, for scheduled tasks can be predicted by determining the transmission energy per bit necessary to achieve the necessary performance level and the transmission speed for each user programmed in remote station 6. Each remote station 6 it requires a different transmission energy per bit depending on the location of the remote station 6 within the CDMA network and the channel conditions. For example, remote station 6a (see Figure 1) located close to the cell-site (i.e., close to base station 4c serving the cell) experiences less path loss and may therefore need less transmission power per bit to achieve the required performance level. In contrast, the remote station 6c at the edge of the cell may need more transmission power per bit to achieve the same level of performance. For each scheduled user, the selection element 14 located in the base station controller 10 knows the previous transmission power P, and the previous transmission speed Ru. These two measurements are used to calculate the energy per bit above according to the equation g, j = p, / Rj. The average energy per bit, g, j can then be determined by calculating the statistical average of g, j. For example, the average energy per bit can be defined as the average value of the last four calculated values of g, j. Once the average energy per bit of the previous transmissions is known, the channel scheduler 12 predicts the necessary transmit power, p, j, for the scheduled tasks of the next scheduling period, as p, j = g, j * R ^ , where R is the transmission speed assigned for the scheduled task. Therefore, the equation that the channel scheduler 12 must satisfy when allocating resources is as follows:
Nj <sup>P</sup>noprog, j <sup>+</sup> Σ <sup>g</sup>i, j <sup>R</sup>i, j - <sup>P</sup>max, chi = 1
P <sup>x</sup> comp (4)
The forward link transmit power for data transmission to each remote station 6 is adjusted to maintain the necessary level of performance. The forward link power control mechanism can be implemented by any one of a number of methods. For example, for voice communication over the forward link, remote station 6 determines if a received code channel frame contains errors, If a frame error is found, remote station 6 sends an error indicator bit message (BIE) to the cell, in which an increase in transmission power is requested. The cell then increases the transmit power until no frame error occurs. On the other hand, the cell can calculate a statistical average of the frame error rate (TET) and vary the transmission power as a function of the TET. These two procedures can also be used for direct link power control in the transmission of scheduled tasks. In a third procedure, the demodulator 64 of the remote station 6 calculates the signal-to-noise ratio based on the measurement of the received signal. Next, the remote station 6 transmits a message to the cell, in which it requests an increase or decrease in the transmission power, according to the calculation of the signal-to-noise ratio. The scope of the present invention is equally applicable to all procedures that can be used to determine the energy per bit necessary for data transmission.
The implementation and use of BIE transmission are disclosed in US Patent No. 5,568,483, entitled "METHOD AND APPARATUS FOR THE FORMATTING OF DATA FOR TRANSMISSION" ["Procedure and apparatus for formatting data for transmission "], Transferred to the assignee of the present invention. In addition, the use of forward link power control is disclosed in US Patent No. 08 / 283,308, entitled "METHOD AND APPARATUS FOR CONTROLLING POWER IN A VARIABLE RATE COMMUNICATION SYSTEM" ["Procedure and apparatus for controlling power in a variable speed communication system "], filed July 29, 1994, US Patent No. 08 / 414,633, entitled "METHOD AND APPARATUS FOR PERFORMING FAST FORWARD POWER CONTROL IN A MOBILE COMMUNICATION SYSTEM" ["Procedure and apparatus for performing rapid direct power control in a mobile communication system"], filed on March 31, 1995, US patent No. 08 / 559,386, also entitled "METHOD AND APPARATUS FOR PERFORMING FAST FORWARD POWER CONTROL IN A MOBILE COMMUNICATION SYSTEM", filed on November 15, 1995, US Patent No. 08 / 772,763, entitled "METHOD AND APPARATUS FOR MEASURING LINK QUALITY IN A SPREAD SPECTRUM COMMUNICATION SYSTEM" ["Procedure and apparatus for measuring link quality in a spread spectrum communication system"], filed on September 27, 1996 and US Patent No. 08 / 710.335, entitled "METHOD AND APPARATUS FOR PERFORMING DISTRIBUTED FORWARD POWER CONTROL", filed September 16, 1996, which have been transferred to the assignee of the present invention.
ES 2 293 452 T3
Channel scheduler 12 allocates forward link resources for scheduled users of each cell, such that equation (4) holds for all cells in the network. The actual transmit power required for unscheduled tasks during the next scheduling period may be higher or lower than the expected transmit power. The quality and efficiency of the communication depend on the accuracy of the prediction of the necessary transmit power during the current scheduling period. An erroneous default prediction results in inadequate power to transmit the additional forward link demand (eg, increased demand due to increased voice activity) if it is not possible to reallocate resources. In contrast, a conservative prediction in excess of the necessary transmit power results in underutilization of the forward link. The accuracy of the prediction of the transmission power required for unscheduled tasks is improved if the prediction is made as close as possible to the time when the prediction is to be used.
IV. Transfer with continuity
At any given time, all remote stations 6 in a CDMA network may be experiencing a soft handoff between cells. Each remote station 6 that experiences a soft handoff communicates with two or more cells simultaneously. The use of soft handoff in the CDMA system is described in detail in the aforementioned US Patent No. 5,267,261.
When resources are allocated to a remote station 6 that is undergoing a soft handoff, the channel scheduler 12 ensures that each cell participating in the soft handoff satisfies the constraint of equation (4). At the beginning of each scheduling interval, the selection elements 14 send the set of active members of each remote station 6 of the CDMA network to the channel scheduler 12. The active member set contains the list of all cells that are communicating with remote station 6. In the exemplary embodiment, each cell in the active member set communicates with remote station 6 on the primary code channel. High speed data transmission on the secondary code channels can be performed through one or more cells of the active member set. The channel scheduler 12 first selects the cells that are to support high speed data transmission. For each selected cell, the channel scheduler 12 calculates the maximum amount of allocated resources that the cell can support. The maximum number of allocated resources of all selected cells in the active member set forms a list of possible allocated resources. Since equation (4) must be satisfied for all selected cells, the minimum amount of allocated resources from the list of maximum amount of allocated resources meets the constraint of equation (4) for all cells. Therefore, the maximum amount of resources that can be assigned to a particular remote station 6 is the minimum amount from the list of maximum amounts of assigned resources.
V. Code channel sets
The method and apparatus for scheduling forward link rates can be applied to any communication system capable of transmitting data at a variable rate. For example, scheduling is applicable to a CDMA system, a GLOBALSTAR system, a time division multiple access (TDMA) system, or a frequency division multiple access (FDMA) system. Application to a CDMA system or other types of variable rate communication systems, using the concept of code channel sets, which will be described later, or other embodiments, are within the scope of the present invention.
An IS-95A compliant CDMA system uses Quadrature Phase Shift Keying (QPSK) spreading on the forward link. At the base station 4, the same data stream is provided to the I and Q modulators. The I and Q modulated signals are combined and transmitted. At remote station 6, demodulator 64 demodulates the received signal and provides the I and Q components. The components are combined to obtain the demodulated output. When QPSK spreading is used in this way, the 1.2288 MHz bandwidth of an IS-95A compliant CDMA system contains 64 code channels, with each code channel capable of transmitting at a symbol rate of 19.2 Ksps.
The number of code channels can be doubled by providing the I and Q modulators with different data streams at base station 4 and not combining the outputs of the I and Q modulators at remote station 6. In this mode, a stream of data is provided. data to the I modulator and a second data stream is provided to the Q modulator at base station 4. At remote station 6, the I and Q components are individually decoded. Therefore, the 64 code channels of the CDMA IS-95A system are doubled resulting in 128 code channels.
Alternatively, the number of code channels in the CDMA system can be increased by increasing the bandwidth of the system. Increasing the system bandwidth to 2.4576 MHz (for example, by combining adjacent 1.2288 MHz wide frequency segments) can double the number of code channels. Furthermore, if the system bandwidth is doubled and different data streams are provided to the I and Q modulators, the number of code channels can be quadrupled. The present invention is applicable to a CDMA system, or to any variable speed transmission system, regardless of the number of code channels.
ES 2 293 452 T3
Depending on the hardware implementation and system definition, the primary code channels and the secondary code channels, which will be described in depth later, can be defined from a group of community code channels, or they can be channels differentiated. For example, a system can contain 128 code channels and each code channel can be used as a primary code channel or a secondary code channel, depending on how the code channel is assigned. A code channel that has been assigned as a primary code channel is not assigned as a secondary code channel. On the other hand, the primary and secondary code channels can be selected from different lists. For example, 64 primary code channels and 64 secondary code channels can be created from the I component and the Q component, respectively, of the QPSK modulated signal. The present invention can be applied regardless of how the primary code and secondary code channels are defined.
The secondary code channels can be of several types, and each type can have a transmission capacity equal to or different from that of the primary code channel. For example, the secondary code channels may consist of code channels that have the same 19.2 Ksps transmission capacity as the primary code channel. Furthermore, the secondary code channels may consist of channels that have a high transmission capacity (eg, above 19.2 Ksps) and are capable of transmitting data at variable rates. One such high-capacity transmission channel is disclosed in US Patent Application No. ____, entitled "METHOD AND APPARATUS FOR PROVIDING HIGH SPEED DATA IN A SPREAD SPECTRUM COMMUNICATION SYSTEM (FAT PIPE)" ["Procedure and apparatus for Provide High Speed Data in a Spread Spectrum (Thick Tube) Communication System ”], filed December 10, 1996, assigned to the assignee of the present invention and included herein by reference. The present invention is applicable to channels of any type and transmission capacity.
The maximum transmission speed that can be assigned to scheduled users depends on a number of issues. Forward link capacity is limited and one of the goals of the system is to use all available capacity. In a simple case where the CDMA network contains a cell and a remote station 6, all the available capacity is allocated to the remote station 6, each time it is requested. This causes minimal transmission delay. In a more complicated situation, which also better reflects the actual CDMA network, many stations 6 compete for available resources. Among competing remote stations 6, channel scheduler 12 first allocates resources to remote station 6 having the highest priority. If a large part of the available resources is allocated to this remote station 6, then there will be a large number of remote stations 6 waiting their turn. Therefore, to satisfy the system's objective of equitable resource allocation, the resource allocation is limited to a predetermined range.
Data transmission from a cell to remote station 6 occurs through one or more code channels. The first code channel, called the primary code channel, is assigned to remote station 6 during the call setup stage of a communication or during the call setup stage of a soft handoff with a cell. In the exemplary embodiment, the primary code channel has the characteristics of an IS-95A traffic channel and is a variable rate channel that is capable of transmitting at rates 1/8, 1/4, 1/2 and 1 Preferably, the primary code channel transmits at rate 1/8 when idle and at rate 1 when transmitting data, although it can also use rate 1/4 and 1/2. Rate 1/8 can be used to transmit acknowledgments, retransmission requests, and control bits, while rate 1 can be used to transmit data and control bits. The primary code channel is dedicated to remote station 6 during the course of communication with the cell. For transmission of large amounts of data to remote station 6, secondary code channels are assigned.
In the exemplary embodiment, the data transmission takes place through the primary code channel when the cell receives the data. If the cell receives a large amount of data and the channel scheduler 12 determines that additional code channels are needed to transmit the data, the channel scheduler 12 assigns secondary code channels. The channel programmer 12 then transmits the identity of each of the secondary code channels assigned to the selection element 14. The selection element 14 routes the information of the assigned secondary code channels to the base station 4 serving the cell. Information is transmitted to remote station 6 via forward link 50, on the primary code channel. In the exemplary embodiment, if each secondary code channel is capable of transmitting at a speed of 9.6 Kbps, an allocation of 16 secondary code channels increases the data transmission speed to 163.2 Kbps. {9.6 Kbps x 17 code channels (or 1 primary code channel + 16 secondary code channels)}. The use of secondary code channels for data transmission is disclosed in detail in US Patent Application No. 08 / 656,649, mentioned above. The allocation of secondary code channels can be accomplished by the embodiments indicated below.
In the first embodiment, the channel programmer 12 may assign each secondary code channel individually. This embodiment offers the greatest flexibility, insofar as the channel programmer 12 can assign any secondary code channel to any remote station 6. In the exemplary embodiment, the protocol used to identify each assigned secondary code channel is the same. protocol used to identify the assigned traffic channel. According to the IS-95A standard, a unique 8-bit code is used to identify the assigned traffic channel. Accordingly, each sub code channel is identified by a unique 8-bit code and transmitted to remote station 6. For example, if channel programmer 12 assigns 16 sub code channels,
ES 2 293 452 T3 128 bits will be transmitted to remote station 6. This will require a system overhead of almost 3/4 of a code channel frame (128 bits + 172 bits / frame ~ 3/4 of a frame ) to transmit the identity of the secondary code channels assigned to remote station 6. This amount of system overhead is inefficient utilization of the primary code channel.
In the second, and preferred, embodiment, the present invention is applied to a CDMA system using the concept of code channel sets. In this embodiment, the secondary code channels are grouped into channel sets designated by Cm. In the exemplary embodiment, there are 16 channel sets associated with each primary code channel. Each channel set is defined by a 4-bit code and contains a unique set of zero or more secondary code channels. During the call set-up stage in a communication with a cell, or during the call set-up stage of a soft handoff with additional cells, remote station 6 is assigned a primary code channel and the set definition is sent of channels associated with said primary code channel. The channel set definition indicates the secondary code channels for each of the 16 channel sets. During the data transmission stage, the 4-bit code indicating the allocated channel set that is used in the next data transmission is sent to remote station 6.
The channel scheduler 12 may assign overlapping or disjointed channel sets to remote stations 6. For disjointed channel sets, no secondary code channel is assigned to more than one remote station 6 within the same cell. Therefore, remote stations 6 assigned to disconnected channel sets can simultaneously receive data transmissions on the secondary code channels of the disconnected channel sets. For example, if the first remote station 6 of the primary code channel 4 is assigned a set of channels containing the secondary code channels 33, 49, 65 and 81, and the second remote station 6 of the code channel is assigned primary 6 a set of channels containing secondary code channels 35, 51, 67 and 83, data transmission may take place through these primary and secondary code channels simultaneously.
Alternatively, overlapping channel sets can be assigned to remote stations 6. In the case of overlapping channel sets, at least one secondary code channel is assigned to more than one remote station 6 within the same cell. The remote stations 6 to which overlapping channel sets are assigned can receive the data transmissions on the assigned channel sets, at different times, by time multiplexing. However, the channel scheduler 12 may deliberately assign overlapping channel sets and transmit the same data to several remote stations 6 at the same time. For example, if the first remote station 6 of the primary code channel 4 is assigned a set of channels containing the secondary code channels 33, 49, 65 and 81, and the second remote station 6 of the code channel is assigned primary 6 a set of channels containing the secondary code channels 33, 51, 67 and 83, data transmission may take place through the secondary code channels assigned to the first remote station 6 in a time slot T1, and it can take place through the secondary code channels assigned to the second remote station 6 in a second time slot T2. However, the channel scheduler 12 can assign overlapping channel sets and transmit the same data to both remote stations 6 simultaneously. In the above example, the data to be sent to both remote stations 6 is transmitted on the secondary code channel 33 that is common to both remote stations 6. In this case, both remote stations 6 can simultaneously receive the data transmissions on the overlapping channel sets.
As indicated above, the secondary code channels can be of various types and these types can have various or variable transmission capabilities. To simplify the description, this will focus on a type of secondary code channel that has the same transmission capacity as the primary code channel. In the following embodiments, it is assumed that there are 128 code channels in the CDMA system.
Table 1 illustrates an example channel set definition for a primary code channel. As depicted in Table 1, primary code channel number 4 is associated with 16 exclusive channel sets designated C0 through C15. Each channel set contains zero or more secondary code channels. In the exemplary embodiment, C0 is reserved for the channel set containing zero secondary code channels and C15 is reserved for the channel set containing the highest number of secondary code channels. The definition of the channel set, that is, the selection of the secondary code channels to be associated with each primary code channel, can be accomplished by one of several existing embodiments.
In the first embodiment, the secondary code channel associated with each primary code channel is obtained in a systematic manner. The first secondary code channel of the channel set is obtained by one of several procedures. For example, the first secondary code channel may be selected using an offset from the primary code channel, or it may be selected randomly. The next secondary code channels are then selected based on an offset from the previously selected secondary code channel. For example, for channel set C15 in Table 1, the first secondary code channel is 25. Channel 25 can be selected randomly or by applying an offset of 21 to primary code channel 4. The next secondary code channel associated with primary code channel 4 is obtained by applying an offset of 8 to the previous secondary code channel. Therefore, for primary code channel 4, the secondary code channels are 25, 33,41,49, 57, 65,73, 81, 89,97,105, and 113. Likewise, for code channel 6
ES 2 293 452 T3 primary, the secondary code channels are 27, 35, 43, 51, 59, 67, 75, 83, 91, 99, 107 and 115. The first embodiment offers a simple and efficient procedure for assigning channel channels. secondary code, while at the same time evenly distributing the secondary code channels among all the primary code channels. Preferably, the selection of the first secondary code channel is done in such a way that the distribution of the available secondary code channels is uniform, that is, no secondary code channel is used more often than others.
TABLE 1
Defining Channel Sets for Primary Code Channel 4
<td>Code Channel Set</td><td>Channel set child code channels (a member of the active member set)</td>
<td>CO</td><td> . . . -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</td>
<td>C1</td><td> 33</td>
<td>C2</td><td> 49</td>
<td>C3</td><td> 65</td>
<td>C4</td><td> 81</td>
<td>C5</td><td> 33, 49</td>
<td>C6</td><td> 65, 81</td>
<td>C7</td><td> 33, 49, 65, 81</td>
<td>C8</td><td> 97, 113</td>
<td>C9</td><td> 25.41</td>
<td> 10</td><td> 57, 73</td>
<td>C11</td><td> 89, 105</td>
<td>C12</td><td> 25, 41, 57, 73</td>
<td>C13</td><td> 33, 49, 65, 81, 97, 113</td>
<td>C14</td><td> 25, 41,57, 73, 89, 105</td>
<td>C15</td><td> 33,49, 65, 81,97, 113, 25:41, 57, 73, 89, 105</td>
In the second embodiment, a hash function is used to define the secondary code channels associated with each primary code channel. Next, the implementation example of this embodiment will be described. For the channel set definition depicted in Table 1, twelve secondary code channels are associated with each primary code channel (see C15 in Table 1). Next, each secondary code channel of the forward link is entered twelve times into a hash list. For example, secondary code channel 1 is included twelve times, secondary code channel 2 is included twelve times, and so on. For each primary code channel, twelve secondary code channels are randomly selected from the hash list and placed in channel set C15 for that primary code channel. The selected secondary code channel that is placed in C15 is removed from the hash list. When secondary code channels are selected from the hash list, any secondary code channel that is identical to a previously selected secondary code channel is placed back on the hash list and a new secondary code channel is randomly selected. . If the primary code channels and the secondary code channels are derived from the same community group of code channels, a selected secondary code channel that is identical to the primary code channel is also put back into the hash list. The twelve different secondary code channels that are selected and placed in C15 become the secondary code channels associated with that particular primary code channel. Using this procedure, you ensure that there are no primary or secondary code channels that are identical. The procedure is repeated in the same way for all the primary code channels, except that the selection of the secondary code channels is done from the same hash list that you are experiencing.
ES 2 293 452 T3 a constant decline. The hash function randomly and evenly distributes the secondary code channels among all the primary code channels. When assigning secondary code channels by the hash function, arrangements can be made so that the set of channels can be disjointed or overlapping, depending on the desired characteristics of the sets of channels.
In the third embodiment, the channel sets are defined such that all available secondary code channels are used in a channel set definition. If 2 are supposed to exist<sup>m</sup> secondary code channels, then the channel sets are defined in such a way that data transmission can occur through 0, 2<sup>0</sup>, 2<sup>1</sup>, 2<sup>2</sup>, ... up to 2<sup>m</sup> secondary code channels. Table 2 shows an example of implementation of this embodiment for a simple case of 8 channels of secondary code. C0 contains the empty set. C1 through C8 contain one secondary code channel each, 0 through 7, respectively. C9 through C12 contain two secondary code channels each. The secondary code channels from C9 are combined with those from C10 and represented by C13. Similarly, the secondary code channels of C11 are combined with those of C12 and represented by C14. C15 contains the largest set, that is, all available secondary code channels.
The third embodiment requires 2<sup>m + 1</sup> channel sets to define 2<sup>m</sup> secondary code channels and requires m + 1 bits to convey the identity of the assigned channel set. For example, if the number of available secondary code channels is 128, then 256 channel sets are required and 8 bits are needed to identify the allocated channel set. Although the number of channel sets may be large, the definition of channel sets is simple and does not need to be transmitted to the remote station 6 during the stage of setting up a call. This embodiment also allows all remote stations 6 of the same cell, or even the entire CDMA network, to use the same definition of channel sets, and simplifies the procedure for assigning transmission rates.
TABLE 2
Defining Channel Sets Using the Third Embodiment
Channel set child code of the channel set channels of (a member of the active member set) code
<td>CO</td><td> -</td>
<td>C1</td><td> 0</td>
<td>C2</td><td> 1</td>
<td>C3</td><td> 2</td>
<td>C4</td><td> 3</td>
<td>C5</td><td> 4</td>
<td>C6</td><td> 5</td>
<td><sup>C?</sup></td><td> 6</td>
<td>C8</td><td> 7</td>
<td>C9</td><td> 0, 1</td>
<td>C10</td><td> 2, 3</td>
<td>C11</td><td> 4,5</td>
<td>C12</td><td> 6,7</td>
<td>C13</td><td> 0,1,2,3</td>
<td>C14</td><td> 4,5,6,7</td>
<td>C15</td><td> 0, 1,2, 3, 4, 5, 6, 7</td>
ES 2 293 452 T3
Other embodiments can be designed to define the channel sets associated with each primary code channel, and are within the scope of the present invention. The present invention is applicable to any variable rate communication system using code channel sets, regardless of how the channel sets are defined.
For simplicity, all cells in the CDMA network can use the same channel set definition. For example, all cells may define the channel set associated with primary code channel 4, as depicted in Table 1. Within the cell, each remote station 6 may have a unique definition of channel sets, depending on the assigned primary code channel. Consequently, the definition of channel sets for primary code channel 6 is different from that for primary code channel 4. The definition of channel sets described in the first and second embodiments is applicable to this implementation.
On the other hand, all remote stations 6 of the same cell, or even within the entire CDMA network, may have the same channel set definition. The channel set definition described in the third embodiment is applicable to this implementation. This implementation simplifies forward link rate scheduling, since only one channel set definition can be used for all remote stations 6 on the network. However, defining channel sets in this manner may limit the availability of the secondary code channels for the channel scheduler 12 and consequently increase the complexity of forward link rate scheduling. The present invention is applicable to all channel set definitions.
Regardless of how the channel sets are defined, in the first embodiment, the channel scheduler 12 can assign any set of channels for high speed data transmission between a cell and the remote station 6. For example, the remote station 6 It can communicate with three cells, the first of which can be assigned C3, the second C8, and the third C14. Therefore, the scheduling information containing the assigned channel sets C3, C8 and C14 is transmitted to remote station 6 on the primary code channel. This implementation may require the transmission of additional scheduling information, since each cell can assign different sets of channels. In the preferred embodiment, all cells communicating with remote station 6 assign the same set of channels. The preferred embodiment requires fewer extra bits to convey the identity of the assigned channel set, since only one identity needs to be transmitted. This restriction on channel set allocation can limit the availability of secondary code channels and increase the complexity of forward link rate scheduling.
When receiving data transmissions, remote station 6 demodulates all secondary code channels of the set of channels to which it is assigned. For example, if remote station 6 is assigned primary code channel 4 during the call setup stage of communication with a cell, and then the cell set is assigned channel set C7 during a data transmission ( See Table 1), remote station 6 demodulates secondary code channels 33, 49, 65 and 81, along with primary code channel 4, and gathers the data portions of the code channel frames from these five channels of code. The remote station 6 to which the channel set C0 is assigned only demodulates the data transmission on the primary code channel, since C0 contains the empty list.
During a soft handoff, remote station 6 communicates with multiple cells. As an example, a cell assigns remote station 6 primary code channel 4 during the call setup stage of a communication. Subsequently, remote station 6 moves to another location, where a second cell assigns it a primary code channel 6. Remote station 6 then demodulates primary code channels 4 and 6 for communications with the two cells. If both cells then assign channel set C7 (see Table 3) to remote station 6 during a data transmission, remote station 6 demodulates secondary code channels 33, 49, 65, and 81 of the first cell and second cell secondary code channels 35, 51, 67 and 83. Remote station 6 further demodulates primary code channel 4 of the first cell and primary code channel 6 of the second cell.
ES 2 293 452 T3
TABLE 3
Channel Set Definition for Primary Code Channels 4 and 6
<td>Set of Channels of Code</td><td>Secondary code channels in the channel set (two members in the active member set)</td>
<td>CO</td><td></td>
<td>C1</td><td> (33, 35)</td>
<td>C2</td><td> (49, 51)</td>
<td>C3</td><td> (65, 67)</td>
<td>C4</td><td> (81,83)</td>
<td>C5</td><td> (33, 35), (49, 51)</td>
<td>C6</td><td> (65, 67), (81,83)</td>
<td>C7</td><td> (33, 35), (49, 51), (65, 67), (81, 83)</td>
<td>C8</td><td> (97, 99), (113, 115)</td>
<td>C9</td><td> (25, 27), (41,43)</td>
<td>C10</td><td> (57, 59), (73, 75)</td>
<td>C11</td><td> (89, 91), (105, 107)</td>
<td>C12</td><td> (25, 27), (41,43), (57, 59), (73, 75)</td>
<td>C13</td><td> (33, 35), (49, 51), (65, 67), (81,83), (97, 99), (113, 115)</td>
<td>C14</td><td> (25, 27), (41.43), (57, 59), (73, 75), (89, 91), (105, 107)</td>
<td>C15</td><td> (33, 35), (49, 51), (65, 67), (81.83). (97, 99), (113, 115), (25, 27),</td>
<td></td><td> (41, 43), (57, 59), (73, 75), (89, 91), (105, 107)</td>
Data is transmitted only on the secondary code channels if programmed by the channel programmer 12. In the preferred embodiment, all secondary code channels are transmitted at full rate. Data transmission on the secondary code channel is more efficient than that on the primary code channel, because the primary code channel also transmits extra bits necessary to support many features of the CDMA system.
In the preferred embodiment, the assigned channel set is communicated to remote station 6 via the primary code channel. At the beginning of the scheduling period, the cells transmit the identity of the channel set that is used for the next data transmission. For 16-channel sets, only four bits are needed to convey the identity of the assigned channel set. A protocol may be established to reserve certain bits of the code channel frame in the primary code channel for the identity of the assigned channel set.
SAW. Code channel frame error retransmission
The identity of the assigned channel set is transmitted to remote station 6 and data transmission over the assigned secondary code channels occurs a predetermined number of frames later. Inevitably, the code channel frame on the primary code channel is sometimes received with errors at remote station 6. When this happens, remote station 6 does not know the identity of the assigned channel set. This problem can be remedied by at least one of at least four embodiments. In the following embodiments, it is assumed that there is a two-frame processing delay between receiving the identity of the assigned channel set by the cell and transmitting data through the assigned channel set. The identity of the assigned channel set is transmitted by the cell through the primary code channel in frame k, and data transmission through the assigned secondary code channels takes place in frame k + 2. The embodiments indicated below can also be applied, in which the processing delay between receiving the identity of the set of channels assigned by the cell and the transmission of data through the set of assigned channels is of different duration or is variable depending on the time. one plot to another.
ES 2 293 452 T3
In the first embodiment, the cell retransmits the data corresponding to the period of time during which the assigned channel set is unknown by the remote station 6. The remote station 6 transmits a BIE message to the cell, indicating that the frame code channel k received in the primary code channel contains some error. The cell retransmits code channel frame k on the primary code channel and subsequently transmits code channel frames k + 2 on the assigned secondary code channel, since remote station 6 does not know the set of channels assigned in frame k + 2,
In the second embodiment, if code channel frame k in the primary code channel is received with some error, remote station 6 demodulates the data transmission in frame k + 2 using the set of channels indicated in the previous frame k-1 code channel. This embodiment does not work well if the set of channels assigned in frame k-1 is different or disjointed with the set of channels assigned in frame k. For example, referring to Table 1, if the channel set assigned in frame k-1 is C13 and the channel set assigned in frame k is C14, remote station 6 demodulating the data transmission in frame k through the channel set C13 you will receive erroneous data.
In the third embodiment, if the code channel frame k in the primary code channel is received with some error, the remote station 6 demodulates the data transmission in frame k + 2 by the set of channels presenting the highest number. high of secondary code channels. This embodiment works well if the largest channel set contains all the secondary code channels that can be assigned to remote station 6. For example, set C15 in Table 1 satisfies this condition, since it contains all the code channels of channel sets C0 through C14. Valid code channel frames are a subset of the demodulated code channel frames. The drawback of this embodiment is that it requires a greater amount of processing at remote station 6. Also, it may be necessary to store a large amount of data until remote station 6 can determine which of the demodulated code channel frames are valid. If each code channel frame is encoded with its own set of CRC bits, remote station 6 will be able to determine the validity of the code channel frames by performing a CRC check on each demodulated code channel frame. On the other hand, if all the data frames are encoded with the same set of CRC bits and the CRC bits are distributed over all the code channel frames, the remote station 6 will be able to perform a CRC check on different combinations of the frames of the data. demodulated code channel. Finally, remote station 6 can store all demodulated code channel frames, communicate the frame error on the primary code channel to the cell, and wait for the identity of the assigned channel set to be retransmitted.
In the fourth, and preferred, embodiment, the cell transmits, in frame k, the identity of the set of channels assigned for frame k + 2, together with the identity of the set of channels assigned for frame k, on the channel of primary code. If the code channel frame k is received in error, the remote station 6 demodulates the data transmission in frame k + 2 by the largest channel set, as in the third embodiment. However, since the channel set identity assigned for frame k + 2 is also transmitted on the primary code channel in frame k + 2, remote station 6 can determine which of the demodulated code channel frames are valid. An additional storage element, possibly of a data frame, may be needed until it can be ascertained which secondary code channels have been allocated from the demodulated primary code channel. For a system presenting sets of 16 channels per primary code channel, transmitting the identity of the allocated channel set in the current frame requires only four additional bits.
Transmission of the assigned channel set identity through two code channel frames, separated by two frames, provides redundancy and diversity over time. A data transmission is correctly demodulated, unless both k and k + 2 code channel frames on the primary code channel are received in error. This event is low probability.
VII. Demodulation and decoding of various code channels
The demodulation of various code channels during soft handoff, and of multipath signals, is described in detail in US Patent No. 5,109,390, entitled "DIVERSITY RECEIVER IN A CDMA CELLULAR TELEPHONE SYSTEM" ["Diversity Receiver in a CDMA cellular telephone system "], transferred to the assignee of the present invention. The receiver disclosed in US Patent No. 5,109,390 is further expanded by the present invention to receive various groupings of code channels.
In Figure 4, an example block diagram of demodulator 64 and decoder 66 at remote station 6 of the present invention is depicted. The RF signals transmitted from the cells are received by antenna 60 and provided to receiver 62. Receiver 62 amplifies and filters the received RF signal, reduces the frequency of the RF signal to baseband, and quantizes the baseband signal into digital bits. . The digitized baseband signal is provided to demodulator 64. The demodulator 64 contains at least one RAKE 100 receiver. The RAKE 100 receivers demodulate the digitized baseband signal with the short codes pN<sub>i</sub> and PN<sub>Q</sub> suitable and the Walsh code, as described in greater detail in US Patent No. 5,109,390. The demodulated outputs from RAKE receivers 100 are provided to decoder 66. In decoder 66, descramblers 110 descramble the demodulated outputs with the long PN code assigned to remote station 6. The descrambled data is then reordered by deinterleavers 112, and the deinterleaved data is routed through multiplexer (MUX) 114 to Viterbi decoder 116. The Viterbi decoder 116 performs convolutional decoding of the deinterleaved data and provides the decoded data to the element
ES 2 293 452 T3
118 CRC verification. The CRC check element 118 performs the CRC check of the decoded data and provides the error-free data portions of the received code channel frames to the data sink 68.
The demodulator 64 can be implemented by many embodiments. In the first embodiment, one RAKE receiver 100 is required for each grouping of code channels that the remote station 6 receives. Each RAKE receiver 100 contains at least one correlator 104, which constitutes what is called a "branch" of the RAKE receiver. 100. At least one correlator 104 is needed for each code channel in a cluster. Each correlator 104 has the ability to de-spread the digitized baseband signal from receiver 62 with unique short PN codes and a unique Walsh code assigned to that particular correlator 104 by remote station 6. Operations performed by correlator 104 reflect operations performed. in the transmitting cell. In the cell, the encoded data is first spread with the unique Walsh code assigned to the code channel over which the data is to be transmitted. The spread data is further spread by the unique short PN codes assigned to the particular transmitting cell.
Not all correlators 104 and all RAKE receivers 100 of remote station 6 are always used. In fact, only the outputs of correlators 104 that have been assigned by remote station 6 are combined by combiner 106. Furthermore, only the Outputs from RAKE receivers 100 that have been assigned by remote station 6 are decoded by decoder 66. Correlators 104 and RAKE 100 receivers not assigned by remote station 6 are ignored. Actually, in the preferred embodiment, remote station 6 does not demodulate or decode any code channels other than one of the code channels that have been assigned to it. This feature is particularly important for remote station 6, which is a mobile unit, as it saves battery power and extends the life of the unit.
Each assigned correlator 104 first de-spreads the digitized baseband signal from receiver 62 with the short PN codes assigned to that correlator 104 by remote unit 6. The assigned short PN codes are identical to the short PN codes used to spread the data in the cell. Typically, the assigned short PN codes have a time difference from the short PN codes used in the cell, to compensate for the transmission delay through the forward link 50 and the processing delay due to the receiver 62. Next, the correlator 104 de-spreads the output obtained after the first de-spread operation with the Walsh code assigned to that correlator 104 by remote station 6. The assigned Walsh code corresponds to the Walsh code assigned to the code channel being demodulated by correlator 104. The de-spread bits from each assigned correlator 104 within the same RAKE receiver 100 are combined by combiner 106 and provided to decoder 66.
In the second embodiment, a RAKE 100 receiver can be used to demodulate all code channels assigned to remote station 6. This requires the temporary storage of the digitized baseband signal from receiver 62 in memory. Next, the RAKE 100 receiver demodulates one code channel frame at a time and provides the demodulated outputs to decoder 66. In this embodiment, it is necessary for the RAKE receiver 100 to operate at a higher speed than the RAKE receiver 100 of the first embodiment. In fact, each factor of two-fold increase in speed allows the RAKE 100 receivers to be cut in half.
The decoder 66 receives the demodulated outputs of the RAKE receivers 100 and performs a series of operations that are complementary to the operations performed in the transmitting cell. Decoder 66 can be implemented by many embodiments. In the first embodiment, the demodulated output from each RAKE receiver 100 is provided to a separate descrambler 110. Descrambler 110 de-spreads the demodulated output with a long PN code that has been assigned to remote station 6 and provides the descrambled data to deinterleaver 112. Deinterleaver 112 reorders the bits of the descrambled data in the reverse order of that used in the transmitting cell. . The de-interleaving function provides time diversity, which improves subsequent convolutional decoding performance by spreading the error bursts introduced by transmission on forward link 50. De-interleaving data is multiplexed through MUX 114 and provided to the Viterbi decoder 116. The Viterbi decoder 116 performs convolutional decoding of the deinterleaved data and provides the decoded data to the CRC verification element 118. The CRC check element 118 performs the CRC check of the decoded data and provides the error-free data portions of the received code channel frames to the data sink 68. In the preferred embodiment, a Viterbi decoder 116 is used to decode the data transmitted on all code channels.
In the second embodiment, the demodulated outputs from RAKE receivers 100 are multiplexed through MUX 114 and processed by a Viterbi descrambler 110, deinterleaver 112, and decoder 116. Hardware requirements are minimized when hardware equipment is used to decode all code channel frames. Time multiplexing also requires hardware to operate at high speed.
The demodulator 64 is used in one of at least four different modes. In the first embodiment, demodulator 64 is used to demodulate the signal transmitted from a cell through a code channel. In this mode, only one RAKE 100 receiver is used to demodulate the received signal. At the assigned RAKE receiver 100, a different correlator 104 is assigned to each of the multipaths of the received signal. The short PN codes and the Walsh code used by each of the assigned correlators 104 are the same.
ES 2 293 452 T3
However, the short PN codes used by each assigned correlator 104 have a different time offset to compensate for the different delay of each multipath. Search correlator 104x performs a continuous search for the strongest multipath that has no correlator 104 assigned. Search correlator 104x alerts remote station 6 when the newly discovered multipath signal strength exceeds a predetermined threshold. The remote station 6 then assigns the newly found multipath to a correlator 104.
As an example, remote station 6 communicates with a cell via primary code channel 4. Remote station 6 may assign primary code channel 4 to RAKE receiver 100a. In RAKE receiver 100a, correlators 104 are assigned to the different multipaths of the signal received on primary code channel 4. For example, correlator 104a can be assigned to the first multipath, correlator 104b can be assigned to the second multipath, and so on. The outputs of assigned correlators 104 are combined by combiner 106a and provided to decoder 66. At decoder 66, the demodulated output from RAKE receiver 104a is descrambled by descrambler 110a, reordered by deinterleaver 112a, routed through MUX 114, subjected to convolutional decoding by Viterbi decoder 116, and verified by element 118 of CRC verification. The error-free data portions of the CRC check element 118 are provided to the data sink 68.
In the second embodiment, demodulator 64 is used to demodulate signals transmitted from multiple cells through a grouping of multiple code channels. This situation occurs when remote station 6 experiences a soft handoff. In this embodiment, the entire cluster is assigned to a RAKE receiver 100. Each code channel in the cluster is assigned to at least one correlator 104 of the RAKE receiver 100. Each correlator 104 de-spreads the baseband output of receiver 62 with the unique short PN codes and the unique Walsh code corresponding to the cell and code channel, respectively, to which the particular correlator 104 has been assigned. The outputs of the assigned correlators 104 are combined by the combiner 106. The combined signal improves the estimation of the data transmitted redundantly through the various code channels of the cluster.
As an example, remote station 6 undergoes a soft handoff and communicates with the first cell through primary code channel 4, and with the second cell through primary code channel 6. Remote station 6 assigns at least one correlator 104 from the same RAKE 100 receiver to each of the two primary code channels 4 and 6. For example, remote station 6 may assign correlator 104a to primary code channel 4, and correlator 104b to primary code channel 6. Correlators 104c to 104m can be assigned by remote station 6 to the strongest multipaths of primary code channels 4 and 6. The estimates of the assigned correlators 104 are combined by the combiner 106a to provide an improved data estimate that is provided to the decoder 66. Decoder 66 decodes the demodulated data from RAKE receiver 100a in the same way as described in the first embodiment.
In the third embodiment, demodulator 64 is used to demodulate signals transmitted from a cell through various groupings of code channels. This situation occurs when the cell transmits data to remote station 6 at a high speed. Each grouping consists of one code channel. In this mode, a RAKE receiver 100 is assigned to each code channel grouping. Correlators 104 within the same RAKE receiver 100 are assigned the same short PN codes and the same Walsh code. Correlators 104 within different RAKE receivers 100 are assigned the same short PN codes but a different Walsh code, since each RAKE receiver 100 demodulates a different code channel.
Each RAKE 100 receiver performs, in this mode, the same function as in the first mode. In essence, the code channel of each cluster is assigned to at least one correlator 104. The correlators 104 of the same RAKE 100 receiver are assigned to different multiple paths of the signal received by the code channel assigned to that particular RAKE 100 receiver. . Consequently, each correlator 104 within the same RAKE receiver 100 uses the same short PN codes and the same Walsh code. The short PN codes of each assigned correlator 104 within the same RAKE receiver 100 are time offset to compensate for different multipath delays. The outputs of assigned correlators 104 from each RAKE receiver 100 are combined by combiner 106 and provided to decoder 66.
As an example, remote station 6 is assigned primary code channel 4 during the call setup stage of a communication with a cell and is then assigned channel set C7 during a data transmission period. high speed. Referring to Table 1, code channel set C7 contains the four secondary code channels 33, 49, 65 and 81. Remote station 6 assigns five different RAKE 100 receivers to the five code channels. For example, remote station 6 may assign the RAKE 100a receiver to primary code channel 4, the RAKE 100b receiver to secondary code channel 33, the RAKE 100c receiver (not shown in Figure 4) to secondary code channel 65, and so on. Within the RAKE receiver 100a, correlators 104 are assigned to the different multipaths of the signal received on primary code channel 4. For example, correlator 104a can be assigned to the first multipath, correlator 104b to the second multipath, and so on. The outputs of assigned correlators 104 are combined by combiner 106a. The demodulated outputs of the five assigned RAKE receivers 100 are provided to decoder 66.
ES 2 293 452 T3
Within decoder 66, the demodulated output from RAKE receiver 100a is descrambled by descrambler 110a and reordered by deinterleaver 112a. Also, the demodulated output from RAKE receiver 100b is descrambled by descrambler 110b and reordered by deinterleaver 112b. Five different combinations of descramblers 110 and deinterleavers 112 are assigned to each of the five demodulated outputs of the five RAKE receivers 100. The deinterleaved data from the five deinterleavers 112 is multiplexed through the MUX 114 in a predetermined order and provided to the decoder. 116 from Viterbi. The deinterleaved data is subjected to convolutional decoding by the Viterbi decoder 116 and verified by the CRC verification element 118. The error-free data portions of the CRC check element 118 are provided to the data sink 68.
In the fourth embodiment, demodulator 64 is used to demodulate signals transmitted from various cells through various groupings of code channels. This situation occurs when remote station 6 undergoes a multi-cell soft handoff and receives high-speed data from multiple cells. Each grouping consists of more than one code channel. In this mode, a RAKE receiver 100 is assigned to each code channel grouping. Each RAKE 100 receiver performs, in this mode, the same functions as in the second mode. Within the same RAKE receiver 100, at least one correlator 104 is assigned to each of the code channels of the cluster. Each correlator 104 uses unique short PN codes and a unique Walsh code, corresponding to the cell and code channel, respectively, to which the particular correlator 104 has been assigned.
As an example, remote station 6 communicates with the first cell through primary code channel 4, and with the second cell through primary code channel 6 during a soft handoff. During a subsequent high speed data transmission, remote station 6 will be assigned channel set C7. Referring to Table 3, set C7 contains the four secondary code channel groupings (33, 35), (49, 51), (65, 67), and (81, 83). Remote station 6 assigns five different RAKE 100 receivers to the five code channel groupings. For example, remote station 6 may assign the RAKE receiver 100a to the first primary code channel grouping (4, 6), the RAKE receiver 100b to the second secondary code channel grouping (33, 35), the RAKE receiver 100c ( not shown in Figure 4) to the third grouping of secondary code channels (49, 51), and so on. Within RAKE receiver 100a, at least one correlator 104 is assigned to each code channel in the cluster. For example, remote station 6 may assign correlator 104a to primary code channel 4, and correlator 104b to primary code channel 6. Correlators 104c to 104m can be assigned by remote station 6 to the next strongest multipaths of primary code channels 4 and 6. The outputs of assigned correlators 104 within RAKE receiver 100a are combined by combiner 106a. The demodulated outputs of the five assigned RAKE receivers 100 are provided to decoder 66.
Decoder 66 receives the demodulated outputs from the five RAKE receivers 100 and decodes the data in the same way as described for the third mode. In essence, the demodulated output from each of the five RAKE 100 receivers is descrambled by a different descrambler 110, rearranged by a different interleaver 112, multiplexed through MUX 114, subjected to convolutional decoding by Viterbi decoder 116, and verified by CRC verification element 118. The error-free data portions of the CRC check element 118 are provided to the data sink 68.
The above description of demodulation and decoding of data transmissions over various code channel groupings can be extended to a remote station experiencing soft handoff with three or more base stations. In essence, each grouping of code channels requires a different RAKE 100 receiver. For example, the four sub-code channel groupings of channel set C7 (see Table 3) require four rAke 100 receivers. In addition, each code channel in a grouping is assigned to at least one different correlator 104 in the same. RAKE receiver 100. The output of the assigned correlator 104 is combined and decoded to obtain the data transmitted in that grouping of code channels.
The example hardware demodulator 64 and decoder 66 depicted in Figure 4 may be used in other embodiments. For example, demodulator 64 and decoder 66 may be configured to perform the tasks of demodulating and decoding transmitted data in various groupings of code channels, where each group contains a code channel and the data is not transmitted. from the same cell. This is similar to what happens in the third embodiment described above, except that the RAKE 100 receivers are assigned different short PN codes, corresponding to different transmitter cells. Alternatively, demodulator 64 and decoder 66 may be configured to demodulate and decode transmitted data in multiple groupings of code channels, each grouping containing a different number of code channels. This constitutes a variant of the fourth embodiment described above. These and other modes of use of demodulator 64 and decoder 66 can be taken into account, and are within the scope of the present invention.
VIII. CRC bits
According to the IS-95A standard, the CRC bits are appended to each data portion to allow the detection of frame errors by the remote station 6. The CRC bits are generated according to the CRC polynomial specified by the IS-95A standard. In particular, for a data rate of 96 Kbps, the specified polynomial is g (x) = x<sup>12</sup>
ES 2 293 452 T3 + x<sup>11</sup> + x<sup>10</sup> + x<sup>9</sup> + x<sup>8</sup> + x<sup>4</sup> + x + 1. For each data portion, twelve CRC bits are appended. In the present invention, the number of CRC bits can be increased or decreased, depending on the desired detection certainty. A larger number of CRC bits provides greater certainty in frame error detection, but requires more system overhead. In contrast, fewer CRC bits reduce the certainty of frame error detection, but require less system overhead.
In the case of high speed data transmission over several code channels, the CRC bits for the various code channels can be generated by at least two embodiments. In the first embodiment, each piece of data is appended with its own set of CRC bits, similar to that specified by the IS95A standard. This embodiment requires more system overhead but allows for frame errors to be detected for each individual piece of data. Only the data portions received with some error are retransmitted.
In the second embodiment, the data frame to be transmitted through the allocated code channels during one frame is encoded by a CRC generator. The generated CRC bits can be transmitted in one of several possible modes. In the first embodiment, the data frame is divided into data portions in the manner described above. The CRC bits are also divided and appended to each piece of data. In this way, each code channel frame contains a data portion and some CRC bits. In the second mode, the CRC bits are transmitted through a code channel frame. All code channel frames, except the last code channel frame, contain only the data portion. The last code channel frame contains the CRC bits and some data. The second mode provides time diversity of the CRC bits and improves the detection of frame errors by the remote station 6.
At remote station 6, the data portion of the code channel frames and CRC bits are regrouped. In the second embodiment, remote station 6 is only able to determine if all code channel frames have been received correctly, or if one or more frame errors have occurred. Remote station 6 cannot determine which of the code channel frames have been received in error. Consequently, an error indication in a frame forces the cell to retransmit all code channel frames for that frame. The second embodiment has the advantage that it uses a smaller number of CRC bits for the data frame.
As an example, suppose a high-speed data transmission is performed over twelve code channels. In the first embodiment, each of the twelve data portions is appended with its own set of twelve CRC bits. A total of 144 CRC bits are required for the twelve data chunks. These 144 CRC bits allow error detection in each individual code channel frame. Consequently, if the code channel frame of a particular code channel is received in error, only the erroneous frame needs to be retransmitted.
In the second embodiment, the entire data frame is encoded with a single CRC bit set. Preferably, the number of CRC bits used is less than the total number of CRC bits used in the first embodiment. In the example of twelve code channel frames above, the number of CRC bits used is at least 12, but less than 144. Since there is approximately twelve times the amount of data bits, more CRC bits will be needed to allow for more certain frame error detection. If 24 CRC bits are assumed to allow frame error detection with the required level of certainty, the 24 CRC bits can be divided into twelve CRC blocks, each CRC block containing two CRC bits. A CRC block is attached to each of the twelve pieces of data. Alternatively, the 24-bit CRC can be retransmitted through a code channel frame. At remote station 6, the data portions and the 24 CRC bits are regrouped. Remote station 6 can only determine if all twelve code channel frames have been received correctly. If a frame error is indicated, remote station 6 cannot determine which of the code channel frames have been received in error. Consequently, the cell retransmits all twelve code channel frames. For a saving of 120 CRC bits in additional system overhead, remote station 6 is still able to detect frame errors, but without the accuracy of the first embodiment. The second embodiment requires finding a balance between a smaller amount of additional overhead and redundant retransmission of code channel frames.
IX. Forward Link Rate Schedule Timing
The accuracy of predicting the transmit power required for unscheduled tasks can be improved by performing the prediction at a time that is as close as possible to the time the prediction is to be used. During the delay period between the prediction time and the actual usage time, the state of the network may have changed. For example, it may happen that voice users have started or stopped talking, users have been added or removed from the network, or channel conditions have changed. If the processing delay is limited to a small number of frames, the prediction of the necessary transmission power for unscheduled tasks is sufficiently accurate for the present invention. In the preferred embodiment, the processing delay is four frames or less.
The channel scheduler 12 can make predictions in a short time interval (for example, by keeping a short schedule interval) to increase the accuracy of the predictions and allow the channel scheduler 12 to respond quickly to changes in demand. the direct link. In the exemplary embodiment, the prediction is performed once per frame, the resources are allocated or reallocated once per frame, and the schedule of the allocated transmission rates is transmitted to the remote stations 6 once per frame.
ES 2 293 452 T3
An example of an illustration of the timing diagram of the forward link rate scheduling of the present invention is shown in Figure 8. In frame k, the state of the entire CDMA network is measured and sent to channel scheduler 12 at block 300. In the exemplary embodiment, the status of the CDMA network may include the total residual power available for the scheduled tasks in each cell, the amount of data to be transmitted to each scheduled user, the set of active members of each remote station 6, the transmission energy per bit of each programmed user and the code channels available for transmission for each cell. In frame k + 1, channel scheduler 12 allocates resources and sends information to selection element 14 located within base station controller 10, at block 302. Resource allocation by channel scheduler 12 may consist of the allocation of a transmission speed or the allocation of a transmission power. If the channel scheduler 12 allocates a transmit power, the selection element 14 calculates the allocated transmit rate based on the allocated transmit power and the required energy per bit of the remote station 6. The allocated transmit rates are to be used. in plot k + 4. Within frame k + 1, the selection element 14 sends the schedule of the assigned transmission rates and the data frame, to be transmitted in frame k + 2, to the channel element 40 in block 304. Also , in frame k + 1, channel element 40 receives the assigned baud rate schedule and data frame from selection element 14, at block 306. In frame k + 2, channel element 40 transmits the identity of the set of channels assigned for frame k + 4 and for frame k + 2 to remote station 6 on the primary code channel, at block 308. During frame k + 3, remote station 6 receives the data frame and determines the identity of the assigned channel set, in block 310. Remote station 6 then reconfigures the hardware, if necessary, to receive the next high speed data transmission. In frame k + 4, data is transmitted through the primary and secondary code channels assigned to remote stations 6, at block 312.
In the exemplary embodiment, the processing delay between the time in which the channel programmer 12 receives the necessary information from the cell and the time in which the data transmission is carried out at the assigned transmission speed, is four plots. In frame k, the channel scheduler 12 receives the information from the cell. In frame k + 4, the cell transmits data to remote stations 6 on the assigned primary and secondary code channels. In a CDMA system that complies with the IS-95A standard, each delay frame represents a delay of 20 ms. In the exemplary embodiment, the four processing delay frames represent 80 ms of delay. This delay period is short enough that the prediction of the necessary transmit power is moderately accurate and communication over the forward link is not significantly degraded. Furthermore, the initial prediction of the transmit power required for unscheduled tasks is not overly critical in the present invention, due to the ability of channel scheduler 12 to continuously monitor forward link utilization and dynamically reallocate resources for tasks. scheduled.
The above description of the exemplary embodiment represents an implementation of the present invention. Other variants in the timing of the forward link rate scheduling routine may be considered with respect to those described above, said variants being within the scope of the present invention.
The scheduling information containing the assigned transmission rates can be transmitted to the remote stations 6 in one of several possible embodiments. In the first embodiment, certain bits of the code channel frame of the primary code channel are reserved for scheduling information. In the second embodiment, the scheduling information is transmitted using different signaling messages. The signaling message can be transmitted to remote station 6 whenever a new assignment of a data rate is made. Other embodiments may be considered for transmitting the scheduling information that are variants or combinations of the embodiments described above, and that are within the scope of the present invention.
An example diagram of the forward link rate scheduling and high speed data transmission of the present invention is depicted in Figure 9. As noted above, remote station 6 is assigned a primary code channel for the duration of communication with the cell. In Figure 9, the primary code channel transmits at rate 1/8 when idle and at rate 1 when transmitting data. The accumulation of data to be transmitted to remote station 6 is represented by a solid line and is provided in terms of the number of code channel frames. The number of code channel frames is equal to the number of code channels multiplied by the number of frames required to send all the data. For example, 20 code channel frames can be transmitted on one code channel for 20 frames, or on four code channels for five frames. Although the capacity of the primary code channel is slightly less than that of the secondary code channel, due to the extra bits in the primary code channel, the difference is ignored in the following example for simplicity. Next, reference will be made to an embodiment already described above, in which the forward link rate scheduling is performed on each frame. The following example also applies to the embodiment where forward link rate scheduling is done once every K frames.
In the example depicted in Figure 9, a primary code channel is assigned to remote station 6, but the cell has no data to transmit to remote station 6 in frames 1 and 2. Consequently, the cell transmits to the remote station. 1/8 speed through primary code channel. During frame 2, the cell receives two code channel frames to transmit to remote station 6. The cell transmits a code channel frame in frames 3 and 4 on the primary code channel, to reduce the accumulation to zero at the end of frame 3. It should be noted that there is no scheduling delay in transmitting data to through the primary code channel. The data received
ES 2 293 452 T3 during frame 2 are transmitted immediately on the primary code channel in frame 3. Immediate transmission on the primary code channel allows signaling to pass quickly from the cell to the remote station 6. For example , TCP acknowledge requires approximately 40 bytes and, through header compression, can fit into a code channel frame. TCP acknowledgment can be transmitted immediately through the primary code channel within a frame.
During frames 5 and 6, the cell transmits at rate 1/8 while idle and waiting to receive data. During frame 6, the cell receives a large amount of data to transmit to remote station 6. In frame 7, the channel scheduler 12 receives the queue size information from the selection element 14, collects other information related to the state of the network (for example, the total residual power available for the transmission of scheduled tasks from each of the cells), allocates the resources and transmits the information to the selection element 14. In this example, channel programmer 12 assigns channel set C7 from Table 1, which contains four channels of secondary code. In frame 8, the cell transmits the second code channel frame in the queue, along with the set of channels assigned to remote station 6, on the primary code channel. In frame 9, base station 4 continues to transmit data on the primary code channel and reduces the accumulation to 25 code channel frames. During frame 9, remote station 6 receives the second code channel frame and the assigned channel set identity, and configures its hardware to receive the next high speed data transmission. High-speed data transmission occurs through the primary code channel and the four secondary code channels in frames 10 and 11.
In this example, the forward link demand due to unscheduled tasks increases during frame 8. In frame 9, channel scheduler 12 allocates resources for scheduled tasks that have lower forward link capacity. Channel scheduler 12 determines that channel set C6 can be used with two fewer channels of secondary code to free up some of the capacity for additional demand. In frame 10, the new channel set, containing two secondary code channels, is transmitted to remote station 6. In frame 11, remote station 6 receives the new channel set. And, in frame 12, the cell transmits data over the new set of channels.
Also, in this example, forward link demand due to unscheduled tasks is reduced during frame 9. During frame 10, with increased forward link capacity, channel scheduler 12 allocates channel set C7, which it contains four channels of secondary code, to remote station 6. In frame 11, the identity of the new set of channels is transmitted to remote station 6. In frame 12, remote station 6 receives the identity of the new set of channels. And, in frame 13, the cell transmits data over the new set of channels.
During frame 12, the channel scheduler 12 observes that the queue will be empty when the current scheduled transmission ends, and that only two code channels are needed to transmit the rest of the data in frame 15. In frame 13, the scheduler Channel 12 instructs the cell, through the selection element 14, to transmit the identity of the new channel set C3, which contains only one secondary code channel, to the remote station 6. In frame 14, the remote station receives the identity of the new channel set and reconfigures its hardware. Finally, at frame 15, the cell transmits the remaining two code channel frames over the new set of channels.
When it observes that the queue is almost empty, in frame 13, the channel scheduler 12 instructs the cell, through the selection element 14, to send the identity of the new set C0 of channels, which contains zero channels of secondary code . In frame 16, the cell uses the new set of channels.Once all data has been transmitted, the cell transmits at rate 1/8 on the primary code channel during frame 16, while remaining idle and on hold. to receive more data.
The example above demonstrates that there are four frames of processing delay between the time that data is available to the cell (in frame 6 of Figure 9) and the time that high-speed data transmission is performed. (in frame 10 of Figure 9). The example also illustrates that the transmission rate can be adjusted in each frame, such that the forward link is fully used in each frame.
VIII. Prioritization
To optimize forward link utilization, resources for scheduled tasks are allocated to remote stations 6 based on the priority of remote stations 6. Forward link transmit power is allocated first to remote station 6 presenting the highest priority, and last to the remote station 6 having the lowest priority. In determining the priority of the remote stations 6, numerous factors can be taken into account. An example list containing some of the factors that can be considered in prioritization is described in detail below. It is also possible to consider other factors, which are within the scope of the present invention.
An important factor in determining the priorities of remote stations 6 is the energy per bit required to transmit to a remote station 6. Remote stations 6 located on the edge of a cell, or those experiencing adverse channel conditions, require more energy per bit to provide the desired level of performance, because the transmission loss from the cell to remote station 6, or the ratio
ES 2 293 452 T3
Eb / No, they are higher. In contrast, remote stations 6 located close to the cell-site (eg, close to the base station 4 serving the cell) require less power per bit to provide the same level of performance. Actually, for the same amount of transmission power, the symbol rate with which it can be transmitted to the remote station 6 is inversely proportional to the transmission loss and the Eb / No ratio. For example, the total residual power that allows the data to be transmitted to the first remote station 6 at 38.4 Kbps only allows the data to be transmitted to the second remote station 6 at 9.6 Kbps (1/4 of the symbol rate) if the transmission loss to the second remote station 6 is approximately 6 dB higher than that of the first remote station 6, or if the second remote station 6 requires an Eb / No ratio 6 dB higher than that of the first remote station 6 . It is preferable to transmit first to remote station 6 which requires less power per bit, because fewer resources are consumed for a given transmission speed.
With reference to Figure 1, remote stations 6a and 6b are closer to base station 4c than remote station 6c. Similarly, remote stations 6d and 6e are closer to base station 4d than remote station 6c. Therefore, better utilization of the forward link is achieved by first transmitting to remote stations 6a, 6b, 6d and 6e, in time slot T1, and then transmitting to remote station 6c, in time slot T2. In general, it is preferable to assign a higher priority to remote station 6, which requires less power per bit to maintain the communication link.
Remote station 6 may undergo a soft handoff with multiple cells. The remote station 6 that undergoes a soft handoff may consume more resources if several cells transmit simultaneously to the remote station 6. Also, the remote station 6 that experiences a soft handoff is usually near the edge of the cell and requires more energy per bit. Consequently, it is possible to obtain a higher data throughput on the forward link by assigning a low priority to the remote station 6 which is undergoing a soft handoff.
The optimal allocation of resources also depends on the amount of data to be transmitted to the remote station 6. The data to be transmitted is stored in a queue located within the selection element 14. Therefore, the size of the queue indicates the amount of data to be transmitted. At the beginning of each scheduling interval, the queue size of all scheduled tasks is sent to channel scheduler 12. If the queue size of a scheduled task is small, the channel scheduler 12 deletes the task from the rate schedule routine. Transmission of a small amount of data can be done in a satisfactory period of time through the primary code channel. The channel scheduler 12 only allocates resources, when necessary, to transmit a large amount of data. Therefore, the amount of resources allocated to each remote station is roughly proportional to the size of the queue of data to be transmitted to remote station 6.
The type of data to be transmitted is another important issue in prioritizing remote stations 6. Some types of data are time sensitive and require quick attention. Other types of data can tolerate a longer delay in transmission. Obviously, the highest priority is assigned to data that is time sensitive.
As an example, it is inevitable that some of the transmitted data that is received at the remote station 6 contains errors. Remote station 6 is able to determine a frame error by using the attached CRC bits in the received code channel frames. After determining that a code channel frame has been received with some error, the error indicator bit (IBE) for said code channel frame is flagged, and the remote station 6 informs the cell about the frame error. The implementation and use of BIE transmission is disclosed in US Patent No. 5,568,483, mentioned above. Next, the channel scheduler 12 schedules the retransmission of the received code channel frames that contain any errors. At remote station 6, another type of signal processing may depend on code channel frames received in error. Therefore, the channel scheduler 12 gives the data that is being retransmitted a higher priority than the data that is being transmitted for the first time.
Conversely, if the same remote station 6 repeatedly reports frame errors, this may indicate that the forward link is down. Consequently, allocating the forward link resources for repeated retransmission of code channel frames received in error is wasteful. In this case, the remote station 6 may be temporarily put into the hold state. High speed data transmission can be suspended until the forward link condition improves. Channel scheduler 12 can still direct data transmission on the primary code channel and continuously monitor forward link performance. After being informed that the forward link condition has improved, the channel scheduler 12 overrides the hold state of remote station 6 and resumes high-speed data transmission to remote station 6. On the other hand, the data from the queue can be deleted after a predetermined number of unsuccessful retransmission attempts.
When assigning priorities to remote stations 6, it may be desirable to differentiate remote stations 6 according to the type of data service being provided. For example, a pricing structure can be established for different data transmission services. The highest priority is given to services subject to a special rate. Through the pricing structure, the user of each remote station 6 can individually determine the priority and, consequently, the type of service that the user is to receive.
ES 2 293 452 T3
The priority of remote station 6 can also be converted into a function of the amount of delay that remote station 6 has already experienced. Available forward link resources are assigned first to remote station 6 with the highest priority. Consequently, the remote station 6 having a lower priority usually experiences a longer transmission delay. As the magnitude of the delay experienced by the low priority remote station 6 increases, the priority of the remote station 6 may be updated. This prevents data directed towards the low priority remote station 6 from remaining in the queue indefinitely. Without the priority update, the low priority remote station 6 may experience an intolerable amount of delay. The priority update can be increased in a way that enables high-quality communication of scheduled and unscheduled tasks, while maintaining system goals.
The factors are given different weights, depending on the set of system objectives that are optimized. For example, to maximize data throughput over the forward link, a higher weight is given to the energy per bit needed for remote station 6 and whether or not remote station 6 is experiencing a soft handoff. This weighting system does not take into account the data types or the priority of the remote stations 6, and therefore does not address the fairness objective of the system.
Alternatively, a pricing structure can be maintained that allows the user of each remote station 6 to individually determine the priority of remote station 6. Willingness to pay a special fee for the resource indicates a higher level of importance. In this case, a system that tries to maximize revenue and user satisfaction can first transmit to remote station 6 subject to a special rate, even though the transmission requires more resources. Other weighting systems may also be generated by the factors cited above, in addition to other factors not cited, to achieve any set of objectives of the system, such weighting systems being within the scope of the present invention.
Contents21
9 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9
51 members in 17 offices
Priority claims5
| Document | Office | Kind | Date |
|---|---|---|---|
| 19970798951 | United States of America | – | |
| 79895197 | United States of America | A | |
| 79895197 | United States of America | A | |
| 05019889798951 | – | – | – |
| US19970798951 | – | – | – |
Members51
| Document | Office | Kind | |
|---|---|---|---|
| CA2251397A1 | Canada | A1 | |
| WO9835514A2 | World Intellectual Property Organization (WIPO) | A2 | |
| AU6276298A | Australia | A | |
| WO9835514A3 | World Intellectual Property Organization (WIPO) | A3 | |
| EP0897644A2 | European Patent Office (EPO) | A2 | |
| CN1223059A | China | A | |
| ZA98988B | South Africa | B | |
| IL126538D0 | Israel | D0 | |
| BR9806115A | Brazil | A | |
| HK1020827A1 | Hong Kong, China | A1 | |
| JP2000509942A | Japan | A | |
| AR011656A1 | Argentina | A1 | |
| KR20000064932A | Republic of Korea | A | |
| TW444453B | Taiwan Province of China | B | |
| US6335922B1 | United States of America | B1 | |
| US2002012332A1 | United States of America | A1 | |
| IL126538A | Israel | A | |
| EP1603350A2 | European Patent Office (EPO) | A2 | |
| EP0897644B1 | European Patent Office (EPO) | B1 | |
| AT314794T | Austria | T | |
| ATE314794T1 | Austria | T1 | |
| DE69832930D1 | Germany | D1 | |
| EP1603350A3 | European Patent Office (EPO) | A3 | |
| US7054293B2 | United States of America | B2 | |
| ES2255148T3 | Spain | T3 | |
| DE69832930T2 | Germany | T2 | |
| US2006203731A1 | United States of America | A1 | |
| KR100572905B1 | Republic of Korea | B1 | |
| CN1297161C | China | C | |
| EP1791374A2 | European Patent Office (EPO) | A2 | |
| EP1791374A3 | European Patent Office (EPO) | A3 | |
| CN101030933A | China | A | |
| JP3970332B2 | Japan | B2 | |
| CA2251397C | Canada | C | |
| EP1603350B1 | European Patent Office (EPO) | B1 | |
| DE69838767D1 | Germany | D1 | |
| HK1105131A1 | Hong Kong, China | A1 | |
| ES2293452T3This record | Spain | T3 | |
| HK1106890A1 | Hong Kong, China | A1 | |
| DE69838767T2 | Germany | T2 | |
| EP1791374B1 | European Patent Office (EPO) | B1 | |
| AT439024T | Austria | T | |
| ATE439024T1 | Austria | T1 | |
| DE69841049D1 | Germany | D1 | |
| ES2328175T3 | Spain | T3 | |
| CN101030933B | China | B | |
| US7751370B2 | United States of America | B2 | |
| CN101820313A | China | A | |
| US2010273503A1 | United States of America | A1 | |
| US8396033B2 | United States of America | B2 | |
| CN101820313B | China | B |
Numbers
- Publication
- 2293452
- Publication, DOCDB
- 2293452
- Publication, EPODOC
- ES2293452T
- Application
- 5019889
- Application, DOCDB
- 05019889
- Application, EPODOC
- ES20050019889T
Titles2
- Spanish
- SISTEMA DE COMUNICACION PARA PROGRAMAR LAS VELOCIDADES DE ENLACE DIRECTO.
- English
- COMMUNICATION SYSTEM FOR PROGRAMMING DIRECT LINK SPEEDS.
Classification
- CPC, 11
- H04W52/346
- H04B7/2659
- H04W28/18
- H04W28/22
- H04W36/18
- H04W52/281
- H04W52/34
- H04W52/343
- H04W72/1273
- H04W72/563
- H04W72/52
- IPC, 11
- H04L29 06
- H04B7 005
- H04B7 26
- H04L29 08
- H04W28 18
- H04W28 20
- H04W28 22
- H04W52 28
- H04W52 34
- H04W72 04
- H04W72 12