USPatent applicationPatented

Carrier frequency offset estimation

Granted 26 Mar 2019 · 1 office action

Current assignee: NXP USA, Inc. · originally Marvell Technology Group Ltd.

Law firm: Law firm · Log in to unlock

Attorney: Attorney · Log in to unlock

Inventors: Hongyuan Zhang, Rui Cao, Hui-Ling Lou, Xiayu Zheng +2 · Examiner: Awet Haile · AU 2474 · TC 2400

Application· this page
15/334,550
filed 26 Oct 2016
Publication
Not published
not published
Patent
US 10,243,711
granted 26 Mar 2019

Life of the application

10 dated events
⤢ drag to zoom201420162018202020222024202620282030203220342036ProsecutionOwnershipTerm & fees
ProsecutionOwnershipTerm & feeshover for detail · click to open

Abstract

A first communication device receives, from a second communication device, a synchronization frame having an allocation indicator that indicates a non-overlapping allocation of pilot tones. The first communication device generates a first data frame that comprises a plurality of orthogonal frequency division multiplexing (OFDM) symbols of a non-legacy training field portion, the plurality of OFDM symbols including only pilot tones corresponding to the non-overlapping allocation of pilot tones. The first communication device transmits, in response to the synchronization frame and via a multiple input, multiple output (MIMO) communication channel, the first data frame to the second communication device simultaneously with a transmission of a second data frame by a third communication device via the MIMO communication channel, wherein corresponding OFDM symbols of respective non-legacy training field portions of the first data frame and the second data frame include non-overlapping pilot tones according to the non-overlapping allocation.

Description

19 parts
›CROSS-REFERENCES TO RELATED APPLICATIONS

This disclosure is a continuation of U.S. patent application Ser. No. 14/667,448, entitled “Carrier Frequency Offset Estimation,” and filed on Mar. 24, 2015, which claims the benefit of U.S. Provisional Patent Application No. 61/969,564, entitled “Carrier Frequency Offset Estimation and Compensation for Uplink Multi-User MIMO in WLAN” and filed on Mar. 24, 2014, U.S. Provisional Patent Application No. 62/030,512, entitled “Carrier Frequency Offset Estimation and Compensation for Uplink Multi-User MIMO in WLAN” and filed on Jul. 29, 2014, and U.S. Provisional Patent Application No. 62/054,686, entitled “Carrier Frequency Offset Estimation and Compensation for Uplink Multi-User MIMO in WLAN” and filed on Sep. 24, 2014, the disclosures of all of which are incorporated herein by reference in their entireties.

›FIELD OF THE DISCLOSURE

The present disclosure relates generally to communication networks and, more particularly, to wireless local area networks that utilize multiple input, multiple output (MIMO) techniques.

›BACKGROUND

When operating in an infrastructure mode, wireless local area networks (WLANs) typically include an access point (AP) and one or more client stations. WLANs have evolved rapidly over the past decade. Development of WLAN standards such as the Institute for Electrical and Electronics Engineers (IEEE) 802.11a, 802.11b, 802.11g, and 802.11n Standards has improved single-user peak data throughput. For example, the IEEE 802.11b Standard specifies a single-user peak throughput of 11 megabits per second (Mbps), the IEEE 802.11a and 802.11g Standards specify a single-user peak throughput of 54 Mbps, the IEEE 802.11n Standard specifies a single-user peak throughput of 600 Mbps, and the IEEE 802.11ac Standard specifies a single-user peak throughput in the gigabits per second (Gbps) range. Future standards promise to provide even greater throughputs, such as throughputs in the tens of Gbps range.

WLANs typically operate in either a unicast mode or a multicast mode. In the unicast mode, an access point (AP) transmits information to one client station at a time. In the multicast mode, the same information is simultaneously transmitted to a group of client stations. In the uplink direction, a client station typically contends for access to the medium or transmits data to the AP within a time period specifically allocated to the client station.

›SUMMARY · 1 of 2

In an embodiment, a method for use in a communication network includes receiving, at a first communication device, a plurality of data frames via a multiple input, multiple output (MIMO) communication channel. The plurality of data frames are transmitted simultaneously from respective ones of a plurality of second communication devices. The method also includes estimating, by the first communication device, a common carrier frequency offset (CFO) that is common to each of the plurality of data frames based on a legacy portion of a physical layer (PHY) preamble of each of the plurality of data frames. The method includes compensating, by the first communication device, each of the plurality of data frames based on the common CFO. The method includes estimating, by the first communication device, respective device-specific CFOs for channel estimation of the MIMO communication channel based on pilot tones of respective non-legacy training field portions of the plurality of data frames. The pilot tones have a non-overlapping allocation to the plurality of second communication devices and each device-specific CFO is specific to the corresponding second communication device of the plurality of second communication devices. The method also includes compensating, by the first communication device, the respective non-legacy training field portions based on the corresponding device-specific CFO.

In another embodiment, a method for transmitting a data frame in a communication network includes receiving, at a first communication device and from a second communication device, a synchronization frame having an allocation indicator that indicates a non-overlapping allocation of pilot tones. The method also includes generating, by the first communication device, a first data frame that comprises a plurality of OFDM symbols of a non-legacy training field portion, the plurality of OFDM symbols including only pilot tones corresponding to the non-overlapping allocation of pilot tones. The method includes transmitting, by the first communication device in response to the synchronization frame and via a MIMO communication channel, the first data frame to the second communication device simultaneously with a transmission of a second data frame by a third communication device via the MIMO communication channel. Corresponding OFDM symbols of respective non-legacy training field portions of the first data frame and the second data frame include non-overlapping pilot tones according to the non-overlapping allocation.

In an embodiment, a method for use in a communication network includes receiving, at a first communication device, a plurality of data frames via a multiple input, multiple output (MIMO) communication channel. The plurality of data frames are transmitted simultaneously from respective ones of a plurality of second communication devices, including receiving a respective non-legacy training field portion of a PHY preamble for each of the plurality of data frames. Each non-legacy training field portion has i) a reference field, ii) a short training field, and iii) at least one long training field. The method also includes estimating, by the first communication device, a common CFO that is common to each of the plurality of data frames based on a legacy portion of the PHY preamble of each of the plurality of data frames. The method includes compensating, by the first communication device, each of the plurality of data frames based on the common CFO. The method includes estimating, by the first communication device, respective device-specific CFOs for channel estimation of the MIMO communication channel based on pilot tones of the corresponding reference field after compensating each of the plurality of data frames. The pilot tones have a non-overlapping allocation to the plurality of second communication devices and each device-specific CFO is specific to the corresponding second communication device of the plurality of second communication devices. The method also includes compensating, by the first communication device, the plurality of data frames based on the corresponding device-specific CFO.

In another embodiment, a method for transmitting a data frame in a communication network includes receiving, at a first communication device and from a second communication device, a synchronization frame. The method also includes generating, by the first communication device, a first data frame. A non-legacy training field portion of a PHY preamble for the first data frame includes i) a reference field, ii) a short training field, and iii) at least one long training field. The method also includes transmitting, by the first communication device and via a MIMO communication channel in response to the synchronization frame, the first data frame to the second communication device simultaneously with a transmission of a second data frame by a third communication device via the MIMO communication channel.

In an embodiment, a method for use in a communication network includes receiving, at a first communication device, a plurality of data frames via a MIMO communication channel. The plurality of data frames are transmitted simultaneously from respective ones of a plurality of second communication devices. The method includes estimating, by the first communication device, a common CFO that is common to each of the plurality of data frames based on a legacy portion of the PHY preamble of each of the plurality of data frames. The method also includes compensating, by the first communication device, each of the plurality of data frames based on the common CFO. The method includes estimating, by the first communication device, respective first device-specific CFOs for channel estimation of the MIMO communication channel based on pilot tones of respective non-legacy training field portions of the plurality of data frames after compensating each of the plurality of data frames. The pilot tones have a non-overlapping allocation to the plurality of second communication devices and each first device-specific CFO is specific to the corresponding second communication device of the plurality of second communication devices. The method includes compensating, by the first communication device, the plurality of data frames based on the corresponding device-specific CFO. Each of the plurality of data frames includes a respective data portion having a plurality of OFDM symbols. The method also includes estimating, by the first communication device, respective second device-specific CFOs for channel estimation of the MIMO communication channel based on a current OFDM symbol of the plurality of OFDM symbols and the first device-specific CFO. The method also includes compensating, by the first communication device, the plurality of data frames based on the corresponding second device-specific CFO.

›SUMMARY · 2 of 2

In another embodiment, a method for transmitting a data frame in a communication network includes receiving, at a first communication device and from a second communication device, a synchronization frame having an allocation indicator that indicates a non-overlapping allocation of pilot tones. The method also includes generating, by the first communication device, a first data frame that comprises a plurality of OFDM symbols of a data portion. The plurality of OFDM symbols including only pilot tones corresponding to the non-overlapping allocation of pilot tones. The method also includes transmitting, by the first communication device in response to the synchronization frame and via a MIMO communication channel, the first data frame to the second communication device simultaneously with a transmission of a second data frame by a third communication device via the MIMO communication channel. Corresponding OFDM symbols of respective non-legacy training field portions of the first data frame and the second data frame include non-overlapping pilot tones according to the non-overlapping allocation.

›BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an example wireless local area network (WLAN), according to an embodiment;

FIG. 2 is a diagram of an example simultaneous transmission in a WLAN, according to an embodiment;

FIG. 3 is a diagram of a data frame format, according to an embodiment;

FIG. 4A is a diagram of a non-legacy training field portion of a physical layer (PHY) preamble that includes several long training fields for simultaneous transmission to an access point (AP), according to an embodiment;

FIG. 4B is a diagram of a non-legacy training field portion of a PHY preamble that includes several long training fields for staggered transmission to an AP, according to an embodiment;

FIG. 4C is a diagram of a non-legacy training field portion of a PHY preamble that includes several long training fields for mixed simultaneous/staggered transmission to an AP, according to an embodiment;

FIG. 5 is a diagram of a non-legacy training field portion of a PHY preamble that includes several long training fields for simultaneous transmission to an AP, according to an embodiment;

FIG. 6A is a diagram of a block allocation of subcarriers for several long training fields, according to an embodiment;

FIG. 6B is a diagram of an interleaved allocation of subcarriers for several long training fields, according to an embodiment;

FIG. 7 is a diagram of a portion of a data frame that includes a legacy portion for carrier phase estimation, according to an embodiment;

