Coordinated multiple input multiple output (MIMO) transmission for access points (APS)
The coordinated MIMO transmission scheme addresses the challenge of achieving reliable coverage in WLAN systems by enabling multiple APs to transmit independently to STAs, enhancing coverage, reliability, and data rates through coordinated precoding and spatial multiplexing.
Patent Information
- Application Number
- PCT/US2024/061170
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-12-19
- Filing Date
- 2024-12-19
- Publication Date
- 2025-06-26
AI Technical Summary
Existing wireless local area network (WLAN) systems face challenges in achieving reliable and consistent coverage across large areas, such as homes and offices, due to the difficulty in coordinating multiple access points (APs) to transmit effectively to stations (STAs) using coordinated multiple input multiple output (MIMO) technology.
The proposed solution involves a coordinated MIMO transmission scheme where an access point (AP) sends a sounding request to a station (STA), receives sounding feedback reports from the STA and additional APs, computes a precoding matrix, and triggers a downlink coordinated MIMO transmission with the additional APs to the STA, enabling simultaneous transmission on the same frequency and time.
This approach enhances coverage and reliability in WLAN environments by allowing multiple APs to cooperate and transmit independently to STAs, increasing total power transmission, antenna count, and spatial separation, thereby improving roaming capabilities and data rates.
Smart Images

