Abstract:
Wireless personal area networks with frequency hopping and rotation of the frequency hopping sequences. In one embodiment, a method of wireless communication is provided, the method including: transmitting a beacon frame by a piconet coordinator that specifies a rotation index and hopping index; receiving a beacon frame by a device associated with or to be associated with the piconet coordinator; extracting the rotation index and hopping index by the MAC of the recipient device and communicating them to the PHY for transmission and reception in a current superframe; missing a subsequent beacon frame by a recipient device; and using the rotation index and hopping index previously received to determine a current frequency hopping sequence for a current superframe following the missed beacon frame.

Description:
PRIORITY CLAIM  
       [0001]    This application claims priority to U.S. Provisional Patent Application Serial No. 60/450,804, filed on Feb. 28, 2003, entitled “TI MAC Sublayer Proposal for IEEE 802.15 Task Group  3   a  In Support of Frequency Hopping PHY,” incorporated herein by reference. 
     
    
     
       BACKGROUND  
         [0002]    A network is a system that allows communication between members of the network. Wireless networks allow such communications without the physical constraints of cables and connectors. Recently, wireless local area networks (a local area network is a computer network covering a local area such as an office or a home) with ranges of about 100 meters or so have become popular. Wireless local area networks are generally tailored for use by computers, and as a consequence such networks provide fairly sophisticated protocols for establishing and maintaining communication links. Such networks, while useful, may be unsuitably complex and too power-hungry for electronic devices of the future.  
           [0003]    A wireless personal area network is a network with a more limited range of about 10 meters or so. With the more limited range, such networks may have fewer members and require less power than local area networks. The IEEE (Institute of Electrical and Electronics Engineers) is developing a standard for wireless personal area networks. The IEEE 802.15.3 standard specifies a wireless personal area medium access control (MAC) protocol and a physical (PHY) layer that may offer low-power and low-cost communications with a data rate comparable to that of a wireless local area network. The standard coins the term “piconet” for a wireless personal area network having an ad hoc topology of devices coordinated by a piconet coordinator (PNC). Piconets form, reform, and abate spontaneously as various electronic devices enter and leave each other&#39;s proximity. Piconets may be characterized by their limited temporal and spatial extent. Physically adjacent devices may group themselves into multiple piconets running simultaneously.  
           [0004]    The IEEE 802.15.3a task group is developing a new PHY layer operating in an ultra wide band (UWB) and providing very high data rates (in the order of 100 Mbps). Currently this PHY layer is based on frequency hopping (FH) orthogonal frequency division multiplexing (OFDM), whereby the OFDM symbols of a data packet are successively sent in a pre-ordered sequence of frequency bands comprising all or part of the UWB frequency range. There may be a variety of such sequences, which are referred to as frequency hopping (FH) sequences herein but may be given other terms in the final standard or the technical literature. The frequency hopping nature of the PHY makes simultaneously operating piconets susceptible to mutual interference. The draft IEEE standard proposes that each PNC selects an FH sequence for use by the devices in its piconet for data transmission. However, this creates a significant likelihood of repeated collisions between adjacent piconets that happened to have chosen the same FH sequence. Accordingly, a randomization mechanism for avoiding persistent interference and hence improving network performance (in terms of user throughput and delay) is desired for the robust operation of ad hoc piconets and other wireless personal area networks in general.  
         SUMMARY  
         [0005]    Accordingly, there is disclosed herein wireless personal area networks with frequency hopping and rotation sequences. A rotation sequence is a sequence of frequency hopping sequences. Just as there are a variety of frequency hopping sequences, there are a variety of rotation sequences. A rotation sequence is identified by a rotation index while a frequency hopping sequence is identified by a hopping index. In one embodiment, a method of wireless communication is provided, the method including: transmitting a beacon frame by a piconet coordinator that specifies a rotation index and hopping index; receiving the beacon frame by a device associated with or to be associated with the piconet coordinator; extracting the rotation index and hopping index by the MAC of the recipient device and communicating them to the PHY for transmission and reception in a current superframe; missing a subsequent beacon frame by a recipient device; and using the rotation index and hopping index previously received to determine a current frequency hopping sequence for a current superframe following the missed beacon frame. Each beacon frame includes a field that specifies a rotation sequence of frequency hopping sequences, and further includes a field that indicates a frequency hopping sequence to be used in the current superframe. The inclusion of the frequency hopping sequence enables devices to find out the frequency hopping sequence in use for the current superframe in case they have not received previous beacons.  
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0006]    A better understanding of the present invention can be obtained when the following detailed description is considered in conjunction with the following drawings, in which:  
         [0007]    [0007]FIG. 1 shows two overlapping piconets;  
         [0008]    [0008]FIGS. 2A-2E show a framing structure for piconet communications;  
         [0009]    FIGS.  3  shows an information element for communicating rotation and frequency hopping information in a beacon; and  
         [0010]    [0010]FIG. 4 shows a block diagram of an illustrative piconet member device. 
     
    
       [0011]    While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the drawings and detailed description thereto are not intended to limit the invention to the particular form disclosed, but on the contrary, the intention is to cover all modifications, equivalents and alternatives falling within the spirit and scope of the present invention as defined by the appended claims.  
       DETAILED DESCRIPTION  
       [0012]    [0012]FIG. 1 shows a number of electronic devices that have cooperated to form two piconets  102 ,  114 . Piconets have an ad hoc topology that results from the spontaneous combinations of devices that are in close proximity. Devices  104 - 112  are members of piconet  102 , and devices  116 - 120  are members of piconet  114 . Some or all of the devices that can participate in piconet communications can also operate as the piconet coordinator (“PNC”). In FIG. 1, device  108  is operating as the PNC for piconet  102 , while device  118  is operating as the PNC for piconet  118 . PNC devices  108 ,  118  broadcast beacon frames to facilitate the communications of their respective piconet members. The effective range of the beacons (and hence the effective boundary of the piconets) is shown by broken lines  102  and  114 . Note that devices in one piconet (e.g., device  106 ) may be subject to radio interference in the other piconet.  
         [0013]    In the configuration of FIG. 1, it is assumed that the piconets are operating independently. Nevertheless, such piconets may frequently synchronize with each other in starting a frame transmission. This is because the contention access method, referred to as carrier sense multiple access with collision avoidance (CSMA/CA), tends to force devices in overlapping piconets to start their transmissions after the end of a current transmission that they can hear. Such synchronization leads to mutual interference and hence repeated collisions between overlapping piconets operating on the same frequency hopping sequence, which in turn causes serious degradation in data throughput and access delay performance.  
         [0014]    To combat interference, the piconets  102 ,  114  (FIG. 1) may employ different frequency hopping sequences so that they do not use the same frequency bands most of the time. To this end, a given piconet will not use the same hopping sequence indefinitely, but will employ different hopping sequences for different superframes. The hopping sequence to be used for a particular superframe by the devices in that piconet is provided in the beacon sent by the PNC of the piconet. To enable devices that miss one or more beacons to continue their transmission and reception without interruption, as is important for audio/video streaming, the hopping sequences to be used in successive superframes are pre-ordered into a rotation sequence which is also identified in each beacon. More details are given below in connection with FIG. 3.  
         [0015]    [0015]FIGS. 2A-2E show an illustrative framing structure. In each of these figures, the time axis increases from right to left, so that the rightmost portion of the figure corresponds to the earliest portion of the communications sequence, and the leftmost portion corresponds to the latest portion of the sequence. The figures are not to scale.  
         [0016]    [0016]FIG. 2A shows a sequence of superframes that includes superframes  202 ,  204 , and  206 , which occur in order from right to left. As shown in FIG. 2B, each superframe begins with a beacon frame  210 , which is transmitted by the PNC. The beacon  210  is followed by an optional contention access period (“CAP”)  212 . During the CAP, the piconet member devices may attempt communications using a CSMA/CA protocol. The optional CAP  212  is followed by a channel time allocation period (“CTAP”)  214 , which is composed of channel time allocations (“CTAs”)  216 - 226 . Any of the CTAs in the channel time allocation period  214  may be management CTAs (“MCTAs”) (e.g., MCTAs  216 ,  218 ). CTAs are allocated for communications from a specified source device to a specified destination device or a group of destination devices. The length of the CAP and the allocations of the CTAs are specified in the beacon frame.  
         [0017]    The member devices may request channel time allocations by sending management frames to the PNC. Depending on parameters specified by the beacon, the management frames may be sent during the CAP or during MCTAs. Similarly, data frames may be exchanged by member devices during the CAP or CTAs.  
         [0018]    [0018]FIG. 2C shows the frame format for each frame sent during the superframe (including the beacon frame, any management frames, data frames, and acknowledgment frames). Each frame includes a medium access control (“MAC”) header  230 , and a MAC frame body  232 . Each is described in turn below.  
         [0019]    The MAC header  230  includes a frame control field  234 , a piconet identifier field  236 , a destination identifier field  238 , a source identifier field  240 , a fragmentation control field  242 , and a stream index field  244 . The frame control field  234  may include a field that specifies the protocol version, a field that specifies the frame type (e.g., beacon, data, acknowledgment), a field that specifies whether the frame is security protected, a field that indicates the acknowledgment policy (e.g., none, immediate, delayed), a field that indicates whether the frame is a “retry” (i.e., a re-transmission of an earlier frame), and a field that indicates whether additional frames from the source will follow in the current CTA. The piconet identifier field  236  specifies a unique 16-bit identifier for the piconet. The destination identifier field  238  specifies an 8-bit piconet member device identifier for the device to which the frame is directed (special values may be used for broadcast or multicast frames). Similarly, the source identifier field  240  specifies the 8-bit piconet member device identifier for the device which is transmitting the frame. The fragmentation control field  242  includes fields that are used for reconstructing large data units that have been split into fragments small enough to be sent in MAC frames. The fragmentation control field  242  may include a field specifying a data unit number, a field specifying the current fragment number, and a field specifying the total number of fragments in the data unit. The stream index field  244  may specify a stream identifier for isochronous streams (which produces data in a periodic fashion) and asynchronous traffic (which may arrive for transfer any time).  
         [0020]    The MAC frame body  232  includes a payload field  246 , and a frame check sum field  248 . The payload field  246  is a variable length field that carries the information that is to be transferred. Finally, the frame check sum field  248  contains a 32-bit cyclic redundancy code (“CRC”) value that is calculated over the entire payload field  246 . Corruption of the payload may be detected by comparing the frame check sum field value to a CRC value calculated over the received payload field by the MAC functionality of the receiver.  
         [0021]    [0021]FIG. 2D shows the payload field  246  for a beacon frame. The beacon frame payload field  246  includes a piconet synchronization parameters field  250 , and one or more information element fields  252 ,  254 . The piconet synchronization parameters field  250  may include a field that specifies a time token (a 48-bit rollover counter that increments for each beacon), a field that specifies the duration of the superframe, a field that specifies the end of the contention access period, a field that specifies a maximum transmit power for piconet member devices, a field that specifies the piconet mode, a field that specifies the PNC response time, and a field that specifies the 8-byte device address for the PNC.  
         [0022]    The information element fields  252 - 254  may be used to provide various piconet events and parameters including: PNC capabilities, a list of piconet member devices and their capabilities, a list of channel time allocations, CTA properties, device wake-up requests, shutdown notifications, piconet parameter changes, PNC handovers, transmit power control values, and identifiers of overlapping piconets. FIG. 2E shows the structure of a generic information element  260 . Every information element includes an element identifier field  262  that specifies the information element type (e.g., a list of channel time allocations), a length field  264  that specifies the length of the information element payload field in bytes, and an information element payload field  268  that contains information in a format specific to the information element type.  
         [0023]    Before reaching FIG. 3, a further discussion of the rotation of frequency hopping sequences is appropriate. Each frame sent during the superframe may be divided into channel symbols. Channel symbols are specific to the modulated signal and are only indirectly related to the fields in the frame structures described above. Each channel symbol carries some amount of digital data that is determined by the capacity of the channel and the specific modulation scheme employed. In one embodiment, the devices employ orthogonal frequency division multiplexing (OFDM) modulation to communicate data bits on each of multiple frequencies during a channel symbol period. Thus, the OFDM channel symbols are at least N sample periods long, where N is the number of frequency bins used to carry one OFDM symbol data. In other modulation schemes, the channel symbols may also be of a predetermined length or one or more sample periods.  
         [0024]    A frequency hopping sequence is a sequence of frequencies bands (“channels”) to be used by devices communicating during a superframe. Starting with the beginning of each frame (or with the beginning of the frame preamble if there is one) in the superframe, the devices transmit each channel symbol in a different channel as specified by the hopping sequence. The first channel symbol will be sent in the channel specified by the first element of the hopping sequence, the second channel symbol will be sent in the channel specified by the second element of the hopping sequence, and so on. The sequence of channels may be selected from a pool of possible hopping sequences. In one embodiment, the following pool of hopping sequences is employed:  
         [0025]    HS — 1={Channel — 1, Channel — 2, Channel — 3, Channel — 1, Channel — 2, Channel — 3, . . . (repeats)} 
         [0026]    HS — 2={Channel — 3, Channel — 1, Channel — 2, Channel — 2, Channel — 1, Channel — 3, . . . (repeats)} 
         [0027]    HS — 3={Channel — 2, Channel — 3, Channel — 1, Channel — 3, Channel — 2, Channel — 1, . . . (repeats)} 
         [0028]    HS — 4={Channel — 3, Channel — 2, Channel — 1, Channel — 1, Channel — 3, Channel — 2, . . . (repeats)} 
         [0029]    The frequency hopping sequence may change from superframe-to-superframe. Each superframe uses one hopping sequence. A rotation sequence is used to specify the order in which the hopping sequences are employed. The rotation sequence may be selected from a pool of possible rotation sequences. In one embodiment, the following pool of rotation sequences is employed:  
         [0030]    RS — 1={HS — 1, HS — 1, HS — 1, HS — 3, HS — 3, HS — 3, . . . (repeats)} 
         [0031]    RS — 2={HS — 2, HS — 1, HS — 1, HS — 3, HS — 3, HS — 4, . . . (repeats)} 
         [0032]    RS — 3={HS — 3, HS — 1, HS — 1, HS — 3, HS — 3, HS — 1, . . . (repeats)} 
         [0033]    RS — 4={HS — 4, HS — 1, HS — 1, HS — 3, HS — 3, HS — 2, . . . (repeats)} 
         [0034]    RS — 5={HS — 1, HS — 2, HS — 1, HS — 3, HS — 4, HS — 3, . . . (repeats)} 
         [0035]    RS — 6={HS — 2, HS — 2, HS — 1, HS — 3, HS — 4, HS — 4, . . . (repeats)} 
         [0036]    RS — 7={HS — 3, HS — 2, HS — 1, HS — 3, HS — 4, HS — 1, . . . (repeats)} 
         [0037]    RS — 8={HS — 4, HS — 2, HS — 1, HS — 3, HS — 4, HS — 2, . . . (repeats)} 
         [0038]    RS — 9={HS — 1, HS — 3, HS — 1, HS — 3, HS — 1, HS — 3, . . . (repeats)} 
         [0039]    RS — 10={HS — 2, HS — 3, HS — 1, HS — 3, HS — 1, HS — 4, . . . (repeats)} 
         [0040]    RS — 11={HS — 3, HS — 3, HS — 1, HS — 3, HS — 1, HS — 1, . . . (repeats)} 
         [0041]    RS — 12={HS — 4, HS — 3, HS — 1, HS — 3, HS — 1, HS — 2, . . . (repeats)} 
         [0042]    RS — 13={HS — 1, HS — 4, HS — 1, HS — 3, HS — 2, HS — 3, . . . (repeats)} 
         [0043]    RS — 14={HS — 2, HS — 4, HS — 1, HS — 3, HS — 2, HS — 4, . . . (repeats)} 
         [0044]    RS — 15={HS — 3, HS — 4, HS — 1, HS — 3, HS — 2, HS — 1, . . . (repeats)} 
         [0045]    RS — 16={HS — 4, HS — 4, HS — 1, HS — 3, HS — 2, HS — 2, . . . (repeats)} 
         [0046]    RS — 17={HS — 1, HS — 1, HS — 2, HS — 4, HS — 3, HS — 3, . . . (repeats)} 
         [0047]    RS — 18={HS — 2, HS — 1, HS — 2, HS — 4, HS — 3, HS — 4, . . . (repeats)} 
         [0048]    RS — 19={HS — 3, HS — 1, HS — 2, HS — 4, HS — 3, HS — 1, . . . (repeats)} 
         [0049]    RS — 20={HS — 4, HS — 1, HS — 2, HS — 4, HS — 3, HS — 2, . . . (repeats)} 
         [0050]    RS — 21={HS — 1, HS — 2, HS — 2, HS — 4, HS — 4, HS — 3, . . . (repeats)} 
         [0051]    RS — 22={HS — 2, HS — 2, HS — 2, HS — 4, HS — 4, HS — 4, . . . (repeats)} 
         [0052]    RS — 23={HS — 3, HS — 2, HS — 2, HS — 4, HS — 4, HS — 1, . . . (repeats)} 
         [0053]    RS — 24={HS — 4, HS — 2, HS — 2, HS — 4, HS — 4, HS — 2, . . . (repeats)} 
         [0054]    RS — 25={HS — 1, HS — 3, HS — 2, HS — 4, HS — 1, HS — 3, . . . (repeats)} 
         [0055]    RS — 26={HS — 2, HS — 3, HS — 2, HS — 4, HS — 1, HS — 4, . . . (repeats)} 
         [0056]    RS — 27={HS — 3, HS — 3, HS — 2, HS — 4, HS — 1, HS — 1, . . . (repeats)} 
         [0057]    RS — 28={HS — 4, HS — 3, HS — 2, HS — 4, HS — 1, HS — 2, . . . (repeats)} 
         [0058]    RS — 29={HS — 1, HS — 4, HS — 2, HS — 4, HS — 2, HS — 3, . . . (repeats)} 
         [0059]    RS — 30={HS — 2, HS — 4, HS — 2, HS — 4, HS — 2, HS — 4, . . . (repeats)} 
         [0060]    RS — 31={HS — 3, HS — 4, HS — 2, HS — 4, HS — 2, HS — 1, . . . (repeats)} 
         [0061]    RS — 32={HS — 4, HS — 4, HS — 2, HS — 4, HS — 2, HS — 2, . . . (repeats)} 
         [0062]    Piconets employing different rotation sequences will not collide repeatedly with one another one the same hopping sequence even if they become synchronized, and hence their mutual interference is greatly reduced. Even if overlapping piconets happen to use the same rotation sequence, they are not likely to be operating on the same hopping sequence for a prolonged period because the lengths and boundaries of their superframes are usually not identical. Both the hopping sequence pool and the rotation sequence pool may be designed to provide a minimum cross-correlation with other pool members given the size of the pool and the non-repeating length of the sequences as constraints.  
         [0063]    The use of frequency hopping sequence rotation may offer other benefits specific to the piconet communications protocol. For example, it is expected that piconet member devices will occasionally miss beacons. Without the use of a specified rotation sequence, the loss of even a single beacon could cause a member device to lose track of the hopping sequence and have to drop out of the piconet. However, with knowledge of the specified rotation &#39;sequence the piconet member devices are aware of the hopping sequence and may be able to participate in the superframe communications without having received the beacon.  
         [0064]    [0064]FIG. 3 shows one embodiment of a frequency hopping sequence rotation information element  302 . The information element includes an element identifier field  262  that specifies that the information element contains frequency hopping sequence rotation information. Also included is the length field  264  which may indicate that a payload of two bytes long follows. This payload is the information element payload and includes a hopping index field  304  and a rotation index field  306 . The hopping index field  304  specifies the hopping sequence to be used during the current superframe, i.e., the current position in the rotation sequence. The rotation index field  306  specifies the rotation sequence currently being used by the piconet. Each of the fields  304  and  306  may be one byte long. The hopping index field  304  may be incremented in each beacon, rolling over to the initial value after the end of the rotation sequence is reached.  
         [0065]    Each beacon may be required to include a frequency hopping sequence rotation information element immediately after the channel time allocation information element(s). By monitoring the frequency hopping sequence rotation information element, the piconet member devices can determine not only the hopping sequence for the current superframe, but also the hopping sequences for future superframes.  
         [0066]    The rotation sequence may be changed by the PNC using the piconet parameter change procedure provided in the IEEE 802.15.3 standard. One embodiment is to treat a rotation sequence as a channel defined in that standard, and hence use the piconet parameter change procedure to change the channel to change the rotation sequence. Generally speaking, the parameter change procedure involves the inclusion of the piconet parameter change information element in a predetermined number of beacons before the change takes effect. This procedure ensures enough notice for all member devices to be alerted to the change even if a tolerable number of beacons are missed.  
         [0067]    [0067]FIG. 4 shows a block diagram of an illustrative piconet member device. Piconet frames are transmitted and received via an antenna  402 . (At the frequencies of interest, the antenna may be implemented as a trace on a printed-circuit card.) A switch  404  couples the antenna  402  to an amplifier  406  during receive periods. The amplifier  406  may be followed by filter and frequency down-conversion circuitry (not specifically shown). An analog to digital converter  408  converts the receive signal into digital form for processing by a digital processor  410 . The digital processor  410  may be implemented by hardware, firmware, or a combination of them. It performs demodulation and decoding of the receive signal to obtain receive data, and may further perform modulation and encoding of transmit data to produce a digital transmit signal. There may be another digital processor (not shown in FIG. 4) to handle MAC layer functions. A digital to analog converter  412  converts the digital transmit signal to an analog transmit signal, which is amplified by driver  414  and provided by switch  404  to antenna  402  during transmit periods. Frequency up-conversion and filter circuitry may be provided between the digital-to-analog converter  412  and the driver  414 .  
         [0068]    The operation of digital processor  410  may be partly controlled by software stored in memory  416 . (The term “software” is intended to include firmware and processor instructions of any other type.) The software may include device drivers  418  to facilitate the communications between applications  420  and the digital processor  410 . The digital processor  410  may include, or interact with, support hardware (not specifically shown) such as a keyboard, keypad, buttons, dials, a pointing device, a touch sensitive screen, an alphanumeric or graphics display, lights, a printer, speakers, a microphone, a camera, and/or other mechanisms for interfacing with a device user. Alternatively, or in addition, the support hardware may include nonvolatile information storage, a network interface, a modem, a sound card, a radio/television tuner, a cable/satellite receiver, or other electronic modules helpful to the device&#39;s purpose.  
         [0069]    Numerous variations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. For example, different pools of hopping sequences and rotation sequences may be used. The pools may be significantly larger than the examples provided herein. It is intended that the following claims be interpreted to embrace all such variations and modifications.