FIG. 8A is a diagram of a data frame that includes a carrier frequency offset training field, according to an embodiment;

FIG. 8B is a diagram of a data frame that includes a carrier frequency offset training field, according to an embodiment;

FIG. 9 is a diagram of an orthogonal frequency division multiplex (OFDM) symbol with an interleaved allocation to a plurality of communication devices, according to an embodiment;

FIG. 10A is a diagram illustrating an example method for estimating a common phase error for a communication device with nulling of signals for other communication devices, according to an embodiment;

FIG. 10B is a diagram illustrating an example method for estimating a common phase error for a communication device with phase shifting, according to an embodiment;

FIG. 10C is a diagram illustrating an example method for estimating a common phase error for a communication device with conjugate correlation, according to an embodiment;

FIG. 11A is a diagram illustrating OFDM symbols with an alternating allocation of tones, according to an embodiment;

FIG. 11B is a diagram illustrating OFDM symbols with a block allocation of tones, according to another embodiment;

FIG. 12 is a flow diagram of an example method for compensating for a carrier frequency offset, according to an embodiment;

FIG. 13 is a flow diagram of an example method for transmitting a data frame, according to an embodiment;

FIG. 14 is a flow diagram of an example method for compensating for a carrier frequency offset, according to an embodiment;

FIG. 15 is a flow diagram of an example method for transmitting a data frame, according to an embodiment;

FIG. 16 is a flow diagram of an example method for compensating for a carrier frequency offset, according to an embodiment; and

FIG. 17 is a flow diagram of an example method for transmitting a data frame, according to an embodiment.

›DETAILED DESCRIPTION · 1 of 13

In embodiments described below, a first communication device, such as an access point (AP) of a wireless local area network (WLAN), simultaneously receives multiple independent data frames from multiple second communication devices, such as client stations. As described herein, the multiple independent data frames are referred to collectively as a concurrent or simultaneous uplink transmission (SUT). When processing multiple data frames, each data frame may be transmitted with a different carrier frequency offset (CFO), timing offset, channel fading, or other radio characteristics that are specific to the corresponding second communication device. The first communication device uses a PHY preamble of the data frames to estimate a common CFO, i.e., a CFO that is common to each of the received data frames, and compensates each received data frame with the common CFO, in an embodiment. In some embodiments, the first communication device uses the PHY preamble to estimate a device-specific CFO, i.e., a CFO that is specific to the corresponding second communication device, and compensates the corresponding received data frame with the device-specific CFO. In an embodiment, the first communication device uses the PHY preamble, a data portion of a data frame, or both the PHY preamble and the data portion to estimate the device-specific CFO.

FIG. 1 is a block diagram of an example wireless local area network (WLAN) 10 , according to an embodiment. An AP 14 includes a host processor 15 coupled to a network interface 16 . The network interface 16 includes a medium access control (MAC) processing unit 18 and a physical layer (PHY) processing unit 20 . The PHY processing unit 20 includes a plurality of transceivers 21 , and the transceivers are coupled to a plurality of antennas 24 . Although three transceivers 21 and three antennas 24 are illustrated in FIG. 1 , the AP 14 can include different numbers (e.g., 1, 2, 4, 5, etc.) of transceivers 21 and antennas 24 in other embodiments.

The WLAN 10 includes a plurality of client stations 25 . Although three client stations 25 are illustrated in FIG. 1 , the WLAN 10 can include different numbers (e.g., 1, 2, 4, 5, 6, etc.) of client stations 25 in various scenarios and embodiments. In some embodiments, the AP 14 is configured to receive respective data streams or data frames that are transmitted simultaneously by two or more client stations 25 . For example, in an embodiment, the AP 14 is configured to receive a simultaneous uplink transmission. In other embodiments, the AP 14 is configured, additionally or alternatively, to transmit independent data frames to the two or more of the client stations 25 simultaneously. In an embodiment, the two or more client stations 25 that transmit simultaneously are members of a client uplink group. In one embodiment, for example, the network interface 16 is configured to receive independent data streams transmitted simultaneously by multiple client stations 25 via different spatial streams using techniques described in U.S. Pat. No. 8,571,010, entitled “Simultaneous Uplink Transmission in a Wireless Network,” filed on Jul. 20, 2010, which is hereby incorporated by reference.

A client station 25 - 1 includes a host processor 26 coupled to a network interface 27 . The network interface 27 includes a MAC processing unit 28 and a PHY processing unit 29 . The PHY processing unit 29 includes a plurality of transceivers 30 , and the transceivers are coupled to a plurality of antennas 34 . Although three transceivers 30 and three antennas 34 are illustrated in FIG. 1 , the client station 25 - 1 can include different numbers (e.g., 1, 2, 4, 5, etc.) of transceivers 30 and antennas 34 in other embodiments.

In an embodiment, one or more of the client stations 25 - 2 and 25 - 3 has a structure the same as or similar to the client station 25 - 1 . In these embodiments, the client stations 25 structured like the client station 25 - 1 have the same or a different number of transceivers and antennas. For example, the client station 25 - 2 has only two transceivers and two antennas (not shown), according to an embodiment. In some embodiments, two or more of the client stations 25 are configured to transmit corresponding data streams to the AP 14 such that the AP 14 receives the data streams simultaneously. In other embodiments, additionally or alternatively, two or more of the client stations 25 are configured to receive respective data streams that are transmitted simultaneously by the AP 14 . As another example, in another embodiment, the network interface 27 , additionally or alternatively, is configured to transmit a data stream to the AP 14 among a plurality of independent data streams transmitted simultaneously by multiple client stations 25 via different spatial streams.

In an embodiment, the AP 14 and a plurality of the client stations 25 communicate data over a multiple input, multiple output (MIMO) communication channel defined, at the one end, by the antennas 24 of the AP 14 and, at the other end, by the antennas of the client stations 25 . The client stations 25 as well as similar stations capable of transmitting independent uplink data to the AP 14 , or to a similar network device, are referred to herein as “SUT-enabled stations” or “SUT-capable stations.” In an embodiment, each of the client stations 25 - 1 , 25 - 2 , and 25 - 3 is configured to transmit multiple spatial streams via multiple transmit antennas. When space-time coding is employed, the multiple spatial streams are sometimes referred to by those of ordinary skill in the art as space-time streams. If the number of space-time streams is less than the number of transmit chains, spatial mapping and/or beamforming is employed, in some embodiments. Before receiving a simultaneous uplink transmission having a plurality of data frames, the AP requests the data frames from a group of stations, in some embodiments. In an embodiment, the AP defines an uplink group and notifies client stations in the uplink group about the uplink group allocation and indicates suitable uplink parameters by transmitting a synchronization frame to the client stations. In some embodiments, the AP transmits a synchronization frame that includes an allocation indicator that indicates a particular allocation of pilot tones for one or more OFDM symbols of the simultaneous uplink transmission.

›DETAILED DESCRIPTION · 2 of 13

FIG. 2 is a diagram of example simultaneous uplink transmissions in a WLAN 200 , according to an embodiment. The WLAN 200 includes an access point 210 that receives a plurality of data frames transmitted simultaneously from respective ones of a plurality of second communication devices via a multiple-input, multiple output (MIMO) communication channel. In the embodiment shown in FIG. 2 , the plurality of second communication devices includes a first client station 220 (CLIENT- 1 ) and a second client station 230 (CLIENT- 2 ). While only two client stations are illustrated for clarity, the plurality of second communication devices can include additional client stations, in other embodiments and/or scenarios.

In the embodiment shown in FIG. 2 , the plurality of data frames includes a first data frame 222 , transmitted by the first client station 220 using a first spatial stream of the MIMO communication channel, and a second data frame 232 , transmitted by the second client station 230 using a second spatial stream of the MIMO communication channel. Although the first client station 220 and second client station 230 transmit the corresponding data frames simultaneously, each data frame may be transmitted with a different device carrier frequency offset (CFO), timing offset, channel fading, or other radio characteristics that are specific to the corresponding client station (i.e., due to variations in the transceiver 30 and/or antenna 34 ) or spatial stream path. In various embodiments and/or scenarios, the access point 210 estimates a common carrier frequency offset (CFO) that is common to each of the plurality of data frames based on a legacy portion of a physical layer (PHY) preamble of the plurality of data frames. In an embodiment, the access point 210 compensates each of the plurality of data frames based on the estimated common CFO.