Figure US2024061170_26062025_PF_FP_ABST
Abstract
Description
COORDINATED MULTIPLE INPUT MULTIPLE OUTPUT (MIMO)TRANSMISSION FOR ACCESS POINTS (APs)RELATED APPLICATION
[0001] This application claims the benefit of U.S. Provisional Application No. 63 / 611,776, filed December 19, 2023, the disclosure of which is incorporated herein by reference in its entirety.
[0002] The examples discussed in the present disclosure are related to coordinated multiple input multiple output transmission for access points (APs) and stations (STAs).BACKGROUND
[0003] Unless otherwise indicated herein, the materials described herein are not prior art to the claims in the present application and are not admitted to be prior art by inclusion in this section.
[0004] An access point (AP), is a networking hardware device that allows other WiFi® devices to connect to a wired network. As a standalone device, the AP may have a wired connection to a router, but, in a wireless router, it can also be an integral component of the router itself. There are many wireless data standards that have been introduced for wireless access point and wireless router technology such as 802. I la, 802.11b, 801.11g, 802.1 In (Wi-Fi® 4), 802.1 lac (Wi-Fi® 5), 802.1 lax (Wi-Fi® 6), and so forth.
[0005] The subject matter claimed in the present disclosure is not limited to examples that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one example technology area where some examples described in the present disclosure may be practiced.SUMMARY
[0006] An access point (AP) may include a processing device. The processing device may send, from the AP to a station (STA), a sounding request. The processing device may receive, at the AP from the STA, a sounding feedback report for the AP and for one or more additional APs. The processing device may compute, at the AP, a precoding matrix for the AP and for the one or more additional APs. The processing device may send, from the AP to the one or more additional APs, the precoding matrix. The processing device may trigger, at the AP, a downlink coordinated multiple input multiple output (MIMO) transmission from the AP and the one or more additional APs to the STA.
[0007] A station (STA) may include a processing device. The processing device may receive, at the STA from one or more access points (APs), a sounding request. The processing device may compute, at the STA, a sounding feedback report for the one or more access points. The processing device may send, from the STA to a first AP of the one or more APs, the sounding feedback report. The processing device may receive, at the STA, one or more downlink coordinated multiple input multiple output (MIMO) transmissions from the two or more APs to the STA.
[0008] A method may include sending, from an access point (AP) to a station (STA), a sounding request. The method may include receiving, at the AP from the STA, a sounding feedback report for the AP and for one or more additional APs. The method may include computing, at the AP, a precoding matrix for the AP and for the one or more additional APs. The method may include sending, from the AP to the one or more additional APs, the precoding matrix. The method may include triggering, at the AP, a downlink coordinated multiple input multiple output (MIMO) transmission from the AP and the one or more additional APs to the STA.
[0009] The objects and advantages of the embodiments will be realized and achieved at least by the elements, features, and combinations particularly pointed out in the claims.
[0010] Both the foregoing general description and the following detailed description are given as examples and are explanatory and are not restrictive of the invention, as claimed.BRIEF DESCRIPTION OF THE DRAWINGS
[0011] Examples will be described and explained with additional specificity and detail through the use of the accompanying drawings in which:
[0012] FIG. 1 illustrates an example wireless local area network environment.
[0013] FIG. 2A illustrates an example process flow for coordinated multiple input multiple output (co-MIMO) transmission.
[0014] FIG. 2B illustrates an example process flow for co-MIMO transmission.
[0015] FIG. 3 A illustrates an example block diagram for packet exchange when an access point computes the precoder matrix in co-MIMO transmission.
[0016] FIG. 3B illustrates an example block diagram for packet exchange when a station (STA) computes the precoder matrix in co-MIMO transmission.
[0017] FIG. 4A illustrates an example block diagram showing a packet sequence for independent sounding per access point (AP) and beamforming in co-MIMO transmission.
[0018] FIG. 4B illustrates an example block diagram showing a packet sequence for joint sounding and precoder computation at the STA in co-MIMO transmission.
[0019] FIG. 5 illustrates an example block diagram showing a packet sequence for joint sounding and precoder computation at the AP in co-MIMO transmission.
[0020] FIG. 6A illustrates an example spatial rate distribution of beamforming from one AP.
[0021] FIG. 6B illustrates an example spatial rate distribution of co-MIMO from 2 APs.
[0022] FIG. 6C illustrates rate cumulative distribution function (CDF) from the coverage simulation.
[0023] FIG. 7 illustrates a block diagram of an example system configured to perform co-MIMO transmission.
[0024] FIG. 8 illustrates an example process flow for co-MIMO transmission.
[0025] FIG. 9 illustrates an example process flow for co-MIMO transmission.
[0026] FIG. 10 illustrates an example process flow for co-MIMO transmission.
[0027] FIG. 11 illustrates an example process flow for co-MIMO transmission.
[0028] FIG. 12 illustrates an example process flow for co-MIMO transmission.
[0029] FIG. 13 illustrates a diagrammatic representation of a machine in the example form of a computing device within which a set of instructions, for causing the machine to perform any one or more of the methods discussed herein, may be executed.DESCRIPTION OF EMBODIMENTS
[0030] In a wireless local area network (WLAN) environment where the stations (STAs) are spread around and it is difficult to achieve coverage and reliability across the house, additional access points (APs) may be spread around the house in different layouts to get better coverage. APs may be either independent or part of an extended service set (ESS). Therefore, wireless devices may roam seamlessly between the different APs in the ESS without having to reconnect to the network. This may provide good coverage in large areas, such as offices and warehouses. Coordinated MIMO is a technology that may allow multiple APs to cooperate together and transmitsimultaneously on the same frequency and time. An AP may transmit an independent stream of information to a STA. With multiple antennas on the APs, the APs may create spatial separation between their transmissions, allowing the STA to receive the independent streams from the multiple APs.
[0031] For beamforming transmission, an AP may use channel knowledge between its antennas to the STA antennas to compute the precoding matrix. In some circumstances, the channel knowledge between antennas from the AP and antennas from the STA may be used.
[0032] In the case of coordinated multiple input multiple output (co-MIMO), the precoder matrix calculation may be computed jointly for the APs with knowledge of the channels between the one or more AP antennas and the one or more STA antennas.Therefore, the precoder computation may be performed at one location (e.g., either at the STA side, while the precoders are applied, or at the AP side). A protocol for feedback on the precoder coefficients for the APs may be used to facilitate precoder computation. Alternatively or in addition, the primary AP may do the precoder computation with feedback from the STA and pass the precoding to the secondary AP. In WLAN systems, one STA may be associated with one AP. Multiple APs may not exist on the same frequency and time when transmitting to the same STA.
[0033] Multiple APs with multiple antennas may be used to perform MIMO precoding in the downlink direction to the same STA. The APs may transmit a different stream of information to the STA at the same time and frequency. To enable coordinated MIMO transmission one or more of the following may be used: (i) joint channel sounding, (ii) feedback of joint channel estimation, (iii) computation of an individual coordinated MIMO precoder for the APs (e.g., may be performed at one of the AP or alternatively at the STA), (iv) a mechanism to deliver the precoding calculation result tothe other APs before transmission (when calculation is done at the AP side), (v) a protocol to feedback on the precoding matrix per AP (when computation is done at the STA side), (vi) coordinated transmission to trigger the APs to transmit using an individual precoder matrix supplied to the APs, (vii) an independent stream of information transmitted from the APs to the STA, and / or (viii) the streams of the APs may be spatially multiplexed.
[0034] The proposed scheme increases the coverage and reliability in houses and in large areas. The proposed scheme may use multiple APs to transmit to the same STA using different streams of data and thus increase total power transmission, the number of antennas, and the spatial separation between the streams. As a result, STA could roam more smoothly around and / or between APs without a change in frequency and / or timing.
[0035] Examples of the present disclosure will be explained with reference to the accompanying drawings.
[0036] FIG. 1 illustrates a WLAN environment 100 including a first access point (AP) 110, a second AP 120, and a station (STA) 130. The first AP 110 may be in a basic service set 1 (BSS1) 102 which may be an extended service set (ESS). The second AP 120 may be in a basic service set 2 (BSS2) 104 which may be an ESS. The first AP 110 and / or the second AP 120 may have one or more antennas. The first AP 110 may have antennas 112a, 112b, 112c, 112d. The second AP 120 may have antennas 122a, 122b, 122c, 122d. The STA 130 may have one or more antennas 132a, 132b.
[0037] The first AP 110 and the second AP 120 may transmit wireless signals 114, 124 to the STA 130 in the same time and on the same frequency. The STA 130 may receive the wireless signals 114, 124 as independent streams from the first AP 110 and the second AP 120.
[0038] Modifications, additions, or omissions may be made to the components of FIG. 1 without departing from the scope of the present disclosure.Transmission Procedure
[0039] FIG. 2A illustrates a flowchart having functionality 200 for co-MIMO transmission. In co-MIMO transmission, multiple APs (e.g., 110 and 120 as illustrated in FIG. 1) may transmit to one STA (e.g., 130 as illustrated in FIG. 1). An AP may send an independent stream of data to the STA at the same time. The streams may be sent using spatial multiplexing (e.g., as in the case of uplink multiple user multiple input multiple output (UL MU-MIMO) where multiple STAs may transmit simultaneously to one AP). To achieve better overall performance, the transmission may include precoding for the APs. The precoding matrices may be calculated jointly at one or more of the STA side or the AP side. In either case, the sounding packets may be sent by APs independently or may be sent jointly. That is, the device that calculates the precoding matrix may use the joint channel for the precoding calculation to facilitate the maximum performance.
[0040] The transmission flow may be effectuated using an access point comprising a processing device. The processing device may be operable to one or more of send, from the AP to a station (STA), a sounding request; receive, at the AP from the STA, a sounding feedback report for the AP and for one or more additional APs; compute, at the AP, a precoding matrix for the AP and for the one or more additional APs; send, from the AP to the one or more additional APs, the precoding matrix; and trigger, at the AP, a downlink coordinated multiple input multiple output (MIMO) transmission from the AP and the one or more additional APs to the STA. The processing device may be operable to transmit the downlink coordinated MIMO transmission from the AP to the STA.
[0041] The downlink coordinated MEMO transmission from the AP may be independent of one or more additional downlink coordinated MEMO transmissions transmitted from the one or more additional APs. The independent downlink coordinate MEMO transmissions from the AP may be independent of one or more additional downlink coordinate MIMO transmissions from the one or more additional APs when the data streams are independent. The independent data streams may be used to compute a precoding matrix. Joint transmission may be facilitated for two or more APs using the precoding matrix without close clock synchronization between the two APs.
[0042] After the APs receive and / or compute the precoding matrix, a joint coMEMO transmission may start. As illustrated in FIG. 2A, the dependencies between the actions at the transmitters (e.g., AP 1, . . ., n) and the station (e.g., STA) may be shown for the case in which the computation is done by a primary AP.
[0043] As illustrated in FIG. 2 A, functionality 200 for joint co-MEMO transmission is provided in which the AP computes the precoding matrix. The functionality 200 may determine, at an AP, transmitter APs and spatial streams for co-MEMO transmission, as shown in block 205. The functionality 200 may send, from an AP, sound requests to STA, as shown in block 210. The functionality 200 may perform, at the STA, channel estimation from a plurality of APs, as shown in block 215. The functionality 200 may return, at the STA, a joint report to a first AP, as shown in block 220. The functionality 200 may compute, at the first AP, a precoding matrix for the first AP and for one or more additional APs, as shown in block 225. The functionality 200 may transmit, from the first AP, the precoding matrix to the one or more additional APs and trigger downlink co-MEMO transmission, as shown in block 230. The functionality 200 may transmit, from the AP, co-MEMO transmission to the STA, as shown in block 235. Thefunctionality 200 may receive, at the STA, transmission and decode information, as shown in block 240.
[0044] As illustrated in FIG. 2B, the dependencies between the actions at the transmitters (e.g., AP 1, . . ., n) and the station (e.g., STA) may be shown for the case in which the computation is done by a STA. The STA may include a processing device that may perform one or more of: receive, at the STA from one or more access points (APs), one or more sounding requests; perform, at the STA, channel estimation from two or more APs using the one or more sounding requests; compute, at the STA, one or more precoding matrices for two or more APs; send, from the STA to the two or more APs, the one or more precoding matrices; and receive, at the STA, one or more downlink coordinated multiple input multiple output (MIMO) transmissions from the two or more APs to the STA.
[0045] As illustrated in FIG. 2B, functionality 250 for joint co-MIMO transmission is provided in which the STA computes the precoding matrix. The functionality 200 may determine, at an AP, transmitter APs and spatial streams for co-MIMO transmission, as shown in block 255. The functionality 200 may send, from the AP, sound requests to STA, as shown in block 260. The functionality 200 may perform, at a STA, channel estimation from a plurality of APs, as shown in block 265. The functionality 200 may compute, at the STA, a precoding matrix for the AP of the multiple APs and feedback the result (e.g., to a first AP or to an AP of the multiple APs), as shown in block 270. The functionality 200 may receive, at an AP of the multiple APs, an individual precoding matrix, as shown in block 275. The functionality 200 may trigger, at the first AP, downlink co-MIMO transmission, as shown in block 280. The functionality 200 may transmit, from the AP, co-MIMO transmission to the STA, asshown in block 285. The functionality 200 may receive, at the STA, transmission and decode information, as shown in block 290.
[0046] When the STA computes the precoding coefficients, functionality for an AP may include one or more of: send, from the AP to a station (STA), a sounding request; receive, at the AP from the STA, one or more precoding matrices; and send, from the AP to the STA, one or more downlink coordinated multiple input multiple output (MIMO) transmissions to the STA.
[0047] When the STA computes the precoding coefficients, the first AP may coordinate the transmission of an individual precoding matrix to the one or more additional APs. An AP may perform one or more of: send, from the AP to one or more additional APs, the one or more precoding matrices; or trigger, at the AP, a downlink co- MIMO transmission from the AP and the one or more additional APs to the STA.
[0048] When the STA computes the precoding coefficients, the STA may transmit the one or more precoding matrices using one or more of an over the air interface or a wired interface. The one or more APs may receive the one or more precoding matrices using one or more of an over the air interface or a wired interface.
[0049] The number of antennas may be related to the maximum number of APs that may be served by a STA. For example, when a STA has two antennas, the STA may be served by two APs, when a STA has three antennas, the STA may be served by three APs, and so forth.
[0050] To demonstrate the actual packet exchange an independent-sounding packet exchange may be used. Alternatively or in additionjoint-sounding packet exchange may be used. A first AP (e.g., AP 110, as illustrated in FIG. 1) may be operable to trigger, from the AP to the one or more additional APs (e.g., AP 120, as illustrated in FIG. 1), sounding null data packet transmissions from the one or more additional APs tothe STA (e.g., STA 130, as illustrated in FIG. 1). The first AP may start with a sounding packet and trigger sounding null data packet (NDP) transmissions for the additional APs to join the sounding process in subsequent packets. The STA may estimate the channel from first AP sounding packet and the additional APs sounding packets and store the channel estimation from the first AP and the additional APs. The STA may perform one or more of report back the channel to the first AP (as illustrated in FIG. 2) or calculate the precoder matrix for the APs.
[0051] For the case where the first AP computes the precoder matrix one or more operations may be performed. After the STA has estimated the channel coming from the first AP and the additional APs antennas (e.g., Hest AP1^STA,..., HestAPH^STA the STA may assume that the channel is a single channel matrix (e.g., Hest=[West API->STA ■■■ WestAPH^STA]) and provide a sounding feedback report to the first AP. The first AP may perform precoding computation and, when the precoding computation has been performed, the first AP may trigger the additional APs to simultaneously send the additional APs a precoding matrix specific for the additional APs. Alternatively or in addition, the precoding coefficient transmission may be performed separately from the trigger frame.
[0052] The AP may send the precoding matrix to the one or more additional APs using one or more of an over an air interface or a wired interface. In one example, the communication between the APs may be performed using an over the air interface. In another example, the APs may communicate through a wired interface. The one or more additional APs may receive its precoder coefficients and prepares itself for co-MIMO transmission on a following packet (e.g., a next packet).
[0053] The timing and / or the frequency of the first AP and the additional APs may be synced. The AP (e.g., a first AP) may send, from the AP (e.g., first AP) to the one ormore additional APs, one or more of a timing message or a frequency message. The one or more of the timing message or the frequency message may be operable to adjust one or more of a timing or a frequency of the downlink coordinated MIMO transmission transmitted from the AP and the one or more additional APs to the STA. Before the co- MIMO transmission may begin, the additional access points (APs) may adjust their timing and frequencies to match the first AP, e.g., by timing recovery from the precoder coefficients message or through a wired interface between the APs. The frequencies for the first AP and the additional APs may be roughly the same with variations less than a selected threshold being permissible.
[0054] The frequency variations may be tracked at the STA. The STA may track one or more frequency variations for multiple sounding packets received from the first AP and the additional APs. Since the streams may be sent independently from the first AP and / or the additional APs, the STA may track those frequency changes (e.g.., like for an UL MU-MIMO AP receiver).
[0055] The timing variations may be tracked at the STA. The STA may be operable to track one or more timing variations for multiple sounding packets received from the first AP and the additional APs. Since the streams may be sent independently from the first AP and / or the additional APs, the STA may track those timing changes. The first AP and / or the additional APs may begin their transmission in a selected time window. The selected time window may allow for variations less than a selected threshold.
[0056] The phase may be tracked at the STA. The STA may track, at the STA, a phase of the one or more downlink co-MIMO transmissions. The STA receiver for co- MIMO may track the phase of the different streams independently.
[0057] The station may be used for co-MIMO. The STA may include a processing device that may perform one or more of: receive, at the STA from one or more accesspoints (APs), a sounding request; compute, at the STA, a sounding feedback report for the one or more access points; send, from the STA to a first AP of the one or more APs, the sounding feedback report; and receive, at the STA, one or more downlink coordinated multiple input multiple output (MIMO) transmissions from the one or more APs to the STA.
[0058] As illustrated in FIG. 3 A, a block diagram 300 is provided for co-MIMO transmission in which the AP computes the precoder matrix. AP 1 310 may send a sounding NDP 311 to a STA 340. After a delay 312, AP2 320 may send a sounding NDP 321 to the STA 340. After another delay 322 (which may vary depending on the number of access points transmitting sounding NDPs after AP2 320 and before AP n 330), AP n 330 may send a sounding NDP 331 to the STA 340. After delay 332, the STA 340 may compute a joint channel report 345. The joint channel report may be sent to API 310. API 310 may compute the precoding matrix, as shown by operation 313. The precoding matrix may be subject to processing 314 to generate precoder coefficients 315. API 310 may trigger co-MIMO transmission 316. After a delay 317, co-MIMO transmission may occur (e.g., using co-MIMO stream 1 318, co-MIMO stream 2 328, co- MIMO stream n 338, or the like).
[0059] Alternatively or in addition, the STA may compute the precoder coefficients. After STA has estimated the channel coming from the APs antennas, the STA may use the estimated channel to compute the precoder coefficients for the APs. In the next packet, the STA may send a full report including a dedicated coefficient for the APs. Once the APs have received its individual precoder matrix, the first AP may send a trigger packet to the APs to signal that the APs may transmit the co-MIMO transmission in the next packet, which may be similar to the previous case in which the AP computes the precoder matrix. APs may sync themselves to the first AP clock. In one example,trigger and clock synchronization may be performed over-the-air. In another example, a separate, wired interface may be used to send the trigger and synchronize clocks.
[0060] As illustrated in FIG. 3B, a block diagram 350 is provided for co-MIMO transmission in which the STA computes the precoder matrix. AP 1 360 may send a sounding NDP 361 to a STA 390. After a delay 362, AP2 370 may send a sounding NDP 371 to the STA 390. After another delay 372 (which may vary depending on the number of access points transmitting sounding NDPs after AP2 370 and before AP n 380), AP n 380 may send a sounding NDP 381 to the STA 390. After delay 382, the STA 340 may compute a precoder coefficient report 395. The precoder coefficient report 395 may be sent to API 360 or the precoder coefficient report 395 may be sent to the API 360 and the AP2 370. After a delay 364, API 360 may trigger co-MIMO transmission 366. After a delay 367, co-MIMO transmission may occur (e.g., using co- MIMO stream 1 368, co-MIMO stream 2 378, co-MIMO stream n 388, or the like).Channel Sounding
[0061] Channel sounding may be used to compute the precoder coefficients (e.g., in the precoder matrix) used by the APs to serve the STA. An AP (e.g., a first AP) may perform beamforming to the STA by one or more operations including: send from the AP to the STA, a sounding null data packet announcement; send, from the AP to the STA, a sounding null data packet; and receive, at the AP from the STA, sounding feedback used to generate a beamformed packet.
[0062] Conversely, the STA may receive, at the STA from one or more APs (e.g., the first AP or one or more additional APs) a sounding null data packet announcement.The STA may receive, at the STA from the one or more APs (e.g., the first AP or one or more additional APs), a sounding null data packet. The STA may send, from the STA tothe one or more APs (e.g., the first AP or one or more additional APs) sounding feedback used to generate a beamformed packet.
[0063] The STA may perform one or more of estimate, at the STA, a channel matrix on one or more carriers; or perform, at the STA, singular value decomposition of the channel matrix. The STA may estimate the channel matrix Hesion the carrier or a subset of carriers (e.g., each 4thcarrier). Singular value decomposition (SVD) of the estimated channel may be performed according to Hest= USVH. The relevant columns of the matrix V, e.g., the first column to transmit one spatial stream, may be reported from the STA back to the AP and the AP may use the matrix V to beamform the transmit signal.
[0064] As illustrated in FIG. 4A, an example block diagram 400 shows a packet sequence for independent sounding per access point (AP) and beamforming in co-MIMO transmission. API 410 may send a null data packet announcement (NDPA) 411 to a STA 430. After a delay 412, API 410 may send sounding NDP1 413 to the STA 430. After a delay 414, STA may compute sounding feedback 1 434. After a delay 415, AP2 may send an NDPA 421 to the STA 430. After a delay 422, AP2 may send NDP2 423 to the STA 430. After a delay 424, STA 430 may compute sounding feedback 2 438. After a delay 418, API 410 may transmit beamformed packet 1 419 to the STA and AP2 may transmit beamformed packet 2 429 to the STA. Beamformed packet 1 419 and beamformed packet 2 429 may be transmitted in the same time window. The AP sounding NDP (e.g., sounding NDP1 413) may be transmitted from API 410 to the STA 430 sequentially compared to sounding data packet transmission (e.g., sounding NDP2 423) from the one or more additional APs (e.g., AP2 420) to the STA 430.
[0065] For enhanced performance, the precoding of simultaneously transmitting APs may be jointly optimized, which may use the channel estimation data available atone location. The STA may receive, at the STA from the one or more APs, the one or more sounding requests in a selected time window. The one or more APs may send, from the AP to the STA, the one or more sounding requests in a selected time window. As the STA receives sounding packets from both APs, the full channel estimation may be available at the STA and the STA may compute a jointly optimized precoder. This may provide the sounding sequence, as shown in Figure 4B. One AP may be the first AP that may initiate the sounding packet transmission for both APs. The STA may receive the sounding NDPs, perform sounding, and compute the precoders. A precoder feedback packet, containing the precoder coefficients to be used by the APs, is sent to the APs and the APs may transmit the precoded packet.
[0066] While the performance illustrated in FIG. 4B may be enhanced compared to the performance illustrated in Figure 4A, the computational complexity for the STA in FIG. 4B may be high compared to the computational complexity in FIG. 4A. Because the STAs use low power consumption (e.g., because the STAs are battery powered devices), high powered applications may not be convenient.
[0067] As illustrated in FIG. 4B, an example block diagram 450 shows a packet sequence for joint sounding and precoder computation at the STA in co-MIMO transmission. API 460 may send NDPA 461 to STA 480. Following a delay 462, API 460 may send sounding NDP1 463 and AP2 479 may send sounding NDP2 473 to STA 480. Following a delay 464, the STA 480 may compute precoder feedback 483. Following delay 474, API 460 may receive precoder feedback 1 483. After the delay 474, the STA 480 may compute precoder feedback 2 487. Following delay 476, API 460 may receive precoder feedback 2 487 and trigger 466 the co-MIMO transmission from API 460 and AP2 470. Following a delay 467, API 460 may send precoded packet 1 469 and AP2 470 may send precoded packet 2 479 to STA 480. The sounding datapacket transmission from the one or more additional APs (e.g., AP2 470) to the STA (e.g., STA 480) may be transmitted in the same time window as an AP sounding null data packet transmitted from the AP (e.g., API 460) to the STA 480.
[0068] The precoder optimization may be performed at one of the APs. The STA may collect the sounding feedback and the full estimate Hestand send the sounding feedback and the full estimate Hestto the first AP. The first AP may send a precoder feedback to the additional APs (e.g., AP2) and with that, both APs (e.g., the first AP and the additional APs) may have the precoder coefficients to be used for the precoded packet transmission.
[0069] As illustrated in FIG. 5, an example block diagram 500 shows a packet sequence for joint sounding and precoder computation at the AP in co-MIMO transmission. API 510 may send NDPA 511 to STA 530. Following a delay 512, API 510 may send sounding NDP1 513 and AP2 520 may send sounding NDP2 523 to STA 530. Following a delay 514, the STA 530 may compute joint sounding feedback 535. Following delay 524, API 510 may receive precoder feedback 2 515 and trigger 516 the co-MIMO transmission from API 510 and AP2 520. Following a delay 517, API 510 may send precoded packet 1 519 and AP2 520 may send precoded packet 2 529 to STA 530. The sounding data packet transmission from the one or more additional APs (e.g., AP2 520) to the STA (e.g., STA 530) may be transmitted in the same time window as an AP sounding null data packet transmitted from the AP (e.g., API 510) to the STA 530.Precoding Computation
[0070] The APs may perform transmit beamforming or precoding to improve performance of the co-MIMO transmission. Alternatively or in addition, the STA may perform precoding to improve performance of the co-MIMO transmission. There are different methods to compute the precoder.
[0071] In one example, an AP and / or STA may be operable to compute the precoding matrix using one or more phase shifted copies of one or more transmit signals from the one or more additional APs. Without precoding, transmit antenna of AP m=l,. . ,,M may send a phase-shifted copy of the same transmit signal um, e.g., xm=
[0072] In another example, when using beamforming, the precoder may be directly determined from the Ematrix feedback, e.g., pm= vml.
[0073] In another example, an AP and / or STA may be operable to compute the precoding matrix using joint optimization of a minimum mean square error (MMSE). That is, joint precoder optimization may be used. In this case, the precoder coefficients of transmitting APs p1(... , pm, ... , pMmay be optimized jointly, e.g., to compute the minimum mean squared error.
[0074] In another example, when the STA applies a zero-forcing equalizer G such that G = (HP)-1, the mean square error (MSE) may be= trace(GGHcr2).Consequently, the combined precoder P may be given by P =
[0075] In another example, an AP and / or STA may compute the precoding matrix by joint optimization using an iterative phase optimization. A joint optimization of precoders may be achieved by an iterative phase optimization <pm2, ... , <pmNtx for all / 7?= l ,. . ,, / W in multiple iterations.
[0076] The precoding matrix may include one or more precoding coefficients that may include one or more of: a real component and / or an imaginary component; or an amplitude and / or a phase. The one or more precoding coefficients may be reported as relative phases that may be compared to a carrier and an AP set to have a phase of 1, inwhich the carrier and the AP set to have the phase of 1 is not reported. The one or more precoding coefficients may be reported as a signal to noise ratio (SNR) for one or more of a carrier or a spatial stream. The one or more precoding coefficients may be reported as one or more of a received signal strength indicator (RS SI) power for the one or more APs or a power difference between the one or more APs.
[0077] The precoding matrix may be sent to the one or more APs (e.g., a first AP and / or one or more additional APs) using one or more of an over the air interface or a wired interface.
[0078] As illustrated in FIG. 6A and 6B, an example is provided of the rate distribution in space with 2 APs and a STA moved through 6 rooms. While in areas close to one of the APs, beamforming provided good data rates. When in regions between the APs, CO-MIMO provided higher data rates.
[0079] With larger distance from the APs, the rate increase may be larger compared to a rate increase when the distance between the APs is a shorter distance. As illustrated in FIG. 6C, while for the lower 40% of data rates, co-MIMO outperformed beamforming, beamforming was better for the higher 60% of the rate CDF.
[0080] An AP may automatically switch to CO-MIMO in regions where CO-MIMO rates are higher than the beamforming rates. The AP may switch from a coordinated MIMO transmission scheme to a beamforming scheme when a beamforming scheme data rate is higher than a coordinated MIMO transmission scheme data rate. The AP may switch from a beamforming scheme to a coordinated MIMO transmission scheme when a coordinated MIMO transmission scheme data rate is higher than a beamforming scheme data rate.Transmit Power Control
[0081] Receiving signals from multiple APs simultaneously with a large difference in receive power may cause a performance loss. Therefore, the receive power difference may be limited. Power control may be relevant for the data packet and for the sounding packet in case of simultaneous sounding (e.g., as illustrated in FIG. 5).
[0082] An AP may identify, at the AP, a received (RX) sum power for the AP and for the one or more additional APs. The RX sum power may be measured at the STA. The AP may compute, at the AP, an RX power difference between an AP RX power and the RX sum power. The AP RX power may be measured at the STA. The AP may reduce, at the AP, an AP transmit (TX) power when the AP TX power is greater than a selected threshold compared to the RX sum power.
[0083] In these scenarios, the STA may measure the RX sum power for the one or more APs. The STA may send, from the STA to the one or more APs, the RX sum power for the one or more APs. In the case of independent sounding, this may be performed by measurement of the sum received power during the individual sounding packet from the one or more APs. In the case of joint sounding, the sum power may be computed from the estimated channel Hest mfrom the AP m to the STA. The squared sum over the elements of the channel matrix may be a measure for the received power.
[0084] When the receive power difference between the APs transmission exceeds a selected threshold, e.g., lOdB, the transmit power of the AP with the higher receive power may be reduced to facilitate a maximum power difference.
[0085] FIG. 7 illustrates a block diagram of an example communication system 700 for co-MIMO transmission, in accordance with at least one example described in the present disclosure. The communication system 700 may include a digital transmitter 702, a radio frequency circuit 704, a device 714, a digital receiver 706, and a processing device 708. The digital receiver 706 and the processing device may be configured toreceive a baseband signal via connection 710. A transceiver 716 may comprise the digital transmitter 702 and the radio frequency circuit 704.
[0086] In some examples, the communication system 700 may include a system of devices that may be configured to communicate with one another via a wired or wireline connection. For example, a wired connection in the communication system 700 may include one or more Ethernet cables, one or more fiber-optic cables, and / or other similar wired communication mediums. Alternatively, or additionally, the communication system 700 may include a system of devices that may be configured to communicate via one or more wireless connections. For example, the communication system 700 may include one or more devices configured to transmit and / or receive radio waves, microwaves, ultrasonic waves, optical waves, electromagnetic induction, and / or similar wireless communications. Alternatively, or additionally, the communication system 700 may include combinations of wireless and / or wired connections. In these and other examples, the communication system 700 may include one or more devices that may be configured to obtain a baseband signal, perform one or more operations to the baseband signal to generate a modified baseband signal, and transmit the modified baseband signal, such as to one or more loads.
[0087] In some examples, the communication system 700 may include one or more communication channels that may communicatively couple systems and / or devices included in the communication system 700. For example, the transceiver 716 may be communicatively coupled to the device 714.
[0088] In some examples, the transceiver 716 may be configured to obtain a baseband signal. For example, as described herein, the transceiver 716 may be configured to generate a baseband signal and / or receive a baseband signal from another device. In some examples, the transceiver 716 may be configured to transmit thebaseband signal. For example, upon obtaining the baseband signal, the transceiver 716 may be configured to transmit the baseband signal to a separate device, such as the device 714. Alternatively, or additionally, the transceiver 716 may be configured to modify, condition, and / or transform the baseband signal in advance of transmitting the baseband signal. For example, the transceiver 716 may include a quadrature up-converter and / or a digital to analog converter (DAC) that may be configured to modify the baseband signal. Alternatively, or additionally, the transceiver 716 may include a direct radio frequency (RF) sampling converter that may be configured to modify the baseband signal.
[0089] In some examples, the digital transmitter 702 may be configured to obtain a baseband signal via connection 710. In some examples, the digital transmitter 702 may be configured to up-convert the baseband signal. For example, the digital transmitter 702 may include a quadrature up-converter to apply to the baseband signal. In some examples, the digital transmitter 702 may include an integrated digital to analog converter (DAC). The DAC may convert the baseband signal to an analog signal, or a continuous time signal. In some examples, the DAC architecture may include a direct RF sampling DAC. In some examples, the DAC may be a separate element from the digital transmitter 702.
[0090] In some examples, the transceiver 716 may include one or more subcomponents that may be used in preparing the baseband signal and / or transmitting the baseband signal. For example, the transceiver 716 may include an RF front end (e.g., in a wireless environment) which may include a power amplifier (PA), a digital transmitter (e.g., 702), a digital front end, an Institute of Electrical and Electronics Engineers (IEEE) 1588v2 device, a Long-Term Evolution (LTE) physical layer (L-PHY), an (S-plane) device, a management plane (M-plane) device, an Ethernet media access control(MAC) / personal communications service (PCS), a resource controller / scheduler, and the like. In some examples, a radio (e.g., a radio frequency circuit 704) of the transceiver 716 may be synchronized with the resource controller via the S-plane device, which may contribute to high-accuracy timing with respect to a reference clock.
[0091] In some examples, the transceiver 716 may be configured to obtain the baseband signal for transmission. For example, the transceiver 716 may receive the baseband signal from a separate device, such as a signal generator. For example, the baseband signal may come from a transducer configured to convert a variable into an electrical signal, such as an audio signal output of a microphone picking up a speaker's voice. Alternatively, or additionally, the transceiver 716 may be configured to generate a baseband signal for transmission. In these and other examples, the transceiver 716 may be configured to transmit the baseband signal to another device, such as the device 714.
[0092] In some examples, the device 714 may be configured to receive a transmission from the transceiver 716. For example, the transceiver 716 may be configured to transmit a baseband signal to the device 714.
[0093] In some examples, the radio frequency circuit 704 may be configured to transmit the digital signal received from the digital transmitter 702. In some examples, the radio frequency circuit 704 may be configured to transmit the digital signal to the device 714 and / or the digital receiver 706. In some examples, the digital receiver 706 may be configured to receive a digital signal from the RF circuit and / or send a digital signal to the processing device 708.
[0094] In some examples, the processing device 708 may be a standalone device or system, as illustrated. Alternatively, or additionally, the processing device 708 may be a component of another device and / or system. For example, in some examples, the processing device 708 may be included in the transceiver 716. In instances in which theprocessing device 708 is a standalone device or system, the processing device 708 may be configured to communicate with additional devices and / or systems remote from the processing device 708, such as the transceiver 716 and / or the device 714. For example, the processing device 708 may be configured to send and / or receive transmissions from the transceiver 716 and / or the device 714. In some examples, the processing device 708 may be combined with other elements of the communication system 700.
[0095] FIG. 8 illustrates a process flow of an example method 800 of co-MIMO transmission, in accordance with at least one example described in the present disclosure. The method 800 may be arranged in accordance with at least one example described in the present disclosure. The method 800 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (such as is run on a computer system or a dedicated machine), or a combination of both, which processing logic may be included in the processing device 1302 of FIG. 13, the communication system 700 of FIG. 7, or another device, combination of devices, or systems.
[0096] The method 800 may begin at block 805 where the processing logic may send, from the AP to a station (STA), a sounding request.
[0097] At block 810, the processing logic may receive, at the AP from the STA, a sounding feedback report for the AP and for one or more additional APs.
[0098] At block 815, the processing logic may compute, at the AP, a precoding matrix for the AP and for the one or more additional APs.
[0099] At block 820, the processing logic may send, from the AP to the one or more additional APs, the precoding matrix.
[0100] At block 825, the processing logic may trigger, at the AP, a downlink coordinated multiple input multiple output (MIMO) transmission from the AP and the one or more additional APs to the STA.
[0101] Modifications, additions, or omissions may be made to the method 800 without departing from the scope of the present disclosure. For example, in some examples, the method 800 may include any number of other components that may not be explicitly illustrated or described.
[0102] FIG. 9 illustrates a process flow of an example method 900 of co-MIMO transmission, in accordance with at least one example described in the present disclosure. The method 900 may be arranged in accordance with at least one example described in the present disclosure.
[0103] The method 900 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (such as is run on a computer system or a dedicated machine), or a combination of both, which processing logic may be included in the processing device 1302 of FIG. 13, the communication system 700 of FIG. 7, or another device, combination of devices, or systems.
[0104] The method 900 may begin at block 905 where the processing logic may receive, at the STA from one or more access points (APs), a sounding request.
[0105] At block 910, the processing logic may compute, at the STA, a sounding feedback report for the one or more access points.
[0106] At block 915, the processing logic may send, from the STA to a first AP of the one or more APs, the sounding feedback report.
[0107] At block 920, the processing logic may receive, at the STA, one or more downlink coordinated multiple input multiple output (MIMO) transmissions from the one or more APs to the STA.
[0108] Modifications, additions, or omissions may be made to the method 900 without departing from the scope of the present disclosure. For example, in someexamples, the method 900 may include any number of other components that may not be explicitly illustrated or described.
[0109] FIG. 10 illustrates a process flow of an example method 1000 of co-MIMO transmission, in accordance with at least one example described in the present disclosure. The method 1000 may be arranged in accordance with at least one example described in the present disclosure.
[0110] The method 1000 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (such as is run on a computer system or a dedicated machine), or a combination of both, which processing logic may be included in the processing device 1302 of FIG. 13, the communication system 700 of FIG. 7, or another device, combination of devices, or systems.
[0111] The method 1000 may begin at block 1005 where the processing logic may include send, from the AP to a station (STA), a sounding request.
[0112] At block 1010, the processing logic may include receive, at the AP from the STA, a sounding feedback report for the AP and for one or more additional APs.
[0113] At block 1015, the processing logic may include compute, at the AP, a precoding matrix for the AP and for the one or more additional APs.
[0114] At block 1020, the processing logic may include send, from the AP to the one or more additional APs, the precoding matrix.
[0115] At block 1025, the processing logic may include trigger, at the AP, a downlink coordinated multiple input multiple output (MIMO) transmission from the AP and the one or more additional APs to the STA.
[0116] The processing logic may include send, from the AP to the one or more additional APs, one or more of a timing message or a frequency message, in which the one or more of the timing message or the frequency message may be operable to adjustone or more of a timing or a frequency of the downlink coordinated MIMO transmission transmitted from the AP and the one or more additional APs to the STA.
[0117] The processing logic may include send, from the AP to the STA, a sounding null data packet announcement; sending, from the AP to the STA, a sounding null data packet; and receiving, at the AP from the STA, sounding feedback used to generate a beamformed packet.
[0118] The processing logic may include trigger, from the AP to the one or more additional APs, sounding null data packet transmissions from the one or more additional APs to the STA.
[0119] The processing logic may include compute the precoding matrix using one or more phase shifted copies of one or more transmit signals from the one or more additional APs; or computing the precoding matrix using joint optimization of a minimum mean square error (MMSE); or computing the precoding matrix by joint optimization using an iterative phase optimization.
[0120] When computing the precoding matrix using one or more phase shifted copies or one or more transmit signals from the one or more additional APs, the data may be separate between a first AP and a second AP. A first AP may not have the data that the first AP is sending and the second AP may not have the data that the second AP is sending. The information streams may be maintained separately. The first AP may use its own data to generate the phase shifted copies and the second AP may use its own data to generate the phase shifted copies. The phase shifted copies, which may be maintained separately by the first and second AP, may be used to generate the precoding matrix.
[0121] The processing logic may include identify, at the AP, a received (RX) sum power for the AP and for the one or more additional APs, in which the RX sum power is measured at the STA; compute, at the AP, an RX power difference between an AP RXpower and the RX sum power, in which the AP RX power is measured at the STA; and reduce, at the AP, an AP transmit (TX) power when the AP TX power is greater than a selected threshold compared to the RX sum power.
[0122] The processing logic may include switch from a coordinated MIMO transmission scheme to a beamforming scheme when a beamforming scheme data rate is higher than a coordinated MIMO transmission scheme data rate; and switch from a beamforming scheme to a coordinated MIMO transmission scheme when a coordinated MIMO transmission scheme data rate is higher than a beamforming scheme data rate.
[0123] The processing logic may include transmit the downlink coordinated MIMO transmission from the AP to the STA, in which the downlink coordinated MIMO transmission from the AP is independent of one or more additional downlink coordinated MIMO transmissions transmitted from the one or more additional APs.
[0124] Modifications, additions, or omissions may be made to the method 1000 without departing from the scope of the present disclosure. For example, in some examples, the method 1000 may include any number of other components that may not be explicitly illustrated or described.
[0125] FIG. 11 illustrates a process flow of an example method 1100 of co-MIMO transmission, in accordance with at least one example described in the present disclosure. The method 1100 may be arranged in accordance with at least one example described in the present disclosure.
[0126] The method 1100 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (such as is run on a computer system or a dedicated machine), or a combination of both, which processing logic may be included in the processing device 1302 of FIG. 13, the communication system 700 of FIG. 7, or another device, combination of devices, or systems.
[0127] The method 1100 may begin at block 1105 where the processing logic may receive, at the STA from one or more access points (APs), one or more sounding requests.
[0128] At block 1110, the processing logic may perform, at the STA, channel estimation from the one or more APs using the one or more sounding requests.
[0129] At block 1115, the processing logic may compute, at the STA, one or more precoding matrices for one or more APs.
[0130] At block 1120, the processing logic may send, from the STA to the one or more APs, the one or more precoding matrices.
[0131] At block 1125, the processing logic may receive, at the STA, one or more downlink coordinated multiple input multiple output (MIMO) transmissions from the one or more APs to the STA.
[0132] Modifications, additions, or omissions may be made to the method 1100 without departing from the scope of the present disclosure. For example, in some examples, the method 1100 may include any number of other components that may not be explicitly illustrated or described.
[0133] FIG. 12 illustrates a process flow of an example method 1200 of co-MIMO transmission, in accordance with at least one example described in the present disclosure. The method 1200 may be arranged in accordance with at least one example described in the present disclosure.
[0134] The method 1200 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (such as is run on a computer system or a dedicated machine), or a combination of both, which processing logic may be included in the processing device 1302 of FIG. 11, the communication system 700 of FIG. 7, or another device, combination of devices, or systems.
[0135] The method 1200 may begin at block 1205 where the processing logic may send, from the AP to a station (STA), a sounding request.
[0136] At block 1210, the processing logic may receive, at the AP from the STA, one or more precoding matrices.
[0137] AT block 1215, the processing logic may send, from the AP to the STA, one or more downlink coordinated multiple input multiple output (MIMO) transmissions to the STA.
[0138] Modifications, additions, or omissions may be made to the method 1200 without departing from the scope of the present disclosure. For example, in some examples, the method 1200 may include any number of other components that may not be explicitly illustrated or described.
[0139] For simplicity of explanation, methods and / or process flows described herein are depicted and described as a series of acts. However, acts in accordance with this disclosure may occur in various orders and / or concurrently, and with other acts not presented and described herein. Further, not all illustrated acts may be used to implement the methods in accordance with the disclosed subject matter. In addition, those skilled in the art will understand and appreciate that the methods may alternatively be represented as a series of interrelated states via a state diagram or events. Additionally, the methods disclosed in this specification are capable of being stored on an article of manufacture, such as a non-transitory computer-readable medium, to facilitate transporting and transferring such methods to computing devices. The term article of manufacture, as used herein, is intended to encompass a computer program accessible from any computer-readable device or storage media. Although illustrated as discrete blocks, various blocks may be divided into additional blocks, combined into fewer blocks, or eliminated, depending on the desired implementation.Additional Examples
[0140] In one example, multiple APs may perform MEMO precoding simultaneously in the downlink direction to the same STA. The APs may transmit an independent stream of information to the STA in which the APs’s streams are spatial multiplexed. The APs may have an individual precoding matrix.
[0141] In one example, functionality is provided to estimate the downlink MU MEMO channel from APs antennas to the STA. The functionality may be actuated by one or more of independent sounding sequence, or using joint sounding sequence.
[0142] In one example, functionality is provided to calculate joint precoding for the AP. The joint precoding may be calculated by one or more of the primary AP or the STA.
[0143] In one example, precoder coefficients may be conveyed to the APs in various ways. The precoder coefficients may be conveyed from the STA to APs. The precoder coefficients may be conveyed from the AP (e.g., first AP) to the one or more additional APs before the start of coordinate transmission. The precoder coefficients may be conveyed using one or more of over-the-air (by a WLAN packet) or through a wired interface between the APs.
[0144] In one example, the precoder coefficients may be conveyed as one or more of: (i) real and imaginary of coefficients, (ii) amplitude and phase of coefficients, (iii) one phase forced for the carrier and AP to 1 in which it is not reported, while the other phases are reported relative to that, (iv) signal-to-noise ratio (SNR) per carrier and spatial stream, (v) the RSSI power of the APs, or (vi) the power difference between the AP.
[0145] In one example, co-MEMO transmission to the other APs may be triggered followed by co-MEMO DATA transmission using one or more of over-the-air (by a WLAN packet) or through a wired interface between the APs.
[0146] Figure 13 illustrates a diagrammatic representation of a machine in the example form of a computing device 1300 within which a set of instructions, for causing the machine to perform any one or more of the methods discussed herein, may be executed. The computing device 1300 may include a rackmount server, a router computer, a server computer, a mainframe computer, a laptop computer, a tablet computer, a desktop computer, or any computing device with at least one processor, etc., within which a set of instructions, for causing the machine to perform any one or more of the methods discussed herein, may be executed. In alternative examples, the machine may be connected (e.g., networked) to other machines in a local area network (LAN), an intranet, an extranet, or the Internet. The machine may operate in the capacity of a server machine in client-server network environment. Further, while only a single machine is illustrated, the term “machine” may also include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methods discussed herein.
[0147] The example computing device 1300 includes a processing device (e.g., a processor) 1302, a main memory 1304 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM)), a static memory 1306 (e.g., flash memory, static random access memory (SRAM)) and a data storage device 1316, which communicate with each other via a bus 1308.
[0148] Processing device 1302 represents one or more general-purpose processing devices such as a microprocessor, central processing unit, or the like. More particularly, the processing device 1302 may include a complex instruction set computing (CISC) microprocessor, reduced instruction set computing (RISC) microprocessor, very long instruction word (VLIW) microprocessor, or a processor implementing other instruction sets or processors implementing a combination of instruction sets. The processing device1302 may also include one or more special-purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), network processor, or the like. The processing device 1302 is configured to execute instructions 1326 for performing the operations and steps discussed herein.
[0149] The computing device 1300 may further include a network interface device 1322 which may communicate with a network 1318. The computing device 1300 also may include a display device 1310 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)), an alphanumeric input device 1312 (e.g., a keyboard), a cursor control device 1314 (e.g., a mouse) and a signal generation device 1320 (e.g., a speaker). In at least one example, the display device 1310, the alphanumeric input device 1312, and the cursor control device 1314 may be combined into a single component or device (e.g., an LCD touch screen).
[0150] The data storage device 1316 may include a computer-readable storage medium 1324 on which is stored one or more sets of instructions 1326 embodying any one or more of the methods or functions described herein. The instructions 1326 may also reside, completely or at least partially, within the main memory 1304 and / or within the processing device 1302 during execution thereof by the computing device 1300, the main memory 1304 and the processing device 1302 also constituting computer-readable media. The instructions may further be transmitted or received over a network 1318 via the network interface device 1322.
[0151] While the computer-readable storage medium 1324 is shown in an example to be a single medium, the term “computer-readable storage medium” may include a single medium or multiple media (e.g., a centralized or distributed database and / or associated caches and servers) that store the one or more sets of instructions. The term “computer-readable storage medium” may also include any medium that is capable of storing, encoding or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methods of the present disclosure. The term“computer-readable storage medium” may accordingly be taken to include, but not be limited to, solid-state memories, optical media and magnetic media.
[0152] Some portions of the detailed description refer to different modules configured to perform operations. One or more of the modules may include code and routines configured to enable a computing system to perform one or more of the operations described therewith. Additionally or alternatively, one or more of the modules may be implemented using hardware including any number of processors, microprocessors (e.g., to perform or control performance of one or more operations), DSPs, FPGAs, ASICs or any suitable combination of two or more thereof. Alternatively or additionally, one or more of the modules may be implemented using a combination of hardware and software. In the present disclosure, operations described as being performed by a particular module may include operations that the particular module may direct a corresponding system (e.g., a corresponding computing system) to perform. Further, the delineating between the different modules is to facilitate explanation of concepts described in the present disclosure and is not limiting. Further, one or more of the modules may be configured to perform more, fewer, and / or different operations than those described such that the modules may be combined or delineated differently than as described.
[0153] Some portions of the detailed description are presented in terms of algorithms and symbolic representations of operations within a computer. These algorithmic descriptions and symbolic representations are the means used by those skilled in the data processing arts to convey the essence of their innovations to othersskilled in the art. An algorithm is a series of configured operations leading to a desired end state or result. In example implementations, the operations carried out require physical manipulations of tangible quantities for achieving a tangible result.
[0154] Unless specifically stated otherwise, as apparent from the discussion, it is appreciated that throughout the description, discussions utilizing terms such as detecting, determining, analyzing, identifying, scanning or the like, can include the actions and processes of a computer system or other information processing device that manipulates and transforms data represented as physical (electronic) quantities within the computer system’s registers and memories into other data similarly represented as physical quantities within the computer system’s memories or registers or other information storage, transmission or display devices.
[0155] Example implementations may also relate to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, or it may include one or more general -purpose computers selectively activated or reconfigured by one or more computer programs. Such computer programs may be stored in a computer readable medium, such as a computer-readable storage medium or a computer-readable signal medium. Computer- executable instructions may include, for example, instructions and data which cause a general- purpose computer, specialpurpose computer, or special-purpose processing device (e.g., one or more processors) to perform or control performance of a certain function or group of functions.
[0156] Although the subject matter has been described in language specific to structural features and / or methodological acts, it is to be understood that the subject matter configured in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.
[0157] Unless specific arrangements described herein are mutually exclusive with one another, the various implementations described herein can be combined in whole or in part to enhance system functionality and / or to produce complementary functions. Likewise, aspects of the implementations may be implemented in standalone arrangements. Thus, the above description has been given by way of example only and modification in detail may be made within the scope of the present disclosure.
[0158] With respect to the use of substantially any plural or singular terms herein, those having skill in the art can translate from the plural to the singular or from the singular to the plural as is appropriate to the context or application. The various singular / plural permutations may be expressly set forth herein for sake of clarity. A reference to an element in the singular is not intended to mean “one and only one” unless specifically stated, but rather “one or more.” Moreover, nothing disclosed herein is intended to be dedicated to the public regardless of whether such disclosure is explicitly recited in the above description.
[0159] In general, terms used herein, and especially in the appended claims (e.g., bodies of the appended claims) are generally intended as “open” terms (e.g., the term “including” should be interpreted as “including but not limited to,” the term “having” should be interpreted as “having at least,” the term “includes” should be interpreted as “includes but is not limited to,” etc.). Furthermore, in those instances where a convention analogous to “at least one of A, B, and C, etc.” is used, in general, such a construction is intended in the sense one having skill in the art would understand the convention (e.g., “a system having at least one of A, B, and C” would include but not be limited to systems that include A alone, B alone, C alone, A and B together, A and C together, B and C together, or A, B, and C together, etc.). Also, a phrase presenting two or more alternative terms, whether in the description, claims, or drawings, should be understood to includeone of the terms, either of the terms, or both terms. For example, the phrase “A or B” will be understood to include the possibilities of “A” or “B” or “A and B.”
[0160] Additionally, the use of the terms “first,” “second,” “third,” etc., are not necessarily used herein to connote a specific order or number of elements. Generally, the terms “first,” “second,” “third,” etc., are used to distinguish between different elements as generic identifiers. Absence a showing that the terms “first,” “second,” “third,” etc., connote a specific order, these terms should not be understood to connote a specific order. Furthermore, absence a showing that the terms first,” “second,” “third,” etc., connote a specific number of elements, these terms should not be understood to connote a specific number of elements.
[0161] The present disclosure may be embodied in other specific forms without departing from its spirit or essential characteristics. The described implementations are to be considered in all respects only as illustrative and not restrictive. The scope of the disclosure is, therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.
Claims
CLAIMSWhat is claimed is:
1. An access point (AP), comprising: a processing device operable to: send, from the AP to a station (STA), a sounding request; receive, at the AP from the STA, a sounding feedback report for the AP and for one or more additional APs; compute, at the AP, a precoding matrix for the AP and for the one or more additional APs; send, from the AP to the one or more additional APs, the precoding matrix; and trigger, at the AP, a downlink coordinated multiple input multiple output(MEMO) transmission from the AP and the one or more additional APs to the STA.
2. The access point of claim 1, wherein the processing device is further operable to: transmit the downlink coordinated MEMO transmission from the AP to the STA, wherein the downlink coordinated MEMO transmission from the AP is independent of one or more additional downlink coordinated MEMO transmissions transmitted from the one or more additional APs.
3. The access point of claim 1, wherein the processing device is further operable to: send, from the AP to the one or more additional APs, one or more of a timing message or a frequency message, wherein the one or more of the timing message or the frequency message is operable to adjust one or more of a timing or a frequency of the downlink coordinated MIMO transmission transmitted from the AP and the one or more additional APs to the STA.
4. The access point of claim 1, wherein the processing device is further operable to: send, from the AP to the STA, a sounding null data packet announcement; send, from the AP to the STA, a sounding null data packet; and receive, at the AP from the STA, sounding feedback used to generate a beamformed packet.
5. The access point of claim 1, wherein the processing device is further operable to: trigger, from the AP to the one or more additional APs, sounding null data packet transmissions from the one or more additional APs to the STA.
6. The access point of claim 5, wherein an AP sounding null data packet transmitted from the AP to the STA is transmitted sequentially compared to sounding data packet transmission from the one or more additional APs to the STA.
7. The access point of claim 5, wherein the sounding data packet transmission from the one or more additional APs to the STA are transmitted in the same time window as an AP sounding null data packet transmitted from the AP to the STA.
8. The access point of claim 1, wherein the processing device is further operable to: compute the precoding matrix using one or more phase shifted copies of one or more transmit signals from the one or more additional APs; or compute the precoding matrix using joint optimization of a minimum mean square error (MMSE); orcompute the precoding matrix by joint optimization using an iterative phase optimization.
9. The access point of claim 1, wherein the processing device is further operable to: identify, at the AP, a received (RX) sum power for the AP and for the one or more additional APs, wherein the RX sum power is measured at the STA; compute, at the AP, an RX power difference between an AP RX power and the RX sum power, wherein the AP RX power is measured at the STA; and reduce, at the AP, an AP transmit (TX) power when the AP TX power is greater than a selected threshold compared to the RX sum power.
10. The access point of claim 1, wherein the AP is operable to: switch from a coordinated MIMO transmission scheme to a beamforming scheme when a beamforming scheme data rate is higher than a coordinated MIMO transmission scheme data rate; and switch from a beamforming scheme to a coordinated MIMO transmission scheme when a coordinated MIMO transmission scheme data rate is higher than a beamforming scheme data rate.
11. A method comprising: sending, from an access point (AP) to a station (STA), a sounding request; receiving, at the AP from the STA, a sounding feedback report for the AP and for one or more additional APs; computing, at the AP, a precoding matrix for the AP and for the one or more additional APs;sending, from the AP to the one or more additional APs, the precoding matrix; and triggering, at the AP, a downlink coordinated multiple input multiple output (MEMO) transmission from the AP and the one or more additional APs to the STA.
12. The method of claim 11, further comprising: sending, from the AP to the one or more additional APs, one or more of a timing message or a frequency message, wherein the one or more of the timing message or the frequency message is operable to adjust one or more of a timing or a frequency of the downlink coordinated MIMO transmission transmitted from the AP and the one or more additional APs to the STA.
13. The method of claim 11, further comprising: sending, from the AP to the STA, a sounding null data packet announcement; sending, from the AP to the STA, a sounding null data packet; and receiving, at the AP from the STA, sounding feedback used to generate a beamformed packet.
14. The method of claim 11, further comprising: triggering, from the AP to the one or more additional APs, sounding null data packet transmissions from the one or more additional APs to the STA.
15. The method of claim 11, further comprising one or more of: computing the precoding matrix using one or more phase shifted copies of one or more transmit signals from the one or more additional APs; orcomputing the precoding matrix using joint optimization of a minimum mean square error (MMSE); or computing the precoding matrix by joint optimization using an iterative phase optimization.
16. The method of claim 11, further comprising: identifying, at the AP, a received (RX) sum power for the AP and for the one or more additional APs, wherein the RX sum power is measured at the STA; computing, at the AP, an RX power difference between an AP RX power and the RX sum power, wherein the AP RX power is measured at the STA; and reducing, at the AP, an AP transmit (TX) power when the AP TX power is greater than a selected threshold compared to the RX sum power.
17. The method of claim 11, further comprising: switching from a coordinated MIMO transmission scheme to a beamforming scheme when a beamforming scheme data rate is higher than a coordinated MIMO transmission scheme data rate; and switching from a beamforming scheme to a coordinated MIMO transmission scheme when a coordinated MIMO transmission scheme data rate is higher than a beamforming scheme data rate.
18. The method of claim 11, further comprising: transmitting the downlink coordinated MIMO transmission from the AP to the STA, wherein the downlink coordinated MIMO transmission from the AP is independentof one or more additional downlink coordinated MIMO transmissions transmitted from the one or more additional APs.
19. A station (STA), comprising: a processing device operable to: receive, at the STA from two or more access points (APs), a sounding request; compute, at the STA, a sounding feedback report for the two or more access points; send, from the STA to a first AP of the two or more APs, the sounding feedback report; and receive, at the STA, two or more downlink coordinated multiple input multiple output (MIMO) transmissions from the two or more APs to the STA.
20. The station of claim 19, wherein the processing device is further operable to: receive, at the STA from the two or more APs, a sounding null data packet announcement; receive, at the STA from the two or more APs, a sounding null data packet; and send, from the STA to the two or more APs, sounding feedback used to generate a beamformed packet.
21. The station of claim 19, wherein the processing device is further operable to: track, at the STA, one or more frequency variations a plurality of sounding packets received from the two or more APs; or track, at the STA, a phase of the one or more downlink coordinated multiple input multiple output (MIMO) transmissions.
22. The station of claim 19, wherein the processing device is further operable to: measure, at the STA, a received (RX) sum power for the two or more APs; and send, from the STA to the two or more APs, the RX sum power for the two or more APs.
Citation Information
Patent Citations
Parameter configuration and power determination method, device and communication node
US20200322893A1
Method and device for performing joint transmission in wireless LAN system
US20210307099A1
Frame exchange sequence for multi-AP cooperation
WO2023076846A1