DETAILED DESCRIPTION OF THE INVENTION
[0014] Referring now to the drawings in which like numerals represent like elements or steps throughout the several views, FIG. 1 displays an exemplary base station system (“base station”) 100 of a wireless communication system for half duplex over-the-air communications to and from a plurality of half duplex wireless mobile stations 110 (also sometimes referred to herein as “wireless mobile stations 110 ” or “mobile stations 110 ”) according to a method 200 shown in FIG. 2 of the present invention. The base station 100 also communicatively connects, in a typical configuration, with switching systems of the wireless communication system that perform call processing, voice and data path switching, billing, and other functions. Generally, the base station 100 comprises a controller 102 , a transmitter 104 , a receiver 106 , and one or more antenna(s) 108 . Though shown as four separate units, units 102 - 108 may be combined or further broken down into additional units. The controller 102 includes a processing unit (i.e., preferably, a microprocessor or similar device(s) having similar characteristics and functionality to a microprocessor) capable of executing software instructions to control operation of the base station 100 and, hence, to control and enable communications between the base station 100 and the plurality of half duplex wireless mobile stations 110 via the transmitter 104 , receiver 106 , and antenna(s) 108 . The detailed operation of the transmitter 104 , receiver 106 , and antenna(s) 108 are well-known in the art and need not be described here.
[0015] In controlling operation of the base station 100 and controlling and enabling communications between the base station 100 and the plurality of half duplex wireless mobile stations 110 , the controller 102 allocates, or assigns, periodically repeating time slots 304 , 306 (see FIG. 3 ) of periodically repeating time frames 300 , 302 of uplink and downlink carriers 114 A , 114 B to the half duplex wireless mobile stations 110 in accordance with the method 200 of the present invention. Uplink and downlink carriers 114 A , 114 B may include one or more uplink carriers 114 A operating at different frequencies and one or more corresponding downlink carriers 114 B operating at different frequencies which are offset by a pre-determined frequency gap from the frequencies of their respective uplink carriers 114 A . An uplink carrier 114 A is utilized by a mobile station 110 to transmit, or upload, control information (also sometimes referred to herein as “control data”) or traffic data for receipt by a base station 100 by transmitting such control information or traffic data in respective control or data time slots of a time frame 300 thereof. A downlink carrier 114 B is employed by a mobile station 110 to receive, or download, control information or traffic data transmitted by a base station system 100 through receipt of such control information or traffic data in respective control or data time slots of a time frame 302 thereof. Generally, such communicated data comprises, for example and without limitation, data representative of voice, video, still images, user inputs, computer-generated outputs, and other similar information.
[0016] While perhaps somewhat counter-intuitive, it should be remembered that an uplink control time slot and uplink data time slots associated with a particular mobile station 110 may be present in the same or different uplink carriers 114 A . Similarly, a downlink control time slot and downlink data time slots associated with a particular mobile station 110 may be present in the same or different downlink carriers 114 B . However, all uplink data time slots corresponding to a particular mobile station 110 are, generally, present in the same uplink carrier 114 A and all downlink data time slots corresponding to a particular mobile station 110 are, typically, present in the same downlink carrier 114 B .
[0017] It should be understood that the term “wireless mobile station” includes, but is not limited to, devices commonly referred to as radio telephones, cellular telephones, personal communications service (PCS) telephones, personal digital assistants, and other devices available now or in the future which communicate voice and/or data wirelessly. It should also be understood that the scope of the present invention includes, but is not limited to, any particular protocol for wireless communications or any particular type or form of base station system and/or controller described herein.
[0018] FIG. 2 displays a flowchart representation of method 200 implemented by the controller 102 to assign control and data time slots of uplink and downlink carriers 114 A , 114 B for half duplex communication with the plurality of half duplex wireless mobile stations 110 . While the method 200 is described herein with reference to a GSM communication system, it should be noted that the method 200 of the present invention may be applicable to other forms of wireless communication systems, including, but not limited to, UMTS TDD mode and other TDD wireless systems.
[0019] The method 200 starts at step 202 where controller 102 initializes various operating parameters based, at least in part, on data values received and stored during base station method or associated with 100 deployment by a non-volatile data storage device (within or associated with) controller 102 such as, for example and without limitation, an optical disk, a magnetic disk, read only memory, programmable read only memory, electrically programmable read only memory, battery backed-up random access memory, or other similar device. The data values stored by the non-volatile data storage device include, among other data values, the number of groups 112 into which a plurality of half duplex wireless mobile stations 110 will be divided and assigned to, or grouped, for purposes of control and data time slot allocation. Once set during deployment, the number of groups 112 does not, generally, change during operation of the base station 100 . Two or more groups 112 of half duplex wireless mobile stations 110 may be used in accordance with method 200 .
[0020] Note that individual groups 112 of half duplex wireless mobile stations 110 are identified herein with a subscript between “A” and “Z” to indicate that the present invention includes a plurality of different groups 112 of half duplex wireless mobile stations 110 . Also note that individual half duplex wireless mobile stations 110 within a particular group 112 are identified herein with two subscripts, the first subscript indicating the group 112 to which the half duplex wireless mobile station 110 belongs (i.e., “A” to “Z”) and the second subscript being between “1” and “N” to indicate that the particular group 112 may include a plurality of individual half duplex wireless mobile stations 110 . It should also be noted, however, that a particular group 112 may, if appropriate, include only one half duplex wireless mobile station 110 .
[0021] Once the base station system controller 102 initializes operating parameters, at step 204 , the controller 102 identifies and assigns respective physical and logical time slots 304 in carrier uplink frames 300 as the control time slots and as the “anchor” data time slots (also sometimes referred to herein as the “anchor time slots”) therein for each group 112 of half duplex wireless mobile stations 110 . Similarly, at step 206 , the controller 102 identifies and assigns respective physical and logical time slots 306 in carrier downlink frames 302 as the control time slots and as the anchor data time slots therein for each group 112 of half duplex wireless mobile stations 110 . Thus, all of the mobile stations 110 of a group 112 of mobile stations 110 have the same uplink and downlink control time slots. However, even though the anchor data time slots for each group 112 of mobile stations 110 are logically positioned in time to coincide with the control time slots, the anchor data time slots for individual mobile stations 110 of a group 112 may physically coincide, or not coincide, with the control time slots for that group 112 of mobile stations 110 . Note that by allowing a group's control time slot and anchor data time slots to coincide with the same physical time slots, the method 200 is operable with and supports the EGPRS packet voice protocol.
[0022] For instance, the control time slot and anchor data time slot in an uplink frame 300 for a particular group 112 of mobile stations 110 may, respectively, be physically and logically assigned to be the eighth time slot of the uplink frame 300 of a first uplink carrier 114 A . However, because the data time slots for a particular mobile station 110 of the group 112 may be assigned (as described below) subsequently in the uplink frame 300 of a second uplink carrier 114 B (i.e., to avoid using the same physical data time slots as another mobile station 110 of the group 112 ), the anchor data time slot for that mobile station 110 is, physically, the eighth time slot of the uplink frame 300 of the second uplink carrier 114 B , but is logically, the eighth time slot of the uplink frame 300 of the first uplink carrier 114 B .
[0023] The physical control time slot of the uplink frame 300 (and, hence, the logical anchor data time slot) for each group 112 may be spaced maximally distant from the physical control time slot of the corresponding downlink frame 302 (and, hence, the logical anchor data time slot) for each group 112 in order to provide maximum availability of data time slots to the half duplex wireless mobile stations 110 . That is, by assigning physical control time slots and logical anchor time slots of groups 112 maximally spaced apart in uplink and downlink frames 300 , 302 and by individually allocating subsequent data time slots for use by half duplex wireless mobile stations 110 of the groups 112 as described below, the mobile stations 110 of each group 112 may use data time slots nearest the group's logical anchor data time slot that cannot be used by the mobile stations 110 of another group 112 due to idle time requirements before and/or after the transmission or reception of data. Such assignment, or allocation, of time slots results in more efficient use of the time slots 304 , 306 of a carrier frame 300 , 302 and tends to prevent the occurrence of situations in which there are no compatible, or usable, time slots for a half duplex wireless mobile station 112 , even though unused, incompatible time slots 304 , 306 may exist.
[0024] FIG. 3 illustrates the maximally distant spacing of the control time slots (and, hence, anchor data time slots) of two exemplary groups 112 of half duplex wireless mobile stations 110 in two consecutive uplink frames 300 and in two consecutive corresponding downlink frames 302 . As depicted in FIG. 3 , each uplink frame 300 includes a plurality of uplink time slots 304 which are individually identified with subscript numerals zero through fifteen. Similarly, each downlink frame 302 includes a plurality of downlink time slots 306 which are also individually identified with subscript numerals zero through fifteen. Note that FIG. 3 actually displays two consecutive uplink frames 300 and two consecutive downlink frames 302 to enable better visualization, as described below, of the relationship of control time slots (and, hence, anchor data time slots) 304 A , 306 A of uplink and downlink frames 300 , 302 for a first group 112 A of half duplex wireless mobile stations 110 and control time slots (and, hence, anchor data time slots) 304 B , 306 B of uplink and downlink frames 300 , 302 for a second group 112 B of half duplex wireless mobile stations 110 . Nonetheless, it should be understood that each uplink frame 300 and downlink frame 302 may be identical.
[0025] Operating according to method 200 , the base station system controller 102 identifies and assigns uplink time slot 304 0 as the control time slot (and, hence, as the anchor data time slot) 304 A of the uplink frame 300 for the first group 112 A of half duplex wireless mobile stations 110 (i.e., where the subscript “A” indicates the first group 112 A of half duplex wireless mobile stations 110 ). The base station system controller 102 also identifies and assigns downlink time slot 306 8 as the control time slot (and, hence, as the anchor data time slot) 306 A of the downlink frame 300 for the first group 112 A of half duplex wireless mobile stations 110 (i.e., where the subscript “A” again indicates the first group 112 A of half duplex wireless mobile stations 110 ). During operation and as seen in FIG. 3 , each uplink and downlink frame 300 , 302 may be thought of as being communicated in a head-to-tail manner relative to a previous respective uplink or downlink frame 300 , 302 . As a consequence, for the first group 112 A of half duplex wireless mobile stations 110 , each control time slot (and, hence, each anchor data time slot) 304 A of an uplink frame 300 will always be positioned, or oriented, relative to successive control time slots (and, hence, successive anchor data time slots) 306 A of successive downlink frames 302 at a location midway therebetween (i.e., as indicated by there being a {fraction (1/2)} frame between a control time slot 304 A of an uplink frame 300 and successive control time slots 306 A of downlink frames 302 as shown in FIG. 3 ). From the perspective of each control time slot (and, hence, each anchor data time slot) 306 A of a downlink frame 302 , each control time slot (and, hence, each anchor data time slot) 306 A of a downlink frame 302 will always be positioned, or oriented, relative to successive control time slots (and, hence, anchor data time slots) 304 A of successive uplink frames 300 at a location midway therebetween (i.e., as indicated by there being a {fraction (1/2)} frame between a control time slot 306 A of a downlink frame 302 and successive control time slots 304 A of uplink frames 300 as shown in FIG. 3 ). Thus, the control time slots (and therefore anchor data time slots) 304 A , 306 A for the first group 112 A of half duplex wireless mobile stations 110 are maximally spaced apart relative to one another in time.
[0026] In a similar manner, for the second group 112 B of half duplex wireless mobile stations 110 , the base station system controller 102 identifies and assigns uplink time slot 304 8 as the control time slot (and, hence, as the anchor data time slot) 304 B of the uplink frame 300 and downlink channel 306 0 as the control time slot (and, hence, as the anchor data time slot) 306 B of the downlink frame 302 (i.e., where the subscript “B” indicates the second group 112 B of half duplex wireless mobile stations 110 ). If, again, each uplink and downlink frame 300 , 302 is thought of as being communicated in a head-to-tail manner relative to a previous respective uplink and downlink frame 300 , 302 during operation, each control time slot (and, hence, each anchor data time slot) 304 B of an uplink frame 300 for the second group 112 B of half duplex wireless mobile stations 110 will always be positioned, or oriented, relative to successive control time slots (and, hence, successive anchor data time slots) 306 B of successive downlink frames 302 at a location midway therebetween (i.e., as indicated by there being a {fraction (1/2)} frame between a control time slot (and, hence, a anchor data time slot) 304 B of an uplink frame 300 and successive control time slots (and, hence, successive anchor data time slots) 306 B of downlink frames 302 as shown in FIG. 3 ). Correspondingly from the perspective of each control time slot (and, hence, each anchor data time slot) 306 B of a downlink frame 302 for the second group 112 B of half duplex wireless mobile stations 110 , each control time slot (and, hence, each anchor data time slot) 306 B of a downlink frame 302 will always be positioned, or oriented, relative to successive control time slots (and, hence, successive anchor data time slots) 304 B of successive uplink frames 300 at a location midway therebetween (i.e., as indicated by there being a {fraction (1/2)} frame between a control time slot 306 B of a downlink frame 302 and successive control time slots 304 B of uplink frames 300 as shown in FIG. 3 ). Thus, as with the control time slots (and, hence, the anchor data time slots) 304 A , 306 A of the first group 112 A of half duplex wireless mobile stations 110 , the control time slots (and, hence, the anchor data time slots) 304 B , 306 B for the second group 112 B of half duplex wireless mobile stations 110 are maximally spaced apart relative to one another in time.
[0027] At step 208 of method 200 , the base station system controller 102 uses the number of groups 112 of half duplex wireless mobile stations 110 to establish a plurality of groups 112 for half duplex wireless mobile stations 110 . Then, upon registration of individual mobile stations 110 with the base station system 100 , the controller 102 assigns the mobile stations 110 to particular groups 112 of the plurality of groups 112 having control time slots (and, hence, anchor data time slots) 304 A-Z , 306 A-Z as described above. In assigning the half duplex wireless mobile stations 110 initially to the groups 112 , the base station system controller 102 , preferably, assigns the half duplex wireless mobile stations 110 evenly across the plurality of groups 112 to balance load.
[0028] Once the half duplex wireless mobile stations 110 are assigned to particular groups 112 , the controller 102 receives requests for specific numbers of uplink or downlink data time slots (e.g., the same number of data time slots in each direction) from the half duplex wireless mobile stations 110 at step 210 . In response, the controller 102 assigns the desired number of uplink or downlink data time slots 304 , 306 to each requesting half duplex wireless mobile station 110 at step 212 . Such assignments are made by the controller 102 first recalling the logical location in time of the anchor data time slots 304 , 306 for the mobile station's group 112 for both data communication directions (i.e., the location in time being identified relative to the start of the uplink frame 300 and downlink frame 302 ). Next, the controller 102 determines whether the required number of data time slots 304 , 304 are available for use either before, after, or before and after the anchor data time slots 304 , 306 , in time, for each of the potentially usable uplink and downlink carriers 114 A , 114 B (i.e., since there may be more than one uplink and more than one downlink frequencies available for use by the controller). Upon locating usable groups of data time slots 304 , 306 in the uplink and downlink frames 300 , 302 of uplink and downlink carriers 114 A , 114 B , the controller 102 assigns the located data time slots 304 , 306 to the mobile station 110 that requested them. Because the data time slots 304 , 306 are allocated starting at anchor data time slots of the group 112 to which a requesting mobile station 110 belongs and by assigning data time slots near the anchor data time slots in relative directions before, after, or before and after the anchor data time slots, the method of allocation is referred to as a “grow from anchor” or “grow from center” method with the anchor data time slots being at the “center” of the assigned data time slots.
[0029] In determining whether appropriate data time slots are available, the controller 102 looks for data time slots 304 , 306 which are near the appropriate anchor data time slot, which are consecutively adjacent to one another in time (i.e., define a contiguous group or block of data time slots 304 , 306 ), and that are not already assigned to another mobile station 110 or unusable due to idle time constraints. When the controller 102 determines whether such a contiguous group of data time slots 304 , 306 exists in the uplink or downlink frames 300 , 306 of the uplink or downlink carrier 114 A , 114 B in which the uplink or downlink control time slots are physically present, the controller 102 looks for groups of data time slots 304 , 306 which include data time slots 304 , 306 either before, after, or before and after the control time slots in time, but which do not include the control time slots because control and traffic data cannot be communicated via the same time slot. Hence, in such a situation, the selected data time slots 304 , 306 may not be actually contiguous in time if one or more of the assigned data time slots are either before or after the control time slots. However, in uplink and downlink carriers 114 A , 114 B in which the control time slots are not physically present, the assigned data time slots define a, generally, contiguous group of data time slots, including the appropriate anchor data time slots. It should be understood that the scope of the present invention includes all time slot allocation methods which may assign data time slots, whether contiguous or not, that are near an anchor data time slot and extend, or are located, away (i.e., grow outward) from that anchor data time slot in relative directions before, after, or before and after the position of the anchor data time slot in time.
[0030] For example and referring to FIG. 3 for reference, the control and anchor data time slots in the downlink frame 302 are time slot 306 A (i.e., also identified as 306 8 ) for the first group 112 A of half duplex wireless mobile stations 110 . If a half duplex wireless mobile station 110 of the first group 112 A requests three data time slots, the controller 102 investigates all of the potential downlink carriers 114 B (i.e., at different frequencies) to determine whether the three data time slots are available for use by the mobile station 110 . Note that a similar process is followed with respect to the assignment of data time slots in the uplink frames 300 of all potential uplink carriers 114 A .
[0031] Continuing with the example and in considering the downlink carrier 114 B in which the downlink control time slot is present, the controller 102 , preferably, considers the availability of time slots 306 5 , 306 6 , and 306 7 before the anchor data time slot in time and time slots 306 9 , 306 10 , and 306 11 after the anchor data time slot in time, but does not consider the availability of time slot 306 8 because it is also the control time slot. Based upon the availability of the time slots, many different combinations and permutations of selections are possible with all or some of the selected time slots being before the anchor data time slot in time, all or some of the selected time slots being after the anchor data time slot in time, or some of the selected time slots being before and after the anchor data time slot in time. However, all selected time slots are, generally, near the anchor data time slot in time. For instance, if time slots 306 5 , 306 6 , and 306 7 are available, the controller 102 may assign those time slots to the requesting mobile station 110 ; if time slots 306 6 , 306 7 , and 306 9 are available, the controller 102 may assign those time slots to the requesting mobile station 110 ; if time slots 306 7 , 306 9 , and 306 10 are available, the controller 102 may assign those time slots to the requesting mobile station 110 ; and, if time slots 306 9 , 306 10 , and 306 11 are available, the controller 102 may assign those time slots to the requesting mobile station 110 .
[0032] Continuing with the example and in considering downlink carriers 114 B in which the downlink control time slot is not present, the controller 102 considers the availability of the anchor data time slot 306 8 , of time slots 306 6 and 306 7 before the anchor data time slot in time, and of time slots 306 9 and 306 10 after the anchor data time slot in time. Depending on which time slots are available, many different combinations and permutations of selections are possible with the selected time slots including the anchor data time slot 306 8 and the remainder of the selected time slots being before the anchor data time slot in time, after the anchor data time slot in time, or before and after the anchor data time slot in time. For instance, if anchor data time slot 306 8 is available and if time slots 306 6 and 306 7 are also available, the controller 102 may assign those time slots to the requesting mobile station 110 ; if anchor data time slot 306 8 is available and if time slots 306 7 and 306 9 are available, the controller 102 may assign those time slots to the requesting mobile station 110 ; and, if anchor data time slot 306 8 is available and if time slots 306 9 and 306 10 are available, the controller 102 may assign those time slots to the requesting mobile station 110 .
[0033] Returning now to the description of method 200 with reference to FIG. 2 , at step 214 , if the controller 102 is able to assign the requested number of data time slots to a half duplex wireless mobile station 110 of a particular group 112 , the controller 102 branches back to operate in accordance with step 208 where it, once again, assigns newly registered mobile stations 110 to appropriate groups 112 of mobile stations 110 . However, if the controller 102 is unable to assign the requested number of data time slots to a particular mobile station 110 at step 212 , the controller 102 reassigns the wireless mobile station 110 to a different group 112 of the plurality of groups 112 of half duplex wireless mobile stations 110 . Such a situation may arise, for instance, when a particular wireless mobile station 110 demands a large number of time slots 304 , 306 for data communication or belongs to a group 112 having a large demand for traffic time slots 304 , 306 . It should be noted that the number of such reassignments is, generally, small compared to the number of reassignments when a random time slot allocation method is employed by a controller 102 . This advantage of method 200 is illustrated graphically in FIG. 4 which shows the number of control time slot reassignments per second versus the number of users for a conventional random time slot allocation method (i.e., denoted in FIG. 4 as the “RND” method) and methods 200 of the present invention (i.e., denoted in FIG. 4 as the “Grow From Center” or “GFC” method). The results displayed in FIG. 4 are based on 8 carriers, 2 control channels, full rate, Tt=3, Th=2, Thop=0, and voice activity of 100/235.
[0034] It should be also noted, as illustrated in FIG. 5 , that the dropping probability associated with methods 200 of the present invention (i.e., denoted in FIG. 5 as the “GFC” method) are much lower than the dropping probability associated with a random time slot allocation method (i.e., denoted in FIG. 5 as the “RND” method). Further, as seen in FIG. 5 , the blocking probabilities are approximately the same. The basis for the results and relationships of FIG. 5 is 8 carriers, 2 control channels, full rate, Tt=3, Th=2, Thop=0, and voice activity of 100/235.
[0035] Referring back to FIG. 2 , method 200 stops at step 218 , for instance, if the base station 100 is shut down or otherwise taken out of service. It should be noted, however, that time slot allocation is a dynamic process that is performed repeatedly during operation of a base station 100 as mobile stations 110 enter into and leave the base station's service area. It should also be noted that, even though not addressed in the description herein, once a mobile station 110 leaves the base station's service area (e.g., is handed-off to another base station 100 ), the time slots assigned to that mobile station 110 according to method 200 are released for reassignment by the controller 102 to other mobile stations 110 .
[0036] Whereas this invention has been described in detail with particular reference to a preferred embodiment, it is understood that variations and modifications can be effected within the spirit and scope of the invention, as described herein before and as defined in the appended claims. The corresponding structures, materials, acts, and equivalents of all means or step plus function elements, if any, in the claims below are intended to include any structure, material, or acts for performing the functions in combination with other claimed elements as specifically claimed.