Each of the data frames 222 and 232 includes a respective plurality of orthogonal frequency division multiplexing (OFDM) symbols. The OFDM symbols include a plurality of subcarriers, such as data tones and/or pilot tones, with corresponding carrier frequencies. As an example, in an embodiment, the data frame 222 and data frame 232 each includes a pilot tone with a reference carrier frequency F C at which a corresponding OFDM constellation should be transmitted. In this example, the first client station 220 transmits the pilot tone at a carrier frequency F CLIENT-1 , which is equal to the reference carrier frequency F C offset by a frequency δF 1 , and the second client station 230 transmits the pilot tone at a carrier frequency F CLIENT-2 , which is equal to the reference carrier frequency F C offset by a frequency δF 2 . In this example, the common CFO for both the first data frame 222 and the second data frame 232 is equal to (δF 1 +δF 2 )/2. A device-specific CFO (i.e., CFO specific to the transmitting device) is equal to a residual amount of the carrier frequency offset. For example, the first data frame 222 has a device-specific CFO equal to (δF 1 −δF 2 )/2 and the second data frame 232 has a device-specific CFO equal to (δF 2 −(F 1 )/2.

FIG. 3 is a diagram of a data frame format 300 that the AP 14 is configured to receive from the client stations 25 via OFDM modulation, according to an embodiment. In an embodiment, the client stations 25 are also configured to transmit the data frame 300 to the AP 14 . The data frame 300 conforms to the IEEE 802.11ac Standard and is designed for “Mixed field” situations. The data frame 300 occupies a 20 MHz bandwidth. In other embodiments or scenarios, a data frame similar to the data frame 300 occupies a different bandwidth, such as a 40 MHz, an 80 MHz, or a 160 MHz bandwidth.

The data frame 300 includes a physical layer (PHY) preamble 310 and a data portion 312 . The PHY preamble 310 includes a legacy portion 314 and a non-legacy portion 316 . The legacy portion 314 includes a legacy short training field (L-STF) 322 , generally used for packet detection, initial synchronization, and automatic gain control, etc., a legacy long training field (L-LTF) 324 , generally used for channel estimation and fine synchronization, and a legacy signal field (L-SIG) 326 , used to carry certain PHY parameters with the data frame 300 , such as modulation type and coding rate used to transmit the data frame, for example. The non-legacy portion 316 includes two first very high throughput signal fields (VHT-SIGAs) 328 including a first very high throughput signal field (VHT-SIGA 1 ) 328 - 1 and a second very high throughput signal field (VHT-SIGA 2 ) 328 - 2 , a very high throughput short training field (VHT-STF) 330 , M very high throughput long training fields (VHT-LTFs) 332 , where M is an integer, and a second very high throughput signal field (VHT-SIGB) 334 . In some embodiments and/or scenarios, the legacy portion 314 includes fields where each client station transmits a same signal, for example, the L-STF 322 , the L-LTF 324 , and the L-SIG 326 . In an embodiment, the legacy portion 314 also includes the VHT-SIGA 1 328 - 1 .

In various embodiments, the access point 210 estimates the common CFO using the legacy portion 314 of the PHY preamble 310 . In an embodiment, the access point 210 performs a “coarse” common CFO estimation using a phase of autocorrelation of the L-STF 322 where the phase is caused by the common CFO across a period for the autocorrelation. In some embodiments, the access point 210 determines the autocorrelation output between a first time when carrier sensing (CS) is triggered and a second time when symbol timing (ST) is completed. In an embodiment, the access point 210 performs a common CFO estimate by comparing a phase difference between two adjacent OFDM symbols of the L-LTF 324 in the time domain. In an embodiment, the access point 210 performs a common CFO estimate by estimating a phase difference between pilot tones of the MIMO communication channel for i) the L-LTF- 324 , and ii) one of the L-SIG 326 , the VHT-SIGA 1 328 - 1 , or the VHT-SIGA 2 328 - 2 . In this embodiment, the phase difference is caused by the common CFO across 4 microseconds (using L-SIG 326 ), 8 microseconds (using VHT-SIGA 1 328 - 1 ), or 12 microseconds (using VHT-SIGA 2 328 - 2 , when available). In some embodiments, the access point 210 estimates the common CFO and compensates a received signal for the data frame in the time domain for each field of the legacy portion 314 described above (e.g., L-STF 322 , L-LTF 324 , L-SIG 326 , VHT-SIGA 1 328 - 1 , VHT-SIGA 2 328 - 2 ) such that the residual CFO is successively reduced during processing.

›DETAILED DESCRIPTION · 3 of 13

After the access point 210 compensates the received signal for the data frame using the legacy portion 314 , each data frame may have a residual CFO, i.e., a device-specific CFO for the corresponding client station, which affects MIMO channel estimation accuracy. In various embodiments, the access point 210 estimates the device-specific CFO using a device-specific common phase error (CPE) to adjust the received signal for the corresponding data frame to improve the MIMO channel estimation accuracy. In some embodiments and/or scenarios, the access point 210 uses a first scheme for performing channel estimation by determining the device-specific CPE based on pilot tones within a non-legacy training field portion 340 of the data frame 300 . In an embodiment, the non-legacy training field portion 340 includes the VHT-STF 330 and the VHT-LTFs 332 . In other embodiments, the access point 210 uses a second scheme for performing the channel estimation by determining the device-specific CPE based on a reference OFDM symbol, such as a reference non-legacy long training field. In some embodiments, the access point 210 uses a third scheme for pilot based channel estimation using a pilot tone allocation that is compatible with the Institute for Electrical and Electronics Engineers (IEEE) 802.11n standard.

FIG. 4A is a diagram of a non-legacy training field portion 440 of a PHY preamble 400 that includes several long training fields for simultaneous transmission to an access point (AP), according to an embodiment. The non-legacy training field portion 440 includes respective sequences 402 - 1 , 402 - 2 , . . . 402 -U of VHT-LTFs within data frames transmitted by an integer number U of “users” or SUT-capable stations (STA 1 , STA 2 , . . . STA U), in an embodiment. Each of the stations 1, 2, . . . U transmits a same number (N STS _ SUT ) of VHT-LTFs to jointly train a large MIMO communication channel, as described in the '010 patent incorporated by reference above. As one example, N STS _ SUT can be eight, but in general, N STS _ SUT is equal to a total number of space-time streams of the MIMO communication channel between the U SUT-capable stations and an AP or other suitable communication device.

In some embodiments, the access point 210 performs a joint channel estimation including determining the device-specific CPE (i.e., a device-specific CFO) based on pilot tones within the non-legacy training field portion 440 . In an embodiment, the access point 210 allocates pilot tones for transmission of the long training fields 332 to the client stations 25 such that each client station 25 transmits the long training fields 332 using only the corresponding pilot tones.

In an embodiment, the access point 210 allocates a pilot tone m of each OFDM symbol during the VHT-LTF to user u (i.e., a client station of the U client stations) as:

u=m mod U,m= 0,1,2, . . . N pilot −1   (Equ. 1)

where u is an integer index for the client station, m is an integer index for pilot tones for transmission of the long training fields 332 , and N pilot is an integer number of the pilot tones for transmission of the long training fields 332 . In some embodiments and/or scenarios, the access point 210 selects the user index u based on a signal to noise ratio (SNR) or modulation and coding scheme (MCS). For example, in an embodiment, the users are indexed such that a lower SNR or higher MCS is ranked first, which allows for additional pilot tones as compared to later ranked users if the number of client stations U is less than the number of pilots N pilot . In an embodiment, a client station is allocated multiple antennas or space-time streams and the client station uses the single stream pilot tones such that each transmission antenna of the client station uses a same scaling of one.

In various embodiments, such as joint channel estimation, the access point 210 estimates the device-specific CPE per OFDM symbol n of user u as:

∅ ^ u , n = ∠ ⁡ ( ∑ m ∈ User ⁢ ⁢ U ⁢ r m H ⁡ ( n ) · r m ⁡ ( n + 1 ) · P ( u ) ⁡ ( 1 , n ) · P u ⁡ ( 1 , n + 1 ) ) , n = 1 ⁢ … ⁢ ⁢ N VHTLTF - 1 ( Equ . ⁢ 2 )

where m is the index of pilot tones assigned to user u and r m (n) is a received signal on pilot tone m of the n th VHT-LTF OFDM symbol. In some embodiments, the access point 210 uses the device-specific CPE for one symbol as an output CPE when performing the compensation. In other embodiments, the access point 210 determines an average of the device-specific CPEs across multiple OFDM symbols as the output CPE. In an embodiment, the output CPE for user u is a linear average over all the VHT-LTFs:

In another embodiment, the access point 210 estimates the output CPE as:

After determination of the output CPE, the access point 210 determines a channel estimate using the output CPE to compensate for the carrier frequency offset, in various embodiments. The access point 210 removes or “cancels out” the corresponding training sequence (e.g., a VHT-LTF training sequence) from a received signal r k (n) for each OFDM symbol to obtain a received signal without the long training sequence y k :

y k ( n )= r k ( n )* VHTLTF k    (Equ. 5)

where k is an integer index of non-zero subcarriers (i.e., data tones and pilot tones), n=1 . . . N VHTLTF (the number of OFDM symbols for the training sequence).

In an embodiment, the access point 210 estimates a channel matrix (e.g., performs channel estimation) for the user u on subcarrier k, using the device-specific CPE {circumflex over (ø)} u as:

Ĥ u,k =[ y k (1) y k (2) . . . y k ( N VHTLTF )]· {tilde over (P)} u −1    (Equ. 6)

where {tilde over (P)} is the equivalent P matrix with compensation for the device-specific CPE taken into account. The CPO is equal to {circumflex over (ø)} u if the i th antenna belongs to the user u and thus:

P ~ = [ P 11 P 12 ⁢ e j ⁢ ⁢ ∅ 1 … P 1 ⁢ N ⁢ e j ⁡ ( N - 1 ) ⁢ ∅ 1 P 21 P 22 ⁢ e j ⁢ ⁢ ∅ 2 … P 2 ⁢ N ⁢ e j ⁡ ( N - 1 ) ⁢ ∅ 2 ⋮ ⋮ … ⋮ P N ⁢ ⁢ 1 P N ⁢ ⁢ 2 ⁢ e j ⁢ ⁢ ∅ N … P NN ⁢ e j ⁡ ( N - 1 ) ⁢ ∅ N ] ( Equ . ⁢ 7 )

›DETAILED DESCRIPTION · 4 of 13

where, for clarity, N is the number N VHTLTF of OFDM symbols of the training field. The access point 210 uses a matrix inversion method to determine the inverse of {tilde over (P)}, in various embodiments. In some scenarios, where the inter-user CPE is relatively small, such that e j({circumflex over (ø)} u −{circumflex over (ø)} v ) ≈1 for user u and user v, the channel estimation equation can be simplified and evaluated as:

Ĥ u,k =[ y k (1) y k (2) e −j{circumflex over (ø)} u . . . y k ( N VHTLTF ) e −j{circumflex over (ø)} u (N VHTLTF −1) ]· P H (u)    (Equ. 8)

where the channel estimate for pilot subcarriers of the user u are taken from the first column of the matrix Ĥ u,k . In some embodiments where the client stations do not transmit on all pilot tones (e.g., tone allocation according to Equ. 1), the client station boosts a transmit power on the corresponding allocated pilot tones, while still meeting a spectrum mask. In one such embodiment, the channel estimation benefits from a higher SNR on the pilot tone and thus an improved CPE estimation.

While the above description describes a joint approach, in another embodiment, client stations use a staggered approach for transmission for the access point 210 to estimate the MIMO communication channel. In other words, rather than training the MIMO communication channel simultaneously, two or more client stations sequentially transmit training data so that the AP can estimate respective space-time streams. Of course, once the MIMO communication channel is properly estimated, an AP can simultaneously receive station-specific data. FIG. 4B is a diagram of a non-legacy training field portion 450 of a PHY preamble 410 , according to an embodiment. The non-legacy training field portion 450 illustrates an example staggered approach to estimate a MIMO communication channel, as described in the '010 patent incorporated by reference above. In an embodiment, the access point 210 performs a staggered channel estimation including determining the device-specific CPE (i.e., a device-specific CFO) based on pilot tones within a non-legacy training field portion 450 . Client stations 1, 2, . . . U transmit PHY preambles having portions 402 - 1 , 402 - 2 , . . . 402 -U. In an embodiment, client station 1 transmits a short training field VHT-STF followed by two long training fields, while client stations 2-U remain idle, i.e., do not transmit data to the AP. Next, client station 2 transmits a VHT-STF followed by a VHT-LTF, while all other client stations are idle. A cycle of staggered MIMO channel estimation for SUT communications completes when client station U transmits a VHT-STF followed by four VHT-LTFs while all other client stations are idle, according to the example scenario of FIG. 4B .

