METHOD AND SYSTEM OF OPERATING A MULTI-USER SYSTEM
A method and system is disclosed for grouping the multiple stations connected to an access point (AP). The system and method comprise sending a sounding packet to a plurality of stations, wherein the stations may be all or part of the stations that are located within the range of the AP. The stations that receive the sounding packets respond to the AP, and the AP determines the channel state information (CSI) from the responses. According to the CSI, the AP divides the multiple stations into several groups. According to an embodiment of the present invention, a confirmation step is performed to each group of stations, respectively. The AP sends a second sounding packet to each group of stations, and verifies the CSI between each station group by group. Therefore, the method and system provides for monitoring the validation of each group by periodically sending sounding packets to each group.
Under 35 U.S.C. 120, this application is a Continuation Application and claims priority to U.S. application Ser. No. 13/041,177, filed Mar. 4, 2011, entitled “METHOD AND SYSTEM OF OPERATING A MULTI-USER SYSTEM,” which claims the benefit of U.S. Provisional Application No. 61/331,476 filed on May 5, 2010, entitled “METHOD FOR GROUPING WITH SOUNDING PACKETS,” and U.S. Provisional Application No. 61/345,108, filed on May 15, 2010, entitled “METHOD OF OPERATING MULTI-USER SYSTEM,” all of which are incorporated herein by reference.
The present invention is related to co-pending U.S. patent application Ser. No. 13/041,068 (2010-P012US/4924P), entitled “METHOD AND SYSTEM OF OPERATING A MULTI-USER SYSTEM,” filed on Mar. 4, 2011 and assigned to the assignee of the present invention, which is also incorporated herein by reference.
FIELD OF THE INVENTIONThe present invention relates to a method of operation in a multi-user system, and more particularly, to a method of grouping operation in a multi-user system.
BACKGROUNDA wireless local area network (WLAN) is widely used to provide access to the internet with mobile devices. To improve the throughput in a WLAN, the IEEE 802.11n standard adopts a multiple input multiple output (MIMO) system that transmits a plurality of streams with multiple antennas and, at the same time, receives the streams with multiple antennas. However, the IEEE 802.11n standard is still based on a point-to-point transmission scheme. When there are more stations connected to the access point (AP), the AP has to hold the transmission for some stations while transmitting to another and wait for an empty time slot.
In order to transmit to multiple stations (STA) on the same channel (frequency band) in a multi-user (MU) system, the downlink (DL) channels may be orthogonalized to create virtual spatial channels. Some conventional systems are described in “Zero-Forcing Methods for Downlink Spatial Multiplexing in Multi-User MIMO Channels”, IEEE Transactions On Signal Processing, Vol. 52, No. 2, February 2004, Q. Spencer, A. L. Swindlehurst, and M Haardt. In this publication, and in later references, a set of pre-coding matrices is computed at the AP for a group of downstream users. The effective pre-coded channel is block diagonalized so that the interference between stations is minimized.
For this system to work effectively there must be cooperation between the AP and the remote stations. First, the stations must feedback channel information to the AP for pre-coder computation. In certain cases where the individual station channels are highly correlated, pairs of stations may not be compatible to be grouped for MU transmission due to a poor solution space for MU pre-coding matrices. In addition, MU channels are more sensitive to changing channel conditions, since variations in the channel can lead to loss of pre-coded orthogonality and quickly lead to high interference conditions. Many designs only consider grouping without regard to compatibility of the stations, while other systems do not provide real time metrics to assess the status of the channel condition. These two factors can limit the performance of a MU-MIMO downlink (DL). Hence, there's a need to provide a method to form stations into compatible multi-user (MU) groups, and the need for a mechanism to quickly identify interference conditions caused by variations in the wireless MU channel.
Therefore, a multi-user (MU), or multi-station, transmission system with MIMO system can be provided. The AP in a MU-MIMO system can transmit data to multiple stations either with multiple antennas or a single antenna at the same time, such that the AP can serve more stations at the same time. However, there's still a need for a method to improve the reliability and functionality of a MU system.
SUMMARY OF INVENTIONIt is therefore an object of the present invention to provide a method for grouping the multiple stations connected to an AP. The method comprises sending a sounding packet to a plurality of stations, wherein the stations may be all or part of the stations that are located within the range of the AP. The stations that receive the sounding packets respond to the AP, and the AP determines the channel state information (CSI) from the responses. According to the CSI, the AP divides the multiple stations into several groups. According to an embodiment of the present invention, a confirmation step is performed to each group of stations, respectively. The AP sends a second sounding packet to each group of stations, and verifies the CSI between AP and each station group by group.
In another embodiment of this invention, the AP will compute the pre-coding matrices and determine the compatibility between stations of a certain group by computing a certain gain metric and comparing it to a preset threshold limit.
It is therefore another object of the present invention to provide a method for monitoring the validation of each group by periodically sending sounding packets to each group.
It is therefore another object of the present invention to provide a method for monitoring the validation of each group by periodically sending sounding packets to each group in order to measure the interference between each of the stations and feed this information back the MU AP.
In another embodiment of this invention, the AP will continuously monitor the interference levels between each of the stations transmit streams, resound the down stream channels and re-compute the pre-coding matrices when the interference levels reach a pre-set threshold.
In yet another embodiment of this invention the AP will continuously monitor the interference levels between each of the stations transmit streams and eliminate a particular station from the group when the interference levels reach a pre-set threshold.
The accompanying drawings illustrate an embodiment of the present invention and, together with the description, serve to explain the principle of the invention. One skilled in the art will recognize that the particular embodiments illustrated in the drawings are merely exemplary, and are not intended to limit the scope of the present invention.
The present invention relates to a method of operation in a multi-user system, and more particularly, to a method of grouping operation in a multi-user system. The following description is presented to enable one of ordinary skill in the art to make and use the invention and is provided in the context of a patent application and its requirements. Various modifications to the embodiments and the generic principles and features described herein will be readily apparent to those skilled in the art. Thus, the present invention is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features described herein.
A method and system that provides for the grouping of stations in accordance with the present invention can take the form of an entirely hardware implementation, an entirely software implementation, or an implementation containing both hardware and software elements. In one implementation, this grouping system and method is implemented in software, which includes, but is not limited to, application software, firmware, resident software, microcode, etc.
Furthermore, the detection procedure can take the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by or in connection with a computer or any instruction execution system. For the purposes of this description, a computer-usable or computer-readable medium can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
The medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium. Examples of a computer-readable medium include a semiconductor or solid state memory, magnetic tape, a removable computer diskette, a random access memory (RAM), a read-only memory (ROM), a rigid magnetic disk, and an optical disk. Current examples of optical disks include DVD, compact disk-read-only memory (CD-ROM), and compact disk-read/write (CD-R/W). To describe the features of the present invention in more detail, refer now to the following description in conjunction with the accompanying Figures.
Initial Sounding 102. The initial sounding mode 102 is executed to sound the channels without targeting any specific group. The sounding could be in the form of a null data packet (NDP) dedicated for sounding or it could be accomplished as part of a MU downstream data packet. In this stage, the packets are not beamformed or pre-coded, and the AP requests the channel state information from the stations. In response to the initial sounding from the access point (AP), the stations (STAs) send back channel state information (CSI) to the AP. Then, the AP uses the CSI from each of the STAs to determine the group definitions and informs STAs of the group membership.
In order to improve the performance in a MU-MIMO system, the AP first performs an initial sounding by sending a sounding packet to a large number of stations. These stations may be all or part of the stations within the range covered by the AP. The stations that receive the sounding packet send a respond to the AP. The AP obtains channel state information (CSI) from the responses. The stations are then divided into groups in some logical order. One possible way is to roughly group them according to some measure of orthogonalization.
For example, the CSI returned to the AP for each station is stacked in a column matrix Htot_csi, as,
Htot_csi=[H0; H1; H2 . . . Hn]
wherein n is the number of stations sending a response to the AP.
Since the grouping is determined based on CSI, the stations within the same group might be stations physically close to each other. On the contrary, stations within the same group might be spaced apart, such that the interference is minimized. Moreover, each station may be grouped into one or more groups.
After the initial grouping, the AP may then sound to a particular group by sending a sounding packet again. This sounding step may be performed with a beamformed (or pre-coded) packet or a non-beamformed packet. If the packet is not beamformed, this step may be combined with the initial sounding.
Group sounding 104. The group sounding could be executed to sound the channels of specific groups. They could be either null-data-packet (NDP) sounding or they could be performed with multicast (to a specific group) data. Packets are not beamformed or precoded. During group sounding, packets are transmitted from AP, and then the STAs in the targeted group send back CSI to the AP. Then, the AP determines the number of space-time streams for each STA and, accordingly, the steering/precoding matrix.
For example, if the packet is not beamformed, for a particular group having 3 stations, the group CSI Hgroup at the AP may be expressed as:
In this case, each element could be a row vector, and the “coupling terms” are the off-diagonal terms. If they are large compared to the diagonal terms h00, h11, h22, then there will be considerable interference between the stations, which is not good for performance.
Therefore, the AP computes a pre-coding, or steering matrix V=[V1 V2 V3] such that
Because of imperfections at the transmitter, and any variable channel conditions, the zero terms will not be identically zero, but close to zero, or comparatively small with the diagonal terms.
Validation sounding 106. These could be executed to sound the effective channels of specific groups with beamforming or precoding. They could be NDP sounding or performed with DL MU-MIMO (to a specific group) data. Packets are beamformed or precoded. After validation, sounding packets are transmitted from the AP. The STAs in the targeted group either: (1) Send back the CSI corresponding the pre-coded channel to the AP; or (2) compute the signal-to-interference ratio (SINR) of the preamble or data, and send it back to the AP. Then, the AP determines whether the grouping is valid or the steering/precoding matrix has to be updated.
If the grouping is not valid, then: (1) first go to the initial sounding mode to determine the new group; or (2) directly determine the new group definitions and go to the group sounding mode.
If the steering/precoding has to be updated, then: (1) go to the group sounding mode to determine the new steering/precoding matrix.
According to another embodiment of the present invention, a validation step is performed in which the AP sends a beamformed sounding packet, which could be null data packet (NDP). The CSI beamformed at this step should be “diagonal” as above. The AP double-checks the magnitude of the off-diagonal terms in the matrix. The relative size of these terms (using any vector norm, or Frobenius norm, for example, if these are MIMO stations, since these off-diagonal terms could be matrices) with respect to the diagonal terms will determine how much interference there will be between the stations, i.e. signal-to-interference ratio (SINR) value. After this step, the AP is able to finally choose a proper modulation and coding scheme (MCS), based on signal to noise (SNR) (RSSI), and SINR, and prescribe the number of long training frames (LTF) per station. If the metrics are satisfactory, data transmission mode can start after this step.
According to another embodiment of this invention, a steady state mode is also performed where the AP may periodically send non-beamformed sounding packets to the group to periodically update a steering matrix V. Intermittently, the AP can send beamformed sounding packets to keep track of the SINR/SNR of the downlink condition of the multi-station (MU-DL). This metric can be used to re-assess the group, such as removing a particular station, which has lost orthogonality, or re-grouping, such as effectively killing the group, and starting the grouping process over, when the channel changes too drastically.
Moreover, once SINR validation is used, SINR can also be used to assign the number of spatial streams (Nss) to each station.
At the validation/assignment step, the system may re-compute the steering matrices. For example, a 2Rx STA may only be assigned Nss=1, because the residual coupling on one Rx chain was high. In this case, the second Rx chain will be ignored. The second chain will then correspond to a direction not used for data; instead, this direction will contain cross-coupling interference. In this case, the Rx may choose to shut down (power down) the second receiver chain in order to minimize effective noise from entering the Rx front end.
According to an embodiment, the AP selects the Rx-chain, rather than the antenna, for each station and re-computes the steering matrices, using unused directions to improve isolation (or reduce interference) between stations.
ImplementationAccording to an embodiment 200 of the present invention, when there are 3 stations within a MU network 202, such as in the case in
and the signal received at the remote stations 210, 212 and 214 can be expressed as (neglecting noise terms):
Therefore, in this embodiment, the transmitted signal X may contain components for each station and each is pre-coded by the matrix V:
In general each station can be transmitted multi-stream data:
The precoding matrices
V=[V1 V2 V3]
are computed such that the effective channels 204, 206 and 208 to the independent STAs 210, 212 and 214 are orthogonal, or independent of one another. In other words, transmission to one STA does not interfere with the other STA in the MU group.
According to an embodiment of the present invention, the matrices Vi in general need to be orthogonal to the channel matrices corresponding to the other stations in the group. That is;
HjVi=0, i≠j.
In this case, the columns of the precoding matrices Vi are said to lie in the Null Space of Hj. Candidate precoding matrices Vi can be computed using the QR decomposition.
The QR decomposition can be used to compute null spaces. Consider a general complex matrix A, which is m×n, m<n. Then, the QR decomposition can be used to decompose the matrix as
A*P=QR=[Q1 Q2]R,
where P is a permutation matrix, and the relative dimensions are specified as:
Q:n×n
R:n×m
Q1:n×m
Q2:n×(n−m)
Given this partition, the orthogonality condition results:
AQ2=0.
In this case, the columns of Q2 span the nullspace (or, right nullspace) of the matrix A. This is expressed as:
N(A)=Q2.
Hence, according to an embodiment of the present invention, in order to find the precoding steering matrices for the 3 stations system described above, the following conditions must hold:
More precisely, the columns of the precoding matrices Vi might have belonged to the nullspace Ni, which is called Condition 1, and could be expressed as:
Condition 1 simply means that the precoding matrices for a particular station must lie in a Nullspace of the other stations, to guarantee low interference between the stations. While this condition will guarantee low interference in the MU group, for good performance, the transmission to the stations has to be strong. In other words, there's a need for a second condition to guarantee reasonable transmission:
Here, condition 2 means that the channel to each station can not lie in the Nullspace of the other stations. This can happen, in general, if two stations are strongly correlated. The chance that any of the conditions in Condition 2 will not happen “precisely” (meaning that one of the equations in (condition 2) is exactly “zero”) is probably small. The design of the precoding matrices should be done to minimize the chance of Condition 2 occurring, as described below.
To minimize the chance that Condition 2 occurs, according to an embodiment of the present invention, the precoding matrices are selected to maximize the received strength of transmission to each station. That is, after the corresponding nullspaces are found, the following optimization problem has to be solved:
maxV
For example, in a particular scenario, where the stations are either 1 or 2 spatial streams capable. For these cases, consider the dimensions such that H is 5×8, and the individual stations are defined by the following scenario:
For these stations, the corresponding Nullspaces dimensions are
For STA3 214, which is one stream, the dimension of N3 is 8×4, and can be written a set of vectors:
N3=[n1 . . . n4]
The precoding matrix V3 is 8×1, and can be written as a linear combination of the columns of N3, as:
In order to choose a to maximize the signal strength at the 3rd receiver. The received signal is expressed as:
The problem then reduces to finding the vector a that gives good transmission through the effective channel:
H3N3h3.
In this one spatial stream (1SS) case, h3 is a 1×4 complex row vector. The energy maximizer is then:
ā3h*3/∥h*3∥
That is, the maximizer is the complex conjugate of the vector H3. In this case h3 is the projection of the Nullspace of the STA1 210 and STA2 212 channels onto the channel of STA3 214. The maximizer ā3 will maximize the energy gain through this projection space.
The optimal precoding matrix is then:
{N3ā3}(k)=V3(k).
The final step is to assess the MU-MIMO gain through the channel, to determine if the MU constraint was too restrictive for this particular station. One possible metric approach is to compare the MU-Gain to the unrestricted BF gain:
MU-GAIN(k)=|H3V3|/∥H3∥(k).
This metric is summed over all Nsc subcarriers. It provides a measure of how much energy was lost by restricting the precoder to lie in the Nullspace N3. Only include this 1SS station if the MU-GAIN is above a threshold:
MU Group Requirement:
Please note that, in practice, {N3ā3}(k)=V3(k) would be computed for each subcarrier k. Each subcarrier then has an 8-element precoding coefficient. The squared sum for each Tx component is computed across all subcarriers, and the total is stored for each Tx. The maximum of the 8-energies is determined, and this value is scaled so that the maximum energy at the strongest transmitter does not overdrive the Tx PA. The final normalizing step should be done after all the precoding matrices are computed for each STA, to make sure the MU power constraint is satisfied.
Note also that the solution is the 2-norm maximizer which is also the maximum power gain through the channel sub-space. However, other solutions may be chosen to maximize the 1-norm or ∞-norm, for different emphasis.
Note also that if the MU Group requirement is not satisfied, the station can be removed from the group, the number of stations reduced by 1, and the Nullspaces recalculated.
Note also that the MU-Gain threshold may be dependent on RSSI. It could happen that the signal strength to the particular station is so strong that the threshold is relaxed.
According to another embodiment of the present invention, for STA1 210 and STA2 212, which are 2-stream devices, the dimensions of N1,2 are 8×5, and can be written according to a set of vectors:
N1,2=[n1 . . . n5].
In this case, the precoding matrices V1,2 are 8×2, and of the form: V1=N1A, where N1 is 8×5 and A is a 5×2 complex matrix, and the received signal expressed as:
The problem then reduces to finding the directions that give good transmission through the effective 2×5 channel:
H1N1h1.
In this case, the maximum power gain objective leads to an SVD solution for the matrix A. Specifically, if h1=UΣV* then the optimal solution for the 2SS transmission is: Ā=V. For a 2 spatial stream (2SS) channel, the SVD has a closed form solution.
At this step, the algorithm can check the condition of the channel to assess whether or not 2 spatial streams is feasible under the MU channel assumptions. This can be done by comparing the relative strength of the two singular values in Σ, to make sure the smaller value is not attenuated too much. If the MU-AP concludes only 1SS is possible to STA1 210, or STA2 212, it can assign 1SS.
Please note that two normalization steps are needed, one assuming 1SS transmission, the other assuming 2SS is sent. Both need to normalize the power at each of the 8 Tx so that none are over-driven into a poor EVM state. The first is just the same as in the 1SS station, since {N3Ā1}(k)=V1(k), for 1SS, only ā1, the first column of Ā=[ā1 ā2] is used for transmission.
For 2SS, the magnitude of each row of {N1Ā1}(k)=V1(k) is computed, and summed over the subcarriers. Again, the output of the precoding matrices corresponding to each of the transmitters is scaled to prevent the maximum power from saturating any of the eight transmitters.
In summary, the Precoding Design described above can be integrated into a process that can be executed by a MU capable AP. In the process of computing the precoders, the membership in each group is also assessed using a metric; i.e., the MU groups are formed as part of the computation of the MU precoders.
Note also, that although the preceding grouping process required CSI as measured by the channel matrices, the identical process can be achieved using alternate representation for CSI. As an example, consider the singular value decomposition for each channel given by: H=UΣV*. The same steps above can be followed by substituting the
Please refer to
At Step 304, the Null spaces of all the candidate stations in the group are computed.
At Step 306, the precoding matrix Vi are computed for each station.
At Step 308, the transmission quality of the precoder is computed, and tested against a threshold. If the threshold condition is met at Step 310, this particular station is considered a group member, and the next station is considered, at Step 312. The process Steps 306, Step 308, and Step 310 are then repeated for the next indexed group candidate.
At step 310, if a particular candidate is not considered a valid group member, that station is disqualified from the group, as shown in Step 314. In this case, that candidate CSI is eliminated from the set of channel matrices (Step 302), and the corresponding Nullspaces for each candidate recomputed (Step 304). The iterative process of Steps 306, Step 308 and Step 310 are repeated for each station in the candidate group.
After the final membership in the Group is established, by using the flow 300 shown in
The formation and validation of a station group is shown as a two-step sounding process in
The precoding matrices V1, V2, and V3 are computed as described above. Then the second sounding stage as shown in
In this aggregated response, each row corresponds to the MU-Sounding response. The diagonal terms correspond to the particular station's beamformed channel, such as Ĥ1V1 for STA1 410, whereas the off-diagonal responses, such as Ĥ1V2 and Ĥ1V3 represent the measured interference levels. In the system design, the each STA 410-414 can send MU-Sounding response so that the AP 402 can estimate the interference, and validate the MU group, or the each STA 410-414 can estimate the interference from the other stations by comparing relative strength of the diagonal terms to the off-diagonal terms (this is referred to as the Signal-to-Interference Ratio, or SINR, as also shown in
An example from the above 3 station's scenario of interference metrics that can be measured at the station 1 and sent back to the AP as part of an interference feedback can be represented as:
In this case, the metrics SINR1(1) and SINR1(2) are simply the ratio of measured energy from the other stations, 2 and 3, respectively, with respect to the signal energy for the intended station, which is represented by: ∥Ĥ1V1∥.
Through period MU-sounding, if the interference is detected to be too large, then the interfering stations can be separated into different groups (regrouping) by removing one of the particular stations. This detection and regrouping is indicated by steps 316, 318 and 320 in
The MU group process 500 described can be implemented as a three stage process shown in
During the MU-Data stage 506, periodic MU-soundings, via step 512, are issued to the stations in the group to make sure channel conditions have not corrupted the MU data 506 operation, via step 516. In addition, the process extends to allow an operation MU-AP to form new groups, as channel conditions change (discussed above, by removing an interfering station), or by accommodating new MU STAs 514 that may join the network, via step 518. As a new station joins (as shown in
Although the present invention has been described in accordance with the embodiments shown, one of ordinary skill in the art will readily recognize that there could be variations to the embodiments and those variations would be within the spirit and scope of the present invention. Accordingly, many modifications may be made by one of ordinary skill in the art without departing from the spirit and scope of the appended claims.
Claims
1. A method for a transmitter in a multi-user system, comprising:
- sending a non-precoded sounding request to a plurality of receivers, wherein the transmitter gathers channel state information from each receiver and divides the plurality of receivers into at least one group;
- sending a precoded sounding request to the at least one group; and
- receiving signal to interference and noise ratio (SINR) information measured at the plurality of receivers.
2. The method of claim 1, further comprising,
- sending an initial sounding to the plurality of receivers before the step of sending the non-precoded sounding request; and
- gathering channel state information from the plurality of receivers.
3. The method of claim 2, wherein the initial sounding is a null data packet.
4. The method of claim 1, wherein the non-precoded sounding request is a null data packet.
5. The method of claim 1, further comprising,
- sending a multi-user packet to the at least one group of receivers; and
- measuring SINR information by the at least one group of receivers after receiving the multi-user packet.
Type: Application
Filed: Jun 6, 2014
Publication Date: Nov 27, 2014
Inventors: Thomas E. PARE, JR. (Mountain View, CA), Cheng-Hsuan WU (Jhubei City), Yung-Szu TU (Jhubei City), Kiran ULN (Pleasanton, CA), Ravishankar H. MAHADEVAPPA (San Jose, CA)
Application Number: 14/298,763
International Classification: H04B 7/04 (20060101); H04W 8/18 (20060101); H04B 7/06 (20060101); H04W 4/08 (20060101);