Mode for Invention
This application claims the benefit under 35 U.S.C. § 119(e) of U.S. Provisional Application No. 61/023,802, filed on January 25, 2008, which is incorporated by reference in its entirety
Certain embodiments provide a method and system for acquiring a beamforming pattern in a wireless network. The following detailed description is directed to certain sample embodiments of the invention. However, the invention can be embodied in a multitude of different ways as defined and covered by the claims. In this description, reference is made to the drawings wherein like parts are designated with like numerals throughout.
WPAN System Overview
A wireless personal area network (WPAN) system is a computer network used in communication between devices (for example, telephones and personal digital assistants) that are located close to an individual. The devices may or may not belong to that individual. The reach of a WPAN is typically a few meters, but may be more under certain circumstances. A WPAN may be used to communicate between the devices, or to interconnect with a higher level network such as the internet. A number of standards for network communications have recently been developed, including, but not limited to, Bluetooth and IEEE 802.15.
As a WPAN involves wireless communication, movement of the devices within the network is not hindered by the connection of wires, however, movement of the devices or changes in the environment may disrupt communications between devices by changing the characteristics of the channel between them. Accordingly, there is a need for a method of maintaining reliable transmission and reception in a wireless network, such as a WPAN, without introducing satisfactory amounts of overhead.
Figure 1 is a diagram of an exemplary wireless personal area network which maintains reliable transmission and reception in response to events such as device movement and changes in the environment, according to one embodiment. The illustrated network 100 includes a coordinator 120 and first to third devices 130, 140, 150, respectively. The coordinator 120 and the first to third devices 130, 140, 150 may communicate using a variety of different parameters, including different modulation and coding schemes, different protocols, different random access schemes, and different frequency bands.
The coordinator 120 may be responsible for coordinating data transfer between itself and other devices. The coordinator 120 may partition a wireless channel into a number of time periods and schedule communication between specific devices during those time periods. The coordinator may be, for example, a television, a set-top box, a personal computer, a laptop computer, or a dedicated controlling box.
In the network 100 of Figure 1, the coordinator 120 is configured to perform directional transmission and/or reception with the first to third devices 130, 140, 150. The coordinator 120 may utilize sector antennas or an antenna array for the directional transmission and/or reception. When a sector antenna, such as a horn antenna, is used, each sector 121 represents a different direction along an axis away from the coordinator 120 which can be used for transmission or reception of data. The coordinator 120 selects a sector and, while the sector is selected, is able to transmit or receive data in a general direction defined by the shape of the sector. When an antenna array, such as a linear array or a circular array, is used, each direction is determined by the antenna beamforming coefficients, as is known to those skilled in the art and described below.
The first device 130 may utilize omni-directional transmission and reception. The second device 140 may utilize a sectored antenna with more or less sectors than the coordinator 120. In addition, the third device 150 may utilize a sector antenna with the same number of sectors as the coordinator 120. Each of the first to third devices 130, 140, 150 can be, for example, a television, a desktop computer, a laptop computer, a set-top box, a DVD player or recorder, a VCR, an audio player, a digital camera, a camcorder, a game device, or a computer peripheral such as a mouse, a keyboard, a printer, or a scanner.
In directional transmission, beamforming may also be used by either the coordinator 120 or one or more of the devices. In some embodiments, an asymmetric antenna system (AAS) may be employed by either the coordinator or one or more of the devices, resulting in different sets of transmission and reception directions.
Figure 2 shows a generalized block diagram illustrating an example wireless personal area network (WPAN) system 200. The example WPAN system 200 includes a wireless transmitter 202 and wireless receiver 204. The transmitter 202 includes a physical (PHY) layer 206, a media access control (MAC) layer 208, an upper layer 210, and one or more antennas. Similarly, the receiver 204 includes a PHY layer 214, a MAC layer 216, an upper layer 218, and one or more antennas. In some embodiments, the PHY layers 206, 214 include radio frequency (RF) modules 207, 217. The PHY layers 206, 214 provide wireless communication between the transmitter 202 and the receiver 204 via the RF modules 207, 217 and the one or more antennas through a wireless medium 201.
The upper layers 210, 218 represent one or more layers that are above the MAC layers 208, 216, respectively, and send command and/or data messages to the MAC layers. In certain embodiments (e.g., OSI or TCP/IP models), the upper layer 210, 218 includes a network layer. In certain embodiments, the network layer includes an IP protocol that performs the basic task of getting data packets from source to destination. In other embodiments (e.g., five-layer TCP/IP model), the upper layer 210, 218 further includes a transport layer and an application layer. In other embodiments, (e.g., seven-layer OSI model), the upper layer 210, 218, in addition to the transport layer and the application layer, further includes a session layer and a presentation layer.
In the wireless transmitter 202, the upper layer 210 provides data (e.g., text, graphics, or audio data) and/or command messages to the MAC layer 208. In certain embodiments, the MAC layer 208 can include a packetization module (not shown) which puts the data and/or command messages into the form of one or more data packets. The MAC layer 208 then passes the data packets to the PHY layer 206. The PHY/MAC layers of the transmitter 202 add PHY and MAC headers to the data packets. The PHY layer 206 transmits wireless signals including the data packets to the receiver 204 via the RF module 207 over the wireless channel 201.
In the wireless receiver 204, the PHY layer 214 receives the transmitted wireless signals including the data packets via the RF module 217. The PHY/MAC layers 214, 216 then process the received data packets to extract one or more data/command messages. The extracted data/command messages are passed to the upper layer 210 where the messages are further processed and/or transferred to other modules or devices to be displayed (text or graphics) or played (audio), for example.
General Beamforming
Transmit and/or receive beamforming has the potential of improving link quality substantially in wireless communications. For typical multiple-input/multiple-output (MIMO) systems, transmit and/or receiver beamforming are implemented in the digital domain, before a digital to analog conversion (DAC) operation at a transmitter side and after an analog-to-digital conversion (ADC) operation at a receiver side. The good performance of digitally beamformed systems comes at a cost of min(N, M) RF chains, where N is the number of transmitter antennas and M is the number of receiver antennas. The cost may become formidable, especially when the sampling frequency increases. When cost-effectiveness becomes a dominant system design issue, analog beamforming is more favorable, as it requires only 1 RF chain.
We next illustrate analog beamforming for MIMO OFDM (orthogonal frequency division multiplex) systems, while the same scheme can also be applied to MIMO single carrier modulated systems and other such variations. Suppose that
K is the number of sub-carriers for OFDM modulation,
N is the number of transmitter antennas, and
M is the number of receiver antennas. Also, assume that the transmit beamforming vector is
and the receive beamforming vector is
. Also, let
L+1 be the maximum number of multipath channel taps for each pair of transmit and receive antennas. Without loss of generality, it is reasonable to have
K>>
L+1 (i.e. the number of OFDM sub-carriers is much greater than the maximum number of multipath channel taps between any pair of transmitter and receiver antennas). Further, let
be the multipath channel impulse response between the
ith receive and
jth transmit antenna, appended with zeros such that each vector
is of size
K×1. There are altogether
M×N such channel vectors, with each one corresponding to one transmit and receive antenna pair. Let
be a diagonal matrix containing all the
K data sub-carriers in an OFDM system. Thus, the transmitted vector (over an OFDM symbol duration) on a
jth transmitter antenna after beamforming is
, for
j=1, 2, …,
N. Because OFDM modulation diagonalizes the multipath channel, the received vector (over an OFDM symbol duration) on the
ith receive antenna can be written as
,
where
is the frequency channel response corresponding to the time-domain channel
,
w
j is the
jth transmit beamforming coefficient, and
F
K is a
K×
K Fourier transform matrix.
At the receiver side, the received vectors
across all
M receiver antennas will be combined by receive beamforming vectors
, where
v
i is the
ith receive beamforming coefficient. For this reason, the combined signal vector can be written as
where the
K×
N matrix
A
i is defined as
, and the
K×
N matrix
A is defined as
. Similarly, the received signal vector can be written as
where the
K×
M matrix
B
j is defined as
, and the
K×
M matrix
B is defined as
. To optimize the transmit and receive beamforming vectors, one embodiment of the invention finds the transmit and receive beamforming vectors that jointly minimize the pairwise error probability (PEP) between two arbitrary information codes. Toward this objective, one embodiment of the invention solves the following two problems simultaneously:
and
It is noticed that the matrix
A is dependent upon vector
, while the matrix
B is dependent upon vector
. For this reason, the above two problems cannot be solved easily. Figure 3 is a diagram demonstrating an exemplary beamforming scheme of MIMO OFDM system. The disclosed invention can also be applied to non-OFDM modulated schemes, such as single carrier modulated systems. In one embodiment, the
system 300 is for the implementation of analog beamforming. The
system 300 includes a
transmitter 310 and a
receiver 320. The
transmitter 310 includes a
module 302 for performing an inverse Fourier transform, a
module 303 for performing digital-to-analog conversion and mixing, a
transmitter beamformer 305, and
transmitter antennas 221. The
receiver 320 includes a
module 312 for performing a Fourier transform, a
module 313 for performing analog-to-digital conversion and mixing, a
receiver beamformer 315, and
receiver antennas 222. The
transmitter 310 and
receiver 320 perform beamforming in conjunction with each other.
On the transmitter side, data, denoted by the vector
, is input into the
system 300. In one embodiment, the data is uncompressed high definition video data. After an inverse Fourier transform (IFFT) 302, as well as digital-to-analog conversion and mixing 303, the modified data is input into the
transmitter beamformer 305. The weights of the
transmitter beamformer 305 are denoted by the variables
w
i , for
i = 1, 2, …,
N, where
N is the number of the
transmitter antennas 221. After being weighted by the
transmitter beamformer 305, the data is transmitted by the
transmitter antennas 221 through the
wireless channel 201, where it is received by the
receiver antennas 222. The
receiver beamformer 315 acts upon the received data to combine it. The weights of the
receiver beamformer 315 are denoted by the variables
v
i for
i = 1, 2, …,
M, where
M is the number of the
receiver antennas 222. After being processed by the
receiver beamformer 315, the receiver data is input through the mixer and analog-to-
digital converter 313. Also, a
Fourier transform 312 is performed on the data to yield the OFDM-demodulated data 311, denoted by the vector
.
Beamforming Vector Training
Selecting the weights of the beamformer can be done in a number of ways, including adaptive training or through selection of weight sets from a codebook, which is a collection of candidate beamforming patterns. Each candidate beamforming pattern of the codebook is a set of weights for each antenna of the beamformer that results in a specific beamforming pattern. In WPAN systems, codebooks can include 32 or 64 candidate beamforming patterns, meaning there are 32 or 64 directions in which the device implementing the codebook can transmit or receive data.
In one embodiment of the invention, there is a transmitter with NT antenna elements and the transmitter beamformer codebook size is NT × N1, where N1 is the number of candidate beamforming patterns of the transmitter. There is also a receiver with NR antenna elements and the receiver beamformer codebook size is NR × N2, where N2 is the number of candidate beamforming patterns of the receiver. The beamforming patterns at the transmitter are designated A(1), A(2), ..., A(N1), whereas the beamforming patterns at the receiver are designated B(1), B(2), ..., B(N2).
One antenna training method works in a brute-force manner. According to this method, the transmitter exhaustively scans all possible N1 beamforming patterns A(1) through A(N1), while the receiver exhaustively scans all possible N2 beamforming patterns B(1) through B(N2) as well. Every combination of A(i) and B(j), for i=1,..., N1, j=1, ..., N2, corresponds to a unique transceiver pattern. The amount of time to complete the training is related to N1 × N2 × T, where T is the dwell time for each transceiver pattern. In some embodiments, N1 or N2 is one. In such instances, the beamforming pattern for the transmitter or receiver may advantageously be omni-directional, but this is not always the case. Thus, a 'transceiver beamforming pattern' can include a transmitter beamforming pattern, a receiver beamforming pattern, or both a transmitter beamforming pattern and a receiver beamforming pattern.
All the time used to train antennas is counted as overhead, since no information can be conveyed during this procedure. The overhead associated with brute-force antenna training may be substantial, especially if N1 × N2 is large. At high frequencies, such as 60 GHz, this may be the case, since a very large antenna beamforming gain may be desired from the antenna array transceiver.
Another method and protocol disclosed herein involves a multi-stage approach. To enable this multi-stage approach, both transmitter and receiver may possess a multi-level codebook structure.
In one embodiment of the invention, a two-stage approach, each of the transmitter and the receiver has two sets of beamformer codebooks, with the first beamformer codebook being coarse in resolution, and the second beamformer codebook being fine in resolution. As used below, a 'sector pattern' generally refers to a pattern of a first level which has a coarser resolution than a second level. The patterns of the second level are generally referred to below as 'beam patterns.' Further a 'transceiver sector pattern' may include a transmitter sector pattern, a receiver sector pattern, or both a transmitter sector pattern and a receiver sector pattern. Likewise, a 'transceiver beam pattern' may include a transmitter beam pattern, a receiver beam pattern, or both a transmitter beam pattern and a receiver beam pattern. In some embodiments, the first codebook, e.g., the sector codebook, is able to cover the entire space collectively, but this is not always the case. Similarly, in some embodiments, the second codebook, e.g., the beam codebook, is also able to cover the entire space collectively, but, again, this is not always the case.
Figure 4 is a diagram illustrating beamforming patterns that may be found in such a two-stage codebook for a transmitter or receiver. In the illustrated embodiment, a first beamformer codebook, denoted C1,contains the two sector patterns P(1) and P(2), whereas a second beamformer codebook, denoted C2, contains the eight beam patterns T(1), T(2), T(3), T(4), T(5), T(6), T(7), and T(8). Each codebook of the illustrated embodiment covers the entire space, but this is not necessarily the case in other embodiments. Each sector pattern in codebook C1 has a similar coverage as a group of beam patterns in codebook C2. In particular, sector pattern P(1) has roughly similar coverage as the group [T(1), T(2), T(3), T(4)], while sector pattern P(2) has roughly similar coverage as the group [T(5), T(6), T(7), T(8)].
In some embodiments, each sector in the sector codebook is associated with a group of beams in the beam codebook, the group of beams collectively having similar coverage to that of the sector. For example, the number of candidate beamforming vectors for the transmitter, N1, can be expressed as N1 = D1 × F1, where D1 is the size of the transmitter sector codebook, which can be represented as P(1), ..., P(D1), and F1 is a group size. For antenna training purpose, two codebooks are maintained, where a first codebook is a sector codebook containing P(i), i=1, ..., D1 and a second codebook is a beam codebook containing T(i), i=1, …, N1. In general, the sector pattern P(i), i=1, ..., D1, may have similar coverage as the group [T((i-1)×F1+1), ..., T(i×F1)]. As mentioned above, in some embodiments, the group of beam patterns [T((i-1)×F1+1), ..., T(i×F1)] can be viewed as a finer representation of P(i). Still other methods and criteria could be used in the design of the beamformer codebooks in multiple levels. For example, the antenna weights for a sector pattern which corresponds to a group of beam patterns may be formed by summing the antenna weights for the beam patterns. The antenna weights for the sector pattern may be further processed by, for example, normalizing the resulting the sum.
Construction of the two-level beamformer codebook for the transmitter was discussed above. A two-level beamformer codebook may be constructed for the receiver following the same principle.
| Receiver sector codebook | Receiver beam codebook |
| Q(1) | [R(1), ..., R(F2)] |
| Q(2) | [R(F2+1), ..., R(2×F2)] |
| .... | .... |
| Q(D2) | [R(N2-F2+1), ..., R(N2)] |
An example is shown in the above table, where [Q(1), ..., Q(D2)] forms the receiver sector codebook, with D2 being the codebook size and F2 being the group size, and [R(1), ..., R(N2)] forms the receiver beam codebook with N2=D2×F2. In some embodiments, the beamformer Q(i) has similar coverage as the group [R( (i-1)×F2+1), ..., R(i×F2)], for i=1, ..., D2.
It is envisioned that N1 and N2 may be of different size. Similarly, it is possible that D1 and D2 may be of different size and F1 and F2 may be different. It is also possible that these numbers are the same for certain embodiments. It is also envisioned that the group size for each sector may be different. For example, Q(1) may have similar coverage with R(1), …, R(F2) collectively, where the group size is F2, while Q(2) may have similar coverage with R(F2+1), …, R(F2+F3) where the group size is F3, and F2 may be different than F3. This applies to the transmitter codebooks and to the receiver codebooks. One direct outcome is that the group size (F1, F2, F3…) may not be a factor of N1, or N2.
Selection of the weights for the transmitter or receiver beamformer of a communications system may be performed by searching over the above-described codebook, or a different set of codebooks. Figure 5 is a flowchart illustrating a method of selecting a beam pattern. The process 500 begins, in block 510, with the reception of a plurality of signals having different transceiver sector patterns.
In some embodiments, an exhaustive search over the D1× D2 sector pattern pairs is performed. For example, with respect to the codebooks shown in Figure 4, a signal is received with transceiver patterns which may be notated [P(1) Q(1)], [P(1) Q(2)], [P(2) Q(1)], and [P(2) Q(2)]. Thus, for this example, an exhaustive search over sector patterns includes receiving four sector training signals.
For each signal received, or a subset thereof, in block 520, an indicator of link quality is measured. In general, a subset may include only one element of the set, at least two elements of the set, at least three elements of the set, a significant portion (e.g. at least 10%, 20%, 30%) of the elements of the set, a majority of the elements of the set, nearly all (e.g., at least 80%, 90%, 95%) of the elements of the set, or all of the elements of the set. The indicators of link quality may correspond to what those skilled in the art denote a link quality indicator (LQI) and/or may comprise signal-to-noise ratio (SNR), signal-to-interference-plus-noise ratio (SINR), bit error rate (BER), packet error rate (PER), received signal strength indication (RSSI), or any other indicator of signal, channel, or link quality available to those skilled in the art.
Measuring an indicator of link quality, or indeed any of the steps of methods or algorithm described in connection with the embodiments disclosed herein, may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in, for example, RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC or in any suitable commercially available chipset.
In block 530, at least one transceiver sector pattern is selected. In certain embodiments, the selection is based on the indicators of link quality measured in block 520. In one embodiment, the transceiver sector pattern corresponding to the best link is selected. In some embodiments, other not-quite-as-good sector patterns may also be selected and stored for use in a beam tracking algorithm as will be described in greater detail later. Signals indicative of the selected transceiver beam pattern may be stored or transmitted. For example, if the transceiver sector pattern includes a transmitter sector pattern, the selected transmitter sector pattern may be communicated to the transmitter. In general, a subset of the transceiver sector patterns is selected, and a subset thereof may be stored, transmitted, and/or used for data communication.
In block 540, a plurality of signals having different transceiver beam patterns are received. In one embodiment, the transceiver beam patterns are those associated with the transceiver sector patterns selected in block 530. For example, if the transceiver pattern of [P(1) Q(2)] has been selected, signals are received corresponding to the transceiver beam patterns having transmitter beam patterns of T(1), T(2), T(3), or T(4) and receiver beam patterns of R(5), R(6), R(7), or R(8). In some embodiments, an exhaustive search of the F1×F2 beam pattern pairs is performed.
Using, for example, the process described above with respect to block 520, an indicator of link quality is measured, in block 550, for a subset of the received signals. In block 560, at least one transceiver beam pattern is selected. In some embodiments, the selection of the beam patterns is based on the measured indicators. For example, the transceiver beam pattern corresponding to the link with the highest indicator of link quality may be selected. Data may then be robustly communicated between the transmitter and receiver over the link using the selected transceiver beam pattern. In some embodiments, other not-quite-as-good beam patterns may also be selected and stored for use in a beam tracking algorithm as will be described in greater detail later. Signals indicative of the selected transceiver beam pattern may be stored or transmitted. For example, if the transceiver beam pattern includes a transmitter beam pattern, the selected transmitter beam pattern may be communicated to the transmitter. In general, a subset of the transceiver beam patterns is selected, and a subset thereof may be stored, transmitted, and/or used for data communication.
As described above, the amount of overhead to exhaustively search every transmitter/receiver beamforming pattern pair is related to N1×N2×T. Similarly, the overhead for an exhaustive search over all transmitter/receiver sector pattern pairs is related to D1×D2×T, and the overhead for an exhaustive search of the beam pattern pairs associated with one transmitter/receiver sector pattern pair is related to F1×F2×T. For example, if an exhaustive search is performed over the sector pattern pairs, Ncand sector pattern pairs are selected, and an exhaustive search over the associated beam pattern pairs is performed, the overall overhead is related to related to
[D1 × D2 + F1 × F2 × Ncand] × T
with Ncand being one to three, in some embodiments. In other embodiments, Ncand is larger than three, such as is true in some embodiments where Ncand is between five and seven. On the other hand, the overall overhead for the brute force antenna training is related to
N1 × N2 × T = D1 × D2 × F1 × F2 × T.
By using the two-stage antenna training method, the training overhead (and the associated complexity) may be greatly reduced. In fact, by choosing D1 and D2 and by choosing F1 and F2 on the order of the square root of N1 and N2 respectively, the overall overhead is reduced roughly to the square root of the original overhead. For example, if N1 and N2 are both 36, and D1, D2, F1, and F2 are 6, the overall overhead is reduced from the order of 1296 to the order of 72 if Ncand is 1, to the order of 108 if Ncand is 2, and to the order of 144 if Ncand is 3. An overhead reduction of at least 9 times is achieved.
A two-stage antenna training method has been disclosed above, however, a three-stage, four-stage, etc. training method could be implemented using similar procedures. For example, there may be a third-level beamformer codebook with a number of patterns having a finer resolution than the beam patterns of the second level. Such patterns may be designated sub-beam patterns, or pin patterns. As another example, there may be a third-level beamformer codebook with a number of patterns having a courser resolution than the sector patterns of the first level. Such patterns may be designated super-sector patterns or quasi-omni patterns. Further, the number of levels for the transmitter and receiver may differ. So, too, may the order in which each level is traversed.
List Based Antenna Tracking
In some embodiments, antenna training (either the conventional brute force search or a multi-stage search) introduces the issue that if the channel experiences slow, small changes, the complete antenna training has to be performed again to track these changes.
In some embodiments, an antenna tracking method is used to track the slow, small channel changes so that only partial antenna training (compared to complete antenna training) is performed. One benefit of partial antenna training (or antenna tracking) is that the induced overhead is much smaller than complete antenna training. As mentioned above, selecting the weights of the beamformer can be done in a number of ways, including adaptive training or through selection of weight sets from a codebook. Although this was mentioned in the context of antenna training, it is also true in the context of antenna tracking. Thus, antenna tracking can be performed adaptively or through use a list of candidate beamforming vectors. A list-based antenna tracking method is disclosed herein.
To perform the list-based antenna training, in some embodiments, a list of the best candidate transceiver patterns is maintained after each antenna training procedure is performed. For example, if at the output of the antenna training protocol, the best candidate transmitter/receiver beamforming vector is [v1 w1] then in some embodiments, v1 is fed back to transmitter, and data communications may begin with v1 and w1 being the transmitter and receiver beamforming vectors. The transceiver pattern [v1 w1] may, for example, be [T(2) R(6)] from the codebook shown in Figure 4.
In another embodiment, utilizing the list-based antenna tracking, however, not only is the best candidate [v1 w1] generated, but also a list of the other best candidates, e.g., the second best, the third best, the fourth best, and so on is maintained. The list may be formed as
[v2 w2]
[v3 w3]
[v4 w4]
...
[vn wn]
with v2 ... vn and w2 ... wn being the candidate transmitter and receiver beamforming vectors chosen. At the same time that v1 is fed back to the transmitter, v2, v3, … , vn may also be fed back to the transmitter.
Thus, once the channel experiences slow small changes, instead of running the complete antenna training procedure again, and performing a brute search over every possible beamforming vector or a multi-stage antenna training procedure, in some embodiments, a search is only performed over the list of best candidates to update the transmit and receive beamforming vector.
Figure 6 is a flowchart illustrating a method of beam tracking. The process 600 begins, in block 610, with the completion of an antenna training procedure. The antenna training procedure may, for example, be the procedure 500, illustrated in Figure 5. Alternatively, the training procedure may be a different multi-stage antenna training procedure or a brute force training procedure.
In block 620, a list of candidate transceiver patterns are fed back to the transmitter. In some embodiments, the candidate transceiver patterns include only a transmitter pattern, whereas in other embodiments, the candidate transceiver patterns include both a transmitter pattern and a receiver pattern. In such embodiments, feeding back the receiver pattern portion of the transceiver patterns is optional.
In block 630, beamforming is performed using a selected transceiver pattern. Data communication may be performed over the link established using the selected transceiver pattern. Communication and/or beamforming continues until it is determined, in block 640, that the channel has changed. Such determination may be performed by measuring an indicator of link quality during communication. For example, it may be determined that the channel has changed when the signal-to-noise ratio drops. It is further determined, in block 650, if the channel change is a significant change. A channel change may be considered significant if, among other things, it is determined that an antenna tracking procedure is likely to fail to converge, if an antenna tracking procedure has failed to converge, if it is determined that it is likely that an antenna tracking procedure would introduce more overhead than an antenna training procedure, or if an antenna tracking procedure has been pending for more than a predetermined amount of time. If so, the procedure returns to block 610 to await the completion of an antenna training procedure.
If the channel has changed, but not changed significantly, the process moves to block 660, where a search is performed over the list of candidate transceiver patterns to attempt to improve the link quality. Once a new best transceiver pattern has been selected based on searching the list of candidate transceiver patterns, the process returns to block 630 where beamforming is performed using the newly selected transceiver pattern.
In other embodiments, candidate transceiver patterns are not fed back, however, beam tracking is performed by searching the beams within the sector which had already been chosen. In multi-stage embodiments with more than two stages, the system may use the beamforming pattern described by the vector [(a,b,c) , (x,y,z)], where a is the index of the sector chosen for the transmitter, b is the index of the beam chosen for the transmitter, c is the index of the pin chosen for the transmitter, x is index of the sector chosen for the receiver, y is the index of the beam chosen for the receiver, and z is the index of the pin chosen for the receiver. In another embodiment of a beam tracking procedure, the system, which once used the beamforming pattern described by [(a,b,c) , (x,y,z)] will search other pins using the same sector and beam, e.g. [(a,b,i) , (x,y,j)] for all i and j. If this fails to produce a beam pattern with a performance metric (such as an indicator of link quality) exceeding some threshold, the system will search other beams using the same sector, .e.g. [(a,m) , (b,n)] for all m and n. If a suitable beam is found, that beam may be selected and the searching for an appropriate pin may commence. If a suitable beam is not found, the beam tracking procedure has failed and a complete pattern search may be performed beginning at the sector level.
A beam tracking procedure which may incorporate some of the inventive aspects disclosed herein is discussed in U.S. Patent Application No. 11/864,707, entitled 'System and method for wireless communication of uncompressed high definition video data using a beamforming acquisition protocol,' filed September 28, 2007, the entirety of which is herein incorporated by reference.
While the above description has pointed out novel features of the invention as applied to various embodiments, the skilled person will understand that various omissions, substitutions, and changes in the form and details of the device or process illustrated may be made without departing from the scope of the invention .
Therefore, the scope of the invention is defined by the appended claims rather than by the foregoing description. All variations coming within the meaning and range of equivalency of the claims are embraced within their scope.