In the embodiment shown in FIG. 4B , each client station transmits on all pilot tones during a corresponding transmission period. If the client station has more than one antenna, a P matrix is used and the pilot tones use the repeated first row of the P matrix, as defined in the IEEE 802.11ac standard. In an embodiment, the access point 210 estimates the device-specific CPE for a client station u as:

∅ ^ u , n = ∠ ⁡ ( ∑ m ∈ Pilots ⁢ y m H ⁡ ( n ) · y m ⁡ ( n + 1 ) · P ( u ) ⁡ ( 1 , n ) · P u ⁡ ( 1 , n + 1 ) ) ( Equ . ⁢ 9 )

where n=1, 2, . . . N STS,u −1 (a number of space-time streams for the client station u). Similarly to the joint approach described above, in some embodiments, the access point 210 performs a linear average over the VHT-LTFs for the output CPE. In another embodiment, the access point 210 determines the output CPE as:

∅ ^ u = ∠ ( ∑ n = 1 ⁢ … ⁢ ⁢ N STS , u - 1 ⁢ ∑ m ∈ Pilots ⁢ y m H ⁡ ( n ) · y m ⁡ ( n + 1 ) · P ( u ) ⁡ ( 1 , n ) · P u ⁡ ( 1 , n + 1 ) ) ( Equ . ⁢ 10 )

After determination of the output CPE, the access point 210 determines the channel estimate as described above with respect to the joint approach.

FIG. 4C is a diagram of a non-legacy training field portion 460 of a PHY preamble 420 that includes several long training fields for mixed simultaneous/staggered transmission to an AP, according to an embodiment. Client stations 1, 2, and 3 in another embodiment utilize a mixed technique that includes both concurrent (i.e., joint) VHT-LTF transmissions and staggered VHT-LTF transmissions, as described in the '010 patent incorporated by reference above. Client stations 1 and 2 simultaneously transmit a group of four VHT-LTFs in frames 410 - 1 and 410 - 2 , respectively, while client station 3 is idle. Together, client stations 1 and 2 form a first group of client stations. Next, client station 3 transmits four VHT-LTFs in a frame 410 - 3 while client stations 1 and 2 are idle. In this example, client station 3 forms a second group of client stations. In an embodiment, an AP announces the grouping of client stations in a synchronization frame. Using the grouping information, client stations can calculate the corresponding idle periods. In an embodiment, each group of client stations sends a group-specific VHT-STF for automatic gain control adjustment. The VHT-LTFs of each user are sent group by group as in the '010 patent. Within each group, the pilot tones are allocated to each user in the group as in the joint approach described above, according to the user index as u=m mod U, m=0, 1, 2, . . . N pilot −1. The P matrix is used in each group and the pilot tones use the repeated first row of the P as defined in the IEEE 802.11ac standard. In this embodiment, the access point 210 estimates the device-specific CPE for user u as:

∅ ^ u , n = ∠ ( ∑ m ∈ User ⁢ ⁢ u ⁢ y m H ⁡ ( n ) · y m ⁡ ( n + 1 ) · P ( u ) ⁡ ( 1 , n ) · P u ⁡ ( 1 , n + 1 ) ) ( Equ . ⁢ 11 )

where n=1, 2, . . . N STS,u −1 (the number of space-time streams for user u). Similarly to the joint approach described above, in some embodiments, the access point 210 performs a linear average over the VHT-LTFs for the output CPE. In another embodiment, the access point 210 determines the output CPE as:

∅ ^ u = ∠ ( ∑ n = 1 ⁢ … ⁢ ⁢ N STS , u - 1 ⁢ ∑ m ∈ User ⁢ ⁢ u ⁢ y m H ⁡ ( n ) · y m ⁡ ( n + 1 ) · P ( u ) ⁡ ( 1 , n ) · P u ⁡ ( 1 , n + 1 ) ) ( Equ . ⁢ 12 )

›DETAILED DESCRIPTION · 5 of 13

After determination of the output CPE, the access point 210 determines the channel estimate as described above with respect to the joint approach.

FIG. 5 is a diagram of a non-legacy training field portion 540 of a PHY preamble 500 that includes several long training fields for concurrent transmission to an access point, according to an embodiment. In various embodiments, each data frame includes a VHT-STF field 501 that is compatible with the VHT-STF as defined in the IEEE 802.11ac standard, a reference field 502 , and a plurality of VHT-LTF fields 504 . In the embodiment shown in FIG. 5 , the reference field 502 is inserted by the corresponding client station between the VHT-STF 501 and the VHT-LTF fields 504 . In an embodiment, the reference field 502 is a duplicate of a first VHT-LTF field 504 - 1 of the plurality of VHT-LTF fields 504 .

In various embodiments and/or scenarios, CFO estimation is improved by using more subcarriers in the estimation. In the embodiment shown in FIG. 5 , non-zero subcarriers (i.e., data tones and pilot tones) are allocated in a non-overlapping manner to different transmit antennas for channel estimation using one of a block allocation or an interleaved allocation. As described above, the client station boosts a transmit power on the corresponding allocated tones, while still meeting a spectrum mask for the non-legacy training field portion 540 , in some embodiments. In the embodiment shown in FIG. 5 , a P matrix is not used for the VHT-LTF transmission.

FIG. 6A is a diagram of a block allocation 600 of subcarriers for several long training fields 610 , according to an embodiment. Using the block allocation 600 of tones, a transmit antenna i is allocated a continuous trunk or block of subcarriers for the n th VHT-LTF according to

{ N subcarrier N VHTLTF ⁡ [ ( ( i + n ) - 2 ) ⁢ mod ⁡ ( N VHTLTF + 1 ) ] + 1 } : N subcarrier N VHTLTF ⁡ [ ( ( i + n ) - 2 ) ⁢ mod ⁡ ( N VHTLTF + 1 ) + 1 ] ( Equ . ⁢ 13 )

In the embodiment shown in FIG. 6A , four transmit antennas TX- 1 , TX- 2 , TX- 3 , and TX- 4 have the block allocation 600 of sixteen subcarriers over an integer number N of long training fields 610 .

FIG. 6B is a diagram of an interleaved allocation 650 of subcarriers for several long training fields 660 , according to an embodiment. Using the interleaved allocation 650 shown in FIG. 6B , a transmit antenna i is allocated a scattered set of subcarriers for the n th VHT-LTF according to

{[(( i+n )−2)mod( N VHTLTF +1)]: N VHTLTF :[ N subcarrier −N VHTLTF +(( i+n )−2)mod( N VHTLTF +1)]}   (Equ. 14)

In the embodiment shown in FIG. 6B , four transmit antennas TX- 1 , TX- 2 , TX- 3 , and TX- 4 have the interleaved allocation 650 of sixteen subcarriers over an integer number N of long training fields 660 .

Using the block allocation 600 or interleaved allocation 650 , the access point 210 estimates the device-specific CPE based on OFDM symbols of the reference field 502 (VHT-LTF 0 ) and the first OFDM symbol of the VHT-LTF 1 field 504 - 1 , in various embodiments. In an embodiment, the access point 210 estimates the device-specific CPE for a client station u as:

∅ ^ u = ∠ ⁡ ( ∑ m ∈ User ⁢ ⁢ u ⁢ r m H ⁡ ( 0 ) · r m ⁡ ( 1 ) ) ( Equ . ⁢ 15 )

where r m (n) is the received signal array on subcarrier m of the n th VHT-LTF OFDM symbol.

After determination of the device-specific CPE in Equation 15, the access point 210 determines a channel estimate for the antenna i on subcarrier m, using the device-specific CPE according to:

Ĥ i,k =y k ( n ) e −j{circumflex over (Π)} i(u) (n−1)    (Equ. 16)

where index n is the VHT-LTF index that antenna i is transmitting on subcarrier k and if antenna i belongs to user u, then {circumflex over (ø)} u(i) ={circumflex over (ø)} u .

For the block allocation, the index n is determined according to:

For the interleaved allocation, the index n is determined according to:

n =( k+i )mod( N VHTLTF +1)   (Equ. 18)

In an embodiment, the access point 210 uses the third scheme for pilot based channel estimation using a pilot tone allocation that is compatible with the IEEE 802.11n standard. In this embodiment, each client station simultaneously transmits using same (i.e., overlapping) pilot tones using the pilot tone design defined in the IEEE 802.11n standard and the access point 210 performs a channel estimation without compensation for the device-specific CPE. Accordingly, the access point 210 relies upon the data portion 312 for estimation of the device-specific CPE and compensation.

In IEEE 802.11ac, and some standards in development such as IEEE 802.11ax (“High Efficiency Wi-Fi”), a duplicate 20 MHz transmission is used for a legacy portion of a PHY preamble. FIG. 7 is a diagram of a portion of a data frame 700 that includes a PHY preamble 710 and a data portion 712 according to a proposed implementation of IEEE 802.11ax. The PHY preamble 710 includes a legacy portion 714 and a non-legacy portion 716 . In the embodiment of FIG. 7 , the legacy portion 714 includes the L-STF 322 , the L-LTF 324 , the L-SIG 326 , and a high efficiency signal field (HE-SIGA) 728 . The non-legacy portion 316 includes a high efficiency short training field (HE-STF) 730 , M high efficiency long training fields (HE-LTFs) 732 , where M is an integer, and a second high efficiency signal field (HE-SIGB) 734 . A non-legacy training field portion 740 includes the HE-STF 730 and the HE-LTFs 732 , in an embodiment.

In various embodiments, the access point 210 determines the device-specific CPE using the legacy portion 714 of the data frame (e.g., from L-LTF to VHT-SIGA or HE-SIGA). In an embodiment, the access point 210 determines the device-specific CPE in both the legacy portion 714 and the non-legacy long training portion 316 as described above with respect to FIG. 3 for the first and second schemes to improve the estimation accuracy of the device-specific CPE. In another embodiment, the access point 210 determines the device-specific CPE in both the legacy portion 714 and the non-legacy long training portion 316 as described above with respect to FIG. 3 for the third scheme to improve the channel estimate.

›DETAILED DESCRIPTION · 6 of 13

In an embodiment, the access point 210 determines the common CFO estimate and the device-specific CPE using the legacy portion 310 or legacy portion 710 . For example, in an embodiment, the access point 210 compares a phase difference between two adjacent OFDM symbols of the L-LTF 324 in the time domain and determines the device-specific CPE between orthogonal pilot tones for i) the L-LTF- 324 , and ii) one of the L-SIG 326 , the VHT-SIGA 1 328 - 1 , the VHT-SIGA 2 328 - 2 , or corresponding OFDM symbols of an HE-SIGA field.

According to the IEEE 802.11ac standard, from L-LTF to HE-SIGA, each 20 MHz band has four pilot tones. Thus, for a signal of bandwidth BW, there is a total number of pilot tones N pilot =4*BW/20 MHz pilots in each OFDM symbol. In an embodiment, the access point 210 allocates pilot tones for transmission of the long training fields 732 from the client stations 25 such that each client station 25 transmits the long training fields 732 using only the corresponding pilot tones (i.e., a non-overlapping allocation). The pilot tone m of each OFDM symbol during the HE-LTF is assigned to user u as:

u=m mod U,m= 0,1,2, . . . N pilot −1   (Equ. 19)

where u is an integer index for a user (i.e., a client station) of the SUT-capable stations, m is an integer index for pilot tones for transmission of the long training fields 732 , and N pilot is an integer number of the pilot tones for OFDM symbols of the long training fields 732 . In some embodiments and/or scenarios, the access point 210 selects the user index u based on a signal to noise ratio (SNR) or modulation and coding scheme (MCS). For example, in an embodiment, the users are indexed such that a lower SNR or higher MCS is ranked first (i.e., with a lower index value), which allows for additional pilot tones as compared to some subsequently ranked users if the number of client stations U is less than the number of pilots N pilot . In an embodiment, a client station is allocated multiple antennas or space-time streams and the client station uses the single stream pilot tones such that each transmission antenna of the client station uses a same scaling of one.

In an embodiment, the access point 210 estimates the device-specific CPE per OFDM symbol n of user u as

∅ ^ u , n = ∠ ⁡ ( ∑ m ∈ User ⁢ ⁢ U ⁢ r m H ⁡ ( n ) · r m ⁡ ( n + 1 ) ) , n = 1 ⁢ ⁢ … ⁢ ⁢ N - 1 ( Equ . ⁢ 20 )

where m is the index of pilot tones allocated to user u, N is the total number of OFDM symbols included in the L-LTF, L-SIG, and HE-SIGA fields, and r m H (n) is the received signal on pilot tone m of the n th OFDM symbol after the L-STF.

In some embodiments, the access point 210 averages the output CPE for client station u over the OFDM symbols included in the L-LTF, L-SIG, and HE-SIGA fields. In one such embodiment, the output CPE is a linear average, determined as:

In another embodiment, the output CPE is determined as:

After determination of the output CPE, the access point 210 determines a channel estimate using the output CPE to compensate for the carrier frequency offset, in various embodiments. The access point 210 removes or “cancels out” the corresponding training sequence (e.g., an HE-LTF training sequence) from a received signal r k (n) for each OFDM symbol of the long training field to obtain a received signal without the long training sequence:

y k ( n )= r k ( n )*HELTF k ,k =data/pilot subcarriers, n= 1 . . . N HELTF    (Equ. 23)

where y k (n) is the received signal with the HE-LTF sequence “removed” and N HELTF is an integer number of OFDM symbols of the training field. The result is then multiplied by the inverse of the P matrix to determine the channel estimate.

In an embodiment, the access point 210 estimates a channel matrix for the user u on subcarrier k, using estimated the device-specific CPE {circumflex over (ø)} u as:

Ĥ u,k =[ y k (1) y k (2) . . . y k ( N HELTF )]· {tilde over (P)} u −1    (Equ. 24)

where {tilde over (P)} is the equivalent P matrix with the device-specific CPE taken into account. The CPO is equal to {circumflex over (ø)} u if the i th antenna belongs to the user u and thus:

P ~ = [ P 11 P 12 ⁢ e j ⁢ ⁢ ∅ 1 … P 1 ⁢ N ⁢ e j ⁡ ( N - 1 ) ⁢ ∅ 1 P 21 P 22 ⁢ e j ⁢ ⁢ ∅ 2 … P 2 ⁢ ⁢ N ⁢ e j ⁡ ( N - 1 ) ⁢ ∅ 2 ⋮ ⋮ … ⋮ P N ⁢ ⁢ 1 P N ⁢ ⁢ 2 ⁢ e j ⁢ ⁢ ∅ N … P N ⁢ ⁢ N ⁢ e j ⁡ ( N - 1 ) ⁢ ∅ N ] . ( Equ . ⁢ 25 )

where, for clarity, N is the integer number N HELTF of OFDM symbols of the training field.

The access point 210 uses a matrix inversion method to determine the inverse of {tilde over (P)}, in various embodiments. In some scenarios, where the inter-user CPE is relatively small, such that e j({circumflex over (ø)} u −{circumflex over (ø)} v ) ≈1 for user u and v, the channel estimation equation can be simplified and evaluated as:

Ĥ u,k =[ y k (1) y k (2) e −j{circumflex over (ø)} u . . . y k ( N HELTF ) e −j{circumflex over (ø)} u (N HELTF −1) ]· P (u) H    (Equ. 26)

where the channel estimate for pilot subcarriers of the user u are taken from the first column of the matrix Ĥ u,k . In some embodiments where the client stations do not transmit on all pilot tones in the legacy preamble, the client station boosts a transmit power on the corresponding allocated pilot tones, while still meeting a spectrum mask. In one such embodiment, the channel estimation benefits from a higher SNR on the pilot tone and thus an improved CPE estimation.

FIG. 8A is a diagram of another data frame 800 that includes a reference field for concurrent transmission with other data frames to an access point, according to an embodiment. The data frame 800 includes a PHY preamble 810 and a data portion 812 . The PHY preamble 810 includes a legacy portion 814 according to a proposed implementation of IEEE 802.11ax and a non-legacy portion 816 . In the embodiment of FIG. 8 , the legacy portion 814 includes the L-STF 322 , the L-LTF 324 , the L-SIG 326 , and a high efficiency signal field (HE-SIGA) 728 . The non-legacy portion 816 includes a high efficiency short training field (HE-STF) 730 , a plurality of M high efficiency long training fields (HE-LTFs) 732 , where M is an integer, and a second high efficiency signal field (HE-SIGB) 734 . In the embodiment shown in FIG. 8A , the reference field is a CFO training field 829 which is inserted by the corresponding client station between the HE-SIGA 728 and the HE-STF field 730 , similar to an additional HE-SIGA field. In some embodiments, the HE-SIGA field is not used and thus omitted by the client stations. In one such embodiment, the CFO training field 829 is inserted in place of the omitted HE-SIGA field and thus the CFO training field 829 is transmitted using repeated 20 MHz bands over the entire bandwidth of the MIMO communication channel. In an embodiment, the data frame 800 includes a non-legacy training field portion 840 that includes the CFO training field 829 , the HE-STF 730 , and the HE-LTFs 732 .

›DETAILED DESCRIPTION · 7 of 13

FIG. 8B is a diagram of a data frame 850 , analogous to the data frame 800 , which includes the CFO training field 829 , according to another embodiment. In the embodiment shown in FIG. 8B , the CFO training field 829 is inserted between the HE-STF field 730 and the first HE-LTF field 732 - 1 . In an embodiment, the data frame 850 includes a non-legacy training field portion 890 that includes the CFO training field 829 , the HE-STF 730 , and the HE-LTFs 732 . In some embodiments, the CFO training field 829 is transmitted using a tone spacing that is compatible with the IEEE 802.11ac standard. In other embodiments, the CFO training field is transmitted using ¼ tone spacing for HE. In an embodiment, the client station omits the HE-SIGA field 728 .

In the embodiments shown in FIG. 8A and FIG. 8B , the CFO training field 829 is a dedicated OFDM symbol used for training and estimating the device-specific CFO. Although only a single OFDM symbol is shown in FIG. 8A and FIG. 8B , the CFO training field 829 includes additional OFDM symbols (e.g., 2, 3, etc.) in other embodiments and/or scenarios. In some embodiments, different client stations transmit in orthogonal tones which are allocated by the access point 210 . In one such embodiment, the tones are equally allocated to different client stations across the bandwidth of the MIMO communication channel.

In some embodiments, the CFO training field 829 includes only a single OFDM symbol that is periodic within itself, similarly to a short training field, with an integer number of periods N p . In a first scheme using a single OFDM symbol, the access point 210 allocates an integer number M=N/N p non-zero tones to the U different users. In the first scheme, a tone index is allocated to provide an interleaved allocation for each user u as:

u:m mod N p ,m= 0,1,2, . . . N− 1.   (Equ. 27)

FIG. 9 is a diagram of a periodic OFDM symbol 900 for the CFO training field 829 with an interleaved tone allocation to a plurality of communication devices, according to an embodiment. In the embodiment shown in FIG. 9 , a first station STA 1 is allocated tones 910 - 0 , 910 - 4 , etc. and a second station STA 2 is allocated tones 910 - 2 , 910 - 6 , . . . 910 -N−1 where N is the number of non-zero tones and NP is equal to four. Each client station populates a different training sequence to its corresponding allocated tones, in an embodiment. In another embodiment, two or more client stations share a training sequence. In various embodiments, the training sequence is selected to have a suitable peak to average power ratio (PAPR).

In a second scheme using a single OFDM symbol, the access point 210 allocates different time domain training sequences to the client stations. In this second scheme, the access point 210 selects the number of periods N p to be greater than the number of client stations and each client station uses a time domain sequence having a length M=N/N p . In various embodiments, the training sequences are selected to have a suitably large auto-correlation and small cross correlation. In an embodiment, each client station uses a different time domain training sequence. In another embodiment, two or more client stations share a time domain training sequence, with subsequent client stations using a time domain shift T shift as

FIG. 10A is a diagram illustrating an example method 1000 for estimating a common phase error for a communication device with nulling of signals for other communication devices, according to an embodiment. In various embodiments, the access point 210 performs the method 1000 for estimating the device-specific CPE when using the single OFDM symbol 900 and the first scheme for tone allocation, as described above with reference to FIG. 9 . In the method 1000 , the access point 210 receives and performs an N-point fast Fourier transform (FFT) on a received periodic OFDM symbol 1002 to obtain a frequency domain signal 1004 , in an embodiment. In an embodiment, N is an integer number of non-zero tones for the OFDM symbol 900 . In the embodiment of FIG. 9 , the periodic OFDM symbol 1002 includes frequency domain signals 1004 for a first client station STA 1 and for a second client station STA 2 , where a number of periods NP is two and a number of non-zero tones is four. For each client station, the access point 210 nulls the non-zero tones from the frequency domain signals 1004 for the other client stations, in an embodiment. In the embodiment shown in FIG. 10A , the client station 210 i) nulls the non-zero tones corresponding to client station STA 2 to obtain a nulled frequency domain signal 1006 for the first client station STA 1 , and ii) nulls the non-zero tones corresponding to client station STA 1 to obtain a nulled frequency domain signal 1008 for the second client station STA 2 . The access point 210 performs an N-point inverse fast Fourier transform (IFFT) to obtain a time domain signal for each client station u as

[ y 1 u ,y 2 u , . . . ,y NP u ]   (Equ. 29)

In the embodiment shown in FIG. 10A , the access point 210 i) performs an N-point IFFT on the nulled frequency domain signal 1006 to obtain a time domain signal 1010 corresponding to the client station STA 1 , and ii) performs an N-point IFFT on the nulled frequency domain signal 1008 to obtain a time domain signal 1012 corresponding to the client station STA 2 . In an embodiment, the access point 210 determines the device-specific CPE for each client station across each two periods through conjugate correlation as:

In some embodiments, the output CPE for the user u is averaged over the periods. In an embodiment, the access point 210 determines a linear average of the output CPE as:

In another embodiment, the access point 210 determines the output CPE as an averaged correlation:

FIG. 10B is a diagram illustrating an example method 1050 for estimating a common phase error for a communication device with phase shifting, according to an embodiment. In various embodiments, the access point 210 performs the method 1050 for estimating the device-specific CPE when using the single OFDM symbol 900 and the first scheme for tone allocation, as described above with reference to FIG. 9 . The method 1050 includes an M-point FFT and phase shifting, where M is an integer equal to a number of non-zero tones for the OFDM symbols divided by the number of periods N P . In an embodiment, the access point 210 determines a frequency domain tone value y m,n u for each client station in each of the periods N P . For example, in an embodiment, the access point 210 determines, for period n and client station u, a received value on tone m as:

›DETAILED DESCRIPTION · 8 of 13

y m , n u = [ ∑ t = 1 M ⁢ ( r n ⁡ ( t ) · e - j ⁢ ⁢ 2 ⁢ π M ⁢ tl ) · W M k , t ] , m = kN p + l ⁡ ( m ∈ user ⁢ ⁢ u ) , n = 1 , … ⁢ ⁢ N p - 1 ( Equ . ⁢ 33 )

which represents a scaled M-point FFT on a phase shifted version of a received signal r n (t), where W M k,t represents the phase shift, k is equal to an integer floor of m divided by N P , and l is equal to m mod N P such that m is a multiple of N P and a remainder 1 . As shown in FIG. 10B , the access point 210 performs the M-point FFT on i) a received signal 1052 (R 1 ) and obtains a frequency domain tone value 1056 (y 1 1 ) and a frequency domain tone value 1058 (y 1 2 ), and ii) a received signal 1054 (R 2 ) and obtains a frequency domain tone value 1060 (y 2 1 ) and a frequency domain tone value 1062 (y 2 2 ).

In an embodiment, the access point 210 determines the device-specific CPEs 1064 across each adjacent pair of periods through conjugate correlation as:

In some embodiments, the access point 210 determines the output CPE for a client station u as an average over the periods, as described above.

FIG. 10C is a diagram illustrating an example method 1080 for estimating a common phase error for a communication device with conjugate correlation, according to an embodiment. In various embodiments, the access point 210 performs the method 1080 for estimating the device-specific CPE when using the single OFDM symbol 900 and the second scheme using a time domain training sequence, as described above with reference to FIG. 9 . In an embodiment, each client station stores a template for determining the time domain training sequence. In another embodiment, each client station stores a set of predetermined time domain training sequences.

In an embodiment, the access point 210 determines a correlation value y n u (t) of received signals r with templates x(τ) of each client station u as:

y n u ⁡ ( t ) = ∑ t = 1 M ⁢ ( τ ≥ t ? ) ⁢ r n + 1 ⁡ ( τ - t ) · x ⁡ ( τ ) + ( τ < t ? ) ⁢ r n ⁡ ( M + τ - t ) · x ⁡ ( τ ) ( Equ . ⁢ 35 )

where 1≤t<M, n=1, . . . N P −2, (τ≥t?) is equal to 1 if τ≥t and 0 if τ<t, and (τ<t?) is equal to 0 if τ≥t and 1 if τ<t. In the embodiment shown in FIG. 10C , the access point 210 determines a correlation value 1088 (y 1 1 ) and a correlation value 1089 (y 2 1 ) using template 1086 and determines a correlation value 1092 (y 1 2 ) and a correlation value 1093 (y 2 2 ) using template 1090 .

The access point 210 determines the device-specific CPE across adjacent pairs of two periods through conjugate correlation as:

∅ ^ n u = N p ⁢ ∠ ⁡ ( ∑ m ∈ user ⁢ ⁢ u ⁢ [ y m , n u ] H · y m , n + 1 u ) , n = 1 ⁢ … ⁢ ⁢ N p - 1 ( Equ . ⁢ 36 )

some embodiments, the access point 210 determines the output CPE for a user u as an average over the periods (i.e., a linear average or averaged correlation), as described above.

In other embodiments, the CFO training field 829 includes multiple OFDM symbols with a same training sequence. In various embodiments for a first scheme using multiple OFDM symbols, the access point 210 allocates orthogonal tones to different users and each user u uses a same frequency domain training sequence of length

⌊ N U ⌋ ,

where N is a total number of non-zero tones and U is the total number of users (i.e., client stations). In an embodiment, the access point 210 uses an interleaved allocation of tones for the first scheme. In another embodiment, the access point 210 uses a block allocation of tones for the first scheme. In an embodiment, the frequency domain training sequence is a sequence having a suitable PAPR and is populated to the corresponding allocated tones by the client stations.

FIG. 11A is a diagram illustrating OFDM symbols with an interleaved allocation 1100 of tones for the first scheme, according to an embodiment. In an embodiment, the access point 210 determines the interleaved allocation 1100 for each user u as:

u:m mod U,m= 0,1, . . . N− 1.   (Equ. 37)

In the embodiment shown in FIG. 11A , the access point 210 allocates 52 non-zero tones 1101 across four client stations (STA 1 , STA 2 , STA 3 , and STA 4 ) such that each client station is allocated 13 interleaved tones.

FIG. 11B is a diagram illustrating OFDM symbols with a block allocation 1150 of tones for the first scheme, according to another embodiment. In an embodiment, the access point 210 determines the block allocation 1150 for each user u as:

u : ⌊ N U ⌋ · ( u - 1 ) ≤ m ≤ ⌊ N U ⌋ · ( u ) ( Equ . ⁢ 38 )

In the embodiment shown in FIG. 11B , the access point 210 allocates 52 non-zero tones 1151 for an IEEE 802.11ac communication channel across four client stations (STA 1 , STA 2 , STA 3 , and STA 4 ) such that each client station is allocated a block that includes 13 tones (i.e., tones 0 to 12 , tones 13 to 25 , tones 26 to 38 , and tones 39 to 51 ). In other embodiments, some client stations have an unequal number of tones in their corresponding tone block, for example, when 52 non-zero tones are divided across three client stations, 5 client stations, etc.

Using the first scheme, the access point 210 estimates the device-specific CPE directly from received signals. In an embodiment, after performing an N-point FFT of each received signal, the access point 210 estimates the device-specific CPE per OFDM symbol n of client station u as:

∅ ^ u , n = ∠ ⁡ ( ∑ m ∈ User ⁢ ⁢ U ⁢ y m H ⁡ ( n ) · y m ⁡ ( n + 1 ) ) , n = 1 ⁢ … ⁢ ⁢ L - 1 ( Equ . ⁢ 39 )

where m is an integer index of allocated tones for the user u, L is an integer number of OFDM symbols of the CFO training field 829 , and y m (n) is the received signal vector on tone m of the n th OFDM symbol.

In some embodiments, the access point 210 averages the output CPE for user u over the OFDM symbols of the CPO training field 829 . In one such embodiment, the access point 210 determines the output CPE as a linear average:

In another embodiment, the access point 210 determines the output CPE as an averaged correlation:

∅ ^ u = ∠ ⁡ ( ∑ n = 1 ⁢ … ⁢ ⁢ L - 1 ⁢ ∑ m ∈ User ⁢ ⁢ U ⁢ y m H ⁡ ( n ) · y m ⁡ ( n + 1 ) ) ( Equ . ⁢ 41 )

After the determination of the output CPE, the access point 210 performs a channel estimation based on the output CPE, as described above.

›DETAILED DESCRIPTION · 9 of 13

Using the second scheme with multiple OFDM symbols, the access point 210 allocates different time domain training sequences to different users, in various embodiments. In a similar manner as having only a single OFDM symbol for the CFO training field 829 as described above, the access point 210 uses a correlation-based method for multiple OFDM symbols to estimate the CFO, in various embodiments. In various embodiments of the second scheme, the number of time domain training sequences is larger than two. For example, in an embodiment, a set of U sequences of length N is used where U is an integer number of client stations. In various embodiments, the time domain training sequences are selected to have a suitably large auto-correlation and small cross correlation. In an embodiment, each client station uses a different time domain training sequence. In another embodiment, two or more client stations share a time domain training sequence, with subsequent client stations using a time shift T shift as:

For CFO estimation with multiple OFDM symbols, each client station stores a template for the time domain training sequence, in an embodiment. The access point 210 determines a correlation of a received signal r with the template of the corresponding client station. For a client station u, period n, and time index t, the correlated value is:

y n u ⁡ ( t ) = ∑ t = 1 M ⁢ ( τ ≥ t ? ) ⁢ r n + 1 ⁡ ( τ - t ) · x ⁡ ( τ ) + ( τ < t ? ) ⁢ r n ⁡ ( M + τ - t ) · x ⁡ ( τ ) ( Equ . ⁢ 43 )

where 1≤t<M, n=1, . . . L−2, (τ≥t?) is equal to 1 if τ≥t and 0 if τ<t, and (τ<t?) is equal to 0 if τ≥t and 1 if τ<t. In an embodiment, the access point 210 determines the device-specific CPE across adjacent periods through conjugate correlation as:

In some embodiments, the access point 210 averages the device-specific CPE for the client station u over the periods. In an embodiment, the access point 210 determines a linear average of the output CPE as:

In another embodiment, the output CPE is determined as:

For the frequency domain training symbol design, each user is not transmitting on all tones in each OFDM symbol. In an embodiment, the client station keeps the same per-tone transmit power as regular OFDM symbols to avoid potential “power burp” or clipping after automatic gain control procedures for the STF. In another embodiment, the client station boosts the transmit power on its allocated tones to keep the same per symbol power, within limits of a spectrum mask. In an embodiment, the power boost value is the number of users U or the ratio between the total number of tones and the number of allocated tones. The device-specific CPE and/or CFO estimation can potentially benefit from higher SNR on the allocated tones.

Referring again to FIG. 3 , in various embodiments, the access point 210 continues to track the CFO in the OFDM symbols of the VHT-SIGB 334 and data portion 312 using the corresponding pilot tones. In an embodiment, for each received OFDM symbol of the VHT-SIGB 334 and data portion 312 , the access point 210 tracks the CFO based on a current channel estimate for a received OFDM symbol and a reference channel estimate determined for a previously received OFDM symbol of the non-legacy training field portion 340 . In some embodiments, the access point 210 uses the updated CFO and/or device-specific CPE value for data detection and/or further CFO compensation. In various embodiments, the access point 210 allocates the pilot tones for the VHT-SIGB 334 and data portion 312 using an overlapped allocation, a fixed non-overlapped allocation, or an interleaved non-overlapped allocation.

In an embodiment, the overlapped allocation is based on the tone allocation defined in the IEEE 802.11ac standard, for example, all pilot tones are allocated to every client station for the simultaneous transmission. In this embodiment, the access point 210 equalizes a received signal on a pilot tone in a similar way as a data tone using channel estimation from a VHT-LTF field as:

y u,m =g u H ·r m    (Equ. 47)

where g u is an equalizer (e.g., a minimum mean square error) for the user u, based on the channel estimation in the VHT-LTF field. In this embodiment, the access point 210 estimates the device-specific CPE for user u as:

{circumflex over (ø)} u =∠( y u H ·s u )   (Equ. 48)

where y u H is the equalized vector for all pilot tones and s u is the transmitted pilot vector. In some embodiments, the access point 210 uses the estimated device-specific CPE to compensate the data portion 312 to assist data detection for a current OFDM symbol or CFO compensation for a subsequent OFDM symbol.

In another embodiment, the access point 210 uses a fixed non-overlapped allocation. For example, in an embodiment, the access point 210 allocates pilot tones to a client station u as

u=m mod U,m= 0,1,2, . . . N pilot −1   (Equ. 49)

In this embodiment, for each pilot tone m, only the corresponding client station transmits a signal using a same pilot polarity as defined in the IEEE 802.11ac standard. Although the fixed non-overlapped allocation can be used for joint, staggered, and mixed channel estimation as described above with reference to FIGS. 4A, 4B, and 4C , some client stations may not be treated equally in that they have a different number of pilot tones when the number of client stations U is less than the number of pilot tones N pilot . For the fixed non-overlapped allocation, the access point 210 estimates the device-specific CPE for a user u, on each assigned pilot tone m, as

{circumflex over (ø)} u,m =∠( h u,m H ·r m ·s u,m )   (Equ. 50)

where

h u , m H = [ ∑ i ⁡ ( u ) = 1 N T u ⁢ h i ⁡ ( u ) , 0 m ⁢ ∑ i ⁡ ( u ) = 1 N T u ⁢ h i ⁡ ( u ) , 1 m ⁢ … ⁢ ∑ i ⁡ ( u ) = 1 N T u ⁢ h i ⁡ ( u ) , N R m ] ( Equ . ⁢ 51 )

where h i,j m is the channel estimate for pilot tone m from transmit antenna i to receive antenna j, N T u is the number of transmit antennas for user u, and N R is the number of receive antenna of the access point 210 . In some embodiments, the access point 210 estimates the output CPE as:

›DETAILED DESCRIPTION · 10 of 13

In yet another embodiment, the access point 210 uses an interleaved non-overlapped allocation. For example, in an embodiment, the access point 210 allocates pilot tones to a client station u as

u =( m+n )mod U,m= 0,1,2, . . . N pilot −1, n= 0,1, . . . N DATA −1   (Equ. 53)

for pilot tone m on the n th OFDM symbol of the data portion 312 , where only the corresponding client station transmits a signal on a pilot tone using a same pilot polarity as defined in IEEE 802.11ac. In an embodiment, the access point 210 allocates tones according to the interleaved non-overlapped allocation for the staggered transmission, as described above with respect to FIG. 4B . In this embodiment, each client station takes the pilot tones in turn and an equal number of pilot tones are used by the client stations for every U OFDM symbols. For the interleaved non-overlapped allocation, the access point 210 estimates the device-specific CPE similarly to the fixed non-overlapped allocation as described above, using the corresponding pilot tones for each user on each OFDM symbol of the data portion 312 .

After estimating the device-specific CPE for one or more OFDM symbols of a data frame for a client station, the access point 210 determines the CFO for the corresponding client station u as

Δ ⁢ ⁢ f ^ u = ∅ ^ u ( 2 ⁢ π · T S ) ( Equ . ⁢ 54 )

In some embodiments, the access point 210 uses the CFO to perform CFO compensation in the time domain for subsequent OFDM symbols. In an embodiment, the access point 210 has a single processor configured to perform CFO compensation and in this case, the device-specific CFOs are used to refine the common CFO estimation obtained from the legacy portion of the preamble, as described above with respect to FIG. 7 . In an embodiment, the access point 210 determines the common CFO as a function of each of the determined device-specific CFO estimates, Δf=f(Δ{circumflex over (f)} i ). In one such embodiment, the access point 210 uses an average of the device-specific CFOs:

In some embodiments, the access point 210 has a plurality of separate or parallel processors configured to perform CFO compensation for each client station. In one such embodiment, a larger maximum difference between CFOs of the client stations can be tolerated with suitable performance.

FIG. 12 is a flow diagram of an example method 1200 for compensating for a carrier frequency offset, according to an embodiment. With reference to FIG. 1 , the method 1200 is implemented by the network interface 16 , in an embodiment. For example, in one such embodiment, the PHY processing unit 20 is configured to implement the method 1200 . With continued reference to FIG. 1 , in yet another embodiment, the method 1200 is implemented by the network interface 27 (e.g., the PHY processing unit 29 ). In other embodiments, the method 1200 is implemented by other suitable network interfaces.

At block 1202 , a first communication device, such as the access point 210 , receives a plurality of data frames via a multiple input, multiple output (MIMO) communication channel, in an embodiment. In an embodiment, the plurality of data frames are transmitted simultaneously from respective ones of a plurality of second communication devices. For example, in an embodiment, a plurality of client stations 25 transmit the plurality of data frames.

At block 1204 , the first communication device estimates a common carrier frequency offset (CFO) that is common to each of the plurality of data frames based on a legacy portion of a physical layer (PHY) preamble of each of the plurality of data frames, in an embodiment.

At block 1206 , the first communication device compensates each of the plurality of data frames based on the common CFO, in an embodiment. For example, in an embodiment, the first communication device determines a channel estimate using the common CFO to compensate for the carrier frequency offset.

At block 1208 , the first communication device estimates respective device-specific CFOs for channel estimation of the MIMO communication channel based on pilot tones of respective non-legacy training field portions of the plurality of data frames, in an embodiment. In some embodiments, the pilot tones have a non-overlapping allocation to the plurality of second communication devices, such as, for example, the interleaved allocation 1100 or block allocation 1150 as described above with reference to FIG. 11A and FIG. 11B , respectively. Each device-specific CFO is specific to the corresponding second communication device of the plurality of second communication devices, in an embodiment.

At block 1210 , the first communication device compensates the respective non-legacy training field portions based on the corresponding device-specific CFO. For example, in an embodiment, the first communication device determines a channel estimate using the device-specific CFO to compensate for the carrier frequency offset. In some embodiments, the device-specific CFO is a linear average or averaged correlation, as described above.

FIG. 13 is a flow diagram of an example method 1300 for transmitting a data frame with a non-overlapping allocation of pilot tones, according to an embodiment. With reference to FIG. 1 , the method 1300 is implemented by the network interface 16 , in an embodiment. For example, in one such embodiment, the PHY processing unit 20 is configured to implement the method 1300 . With continued reference to FIG. 1 , in yet another embodiment, the method 1300 is implemented by the network interface 27 (e.g., the PHY processing unit 29 ). In other embodiments, the method 1300 is implemented by other suitable network interfaces.

At block 1302 , a first communication device receives a synchronization frame from a second communication device, in an embodiment. In some embodiments, the first communication device is a client station 25 and the second communication device is an access point 210 . The synchronization frame has an allocation indicator that indicates a non-overlapping allocation of pilot tones, in an embodiment. For example, in an embodiment, the non-overlapping allocation of pilot tones is the block allocation 600 or interleaved allocation 650 , as described above with respect to FIGS. 6A and 6B , respectively.

›DETAILED DESCRIPTION · 11 of 13

At block 1304 , the first communication device generates a first data frame that comprises a plurality of OFDM symbols of a non-legacy training field portion, in an embodiment. The plurality of OFDM symbols include only pilot tones corresponding to the non-overlapping allocation of pilot tones, in an embodiment.

At block 1306 , the first communication device transmits, in response to the synchronization frame and via a MIMO communication channel, the first data frame to the second communication device simultaneously with a transmission of a second data frame by a third communication device via the MIMO communication channel, in an embodiment. Corresponding OFDM symbols of respective non-legacy training field portions of the first data frame and the second data frame include non-overlapping pilot tones according to the non-overlapping allocation, in an embodiment.

FIG. 14 is a flow diagram of an example method 1400 for compensating for a carrier frequency offset, according to an embodiment. With reference to FIG. 1 , the method 1400 is implemented by the network interface 16 , in an embodiment. For example, in one such embodiment, the PHY processing unit 20 is configured to implement the method 1400 . With continued reference to FIG. 1 , in yet another embodiment, the method 1400 is implemented by the network interface 27 (e.g., the PHY processing unit 29 ). In other embodiments, the method 1400 is implemented by other suitable network interfaces.

At block 1402 , a first communication device receives a plurality of data frames via a multiple input, multiple output (MIMO) communication channel, in an embodiment. The plurality of data frames are transmitted simultaneously from respective ones of a plurality of second communication devices, in an embodiment. For example, in an embodiment, a plurality of client stations 25 transmit the plurality of data frames. In some embodiments, block 1402 also includes receiving a respective non-legacy training field portion of a PHY preamble for each of the plurality of data frames, where each non-legacy training field portion having i) a reference field, ii) a short training field, and iii) at least one long training field. In an embodiment, the non-legacy training field portion is the non-legacy training field portion 540 , as described above with respect to FIG. 5 . In an embodiment, one or more of the plurality of data frames is the data frame 800 or 850 , as described above with respect to FIG. 8A and FIG. 8B , respectively.

At block 1404 , the first communication device estimates a common CFO that is common to each of the plurality of data frames based on a legacy portion of the PHY preamble of each of the plurality of data frames, in an embodiment.

At block 1406 , the first communication device compensates each of the plurality of data frames based on the common CFO, in an embodiment.

At block 1408 , the first communication device estimates respective device-specific CFOs for channel estimation of the MIMO communication channel based on pilot tones of the corresponding reference field after compensating each of the plurality of data frames, in an embodiment. In some embodiments, the pilot tones have a non-overlapping allocation to the plurality of second communication devices, such as, for example, the interleaved allocation 1100 or block allocation 1150 as described above with reference to FIG. 11A and FIG. 11B , respectively. Each device-specific CFO is specific to the corresponding second communication device of the plurality of second communication devices, in an embodiment.

At block 1410 , the first communication device compensates the plurality of data frames based on the corresponding device-specific CFO, in an embodiment. For example, in an embodiment, the first communication device determines a channel estimate using the device-specific CFO to compensate for the carrier frequency offset. In some embodiments, the device-specific CFO is a linear average or averaged correlation, as described above.

FIG. 15 is a flow diagram of an example method 1500 for transmitting a data frame, according to an embodiment. With reference to FIG. 1 , the method 1500 is implemented by the network interface 16 , in an embodiment. For example, in one such embodiment, the PHY processing unit 20 is configured to implement the method 1500 . With continued reference to FIG. 1 , in yet another embodiment, the method 1500 is implemented by the network interface 27 (e.g., the PHY processing unit 29 ). In other embodiments, the method 1500 is implemented by other suitable network interfaces.

At block 1502 , a first communication device receives a synchronization frame from a second communication device, in an embodiment. In some embodiments, the first communication device is a client station 25 and the second communication device is an access point 210 .

At block 1504 , the first communication device generates a first data frame such that a non-legacy training field portion of a PHY preamble for the first data frame includes: i) a reference field, ii) a short training field, and iii) at least one long training field, in an embodiment. In an embodiment, the non-legacy training field portion is the non-legacy training field portion 540 , as described above with respect to FIG. 5 . In an embodiment, one or more of the plurality of data frames is the data frame 800 or 850 , as described above with respect to FIG. 8A and FIG. 8B , respectively.

At block 1506 , the first communication device transmits via a MIMO communication channel, in response to the synchronization frame, the first data frame to the second communication device simultaneously with a transmission of a second data frame by a third communication device via the MIMO communication channel, in an embodiment. In an embodiment, the third communication device is another client station 25 .

FIG. 16 is a flow diagram of an example method 1600 for compensating for a carrier frequency offset, according to an embodiment. With reference to FIG. 1 , the method 1600 is implemented by the network interface 16 , in an embodiment. For example, in one such embodiment, the PHY processing unit 20 is configured to implement the method 1600 . With continued reference to FIG. 1 , in yet another embodiment, the method 1600 is implemented by the network interface 27 (e.g., the PHY processing unit 29 ). In other embodiments, the method 1600 is implemented by other suitable network interfaces.

›DETAILED DESCRIPTION · 12 of 13

At block 1602 , a first communication device receives a plurality of data frames via a MIMO communication channel, in an embodiment. The plurality of data frames are transmitted simultaneously from respective ones of a plurality of second communication devices, in an embodiment. In some embodiments, the plurality of second communication devices are client stations 25 .

At block 1604 , the first communication device estimates a common CFO that is common to each of the plurality of data frames based on a legacy portion of the PHY preamble of each of the plurality of data frames, in an embodiment.

At block 1606 , the first communication device compensate each of the plurality of data frames based on the common CFO, in an embodiment.

At block 1608 , the first communication device estimates respective first device-specific CFOs for channel estimation of the MIMO communication channel based on pilot tones of respective non-legacy training field portions of the plurality of data frames after compensating each of the plurality of data frames, in an embodiment. In some embodiments, the pilot tones have a non-overlapping allocation to the plurality of second communication devices, such as, for example, the interleaved allocation 1100 or block allocation 1150 as described above with reference to FIG. 11A and FIG. 11B , respectively. Each first device-specific CFO is specific to the corresponding second communication device of the plurality of second communication devices, in an embodiment.

At block 1610 , the first communication device compensates the plurality of data frames based on the corresponding device-specific CFO, in an embodiment. In an embodiment, each of the plurality of data frames comprises a respective data portion having a plurality of OFDM symbols.

At block 1612 , the first communication device estimates respective second device-specific CFOs for channel estimation of the MIMO communication channel based on a current OFDM symbol of the plurality of OFDM symbols and the first device-specific CFO, in an embodiment.

At block 1614 , the first communication device compensates the plurality of data frames based on the corresponding second device-specific CFO, in an embodiment.

FIG. 17 is a flow diagram of an example method 1700 for transmitting a data frame, according to an embodiment. With reference to FIG. 1 , the method 1700 is implemented by the network interface 16 , in an embodiment. For example, in one such embodiment, the PHY processing unit 20 is configured to implement the method 1700 . With continued reference to FIG. 1 , in yet another embodiment, the method 1700 is implemented by the network interface 27 (e.g., the PHY processing unit 29 ). In other embodiments, the method 1700 is implemented by other suitable network interfaces.

At block 1702 , a first communication device receives, from a second communication device, a synchronization frame having an allocation indicator that indicates a non-overlapping allocation of pilot tones, in an embodiment. In some embodiments, the first communication device is a client station 25 and the second communication device is an access point 210 .

At block 1704 , the first communication device generates a first data frame that comprises a plurality of OFDM symbols of a data portion, in an embodiment. The plurality of OFDM symbols includes only pilot tones corresponding to the non-overlapping allocation of pilot tones, in an embodiment.

At block 1706 , the first communication device transmits, in response to the synchronization frame and via a MIMO communication channel, the first data frame to the second communication device simultaneously with a transmission of a second data frame by a third communication device via the MIMO communication channel, in an embodiment. Corresponding OFDM symbols of respective non-legacy training field portions of the first data frame and the second data frame include non-overlapping pilot tones according to the non-overlapping allocation, in an embodiment.

At least some of the various blocks, operations, and techniques described above may be implemented utilizing hardware, a processor executing firmware instructions, a processor executing software instructions, or any combination thereof. When implemented utilizing a processor executing software or firmware instructions, the software or firmware instructions may be stored in any computer readable memory such as on a magnetic disk, an optical disk, or other storage medium, in a RAM or ROM or flash memory, processor, hard disk drive, optical disk drive, tape drive, etc. Likewise, the software or firmware instructions may be delivered to a user or a system via any known or desired delivery method including, for example, on a computer readable disk or other transportable computer storage mechanism or via communication media. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency, infrared and other wireless media. Thus, the software or firmware instructions may be delivered to a user or a system via a communication channel such as a telephone line, a DSL line, a cable television line, a fiber optics line, a wireless communication channel, the Internet, etc. (which are viewed as being the same as or interchangeable with providing such software via a transportable storage medium). The software or firmware instructions may include machine readable instructions that, when executed by the processor, cause the processor to perform various acts.

When implemented in hardware, the hardware may comprise one or more of discrete components, an integrated circuit, an application-specific integrated circuit (ASIC), etc.

›DETAILED DESCRIPTION · 13 of 13

While the present invention has been described with reference to specific examples, which are intended to be illustrative only and not to be limiting of the invention, changes, additions and/or deletions may be made to the disclosed embodiments without departing from the scope of the invention.

›Tables in the description — 4
∅^
nu
=
∠⁡
(
∑t=1M⁢[ynu⁡(t)]H·yn+1u⁡(t+1)
)
,
n=
1⁢
⁢…⁢
⁢
Np
-1
,
M=
N
Np
(
Equ.
⁢30
)
∅^
u
=
1
Np
-1
⁢
∑
n=1
Np
-1
⁢
∅^
nu
(
Equ.
⁢31
)
∅^
nu
=
Np
⁢
∠(
∑m∈user⁢⁢u⁢[ym,nu]H·ym,n+1u
)
,
n=
1⁢…⁢
⁢
Np
-1
(
Equ.
⁢34
)
∅^
nu
=
Np
⁢
∠(
∑m∈user⁢⁢u⁢[ynu]H·yn+1u
)
,
n=
1⁢…⁢
⁢
Np
-2
(
Equ.
⁢44
)

Claims as granted

18 claims

Log in to read the claims of this application.

Log in to unlock

Classifications

7 codes
IPC · International Patent Classification
Section H — Electricity
  • H04B7/0413
  • H04W52/54
  • H04L27/26
  • H04W72/04
  • H04L25/02
  • H04W56/00
  • H04L5/00

Claim changes

Soon
Coming soonHow the claims changed between publication and grant

See which claims were amended, added or cancelled during examination, with every added and removed word marked.

AmendedAddedCancelledUnchanged

The published claims of this application are not paired with the granted ones in what we hold.

File wrapper

⤢ drag to zoomOct 2016Jan 2017Apr 2017Jul 2017Oct 2017Jan 2018Apr 2018Jul 2018Oct 2018Jan 2019Apr 2019USPTOApplicantNon-final rejectionResponse after non-finalNotice of allowance
USPTOApplicanthover for detail · click to open
Pendency
2.4 y
881 days filing → grant
Office actions
1
non-final + final
Responses
1
no RCE
Examiner
Awet Haile
art unit 2474 · TC 2400
Citations: 63 back · 4 forward

See the full prosecution history — every USPTO and applicant action on this file, in order.

Log in to unlock

Documents

Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.

Log in to unlock

Chain of title

⤢ drag to zoom202020222024202620282030203220342036Owner 1
Titlehover for detail · click to open

See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.

Log in to unlock