Re-estimating clock offset of a frequency selective wireless channel
By estimating the channel subcarrier power distribution using the preamble of received network packets, the accuracy problem of clock offset estimation in frequency-selective wireless channels is solved, improving the throughput of wireless network devices and reducing latency, thus meeting the requirements of high throughput and low latency.
Patent Information
- Application Number
- CN202280006664.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-07-29
- Filing Date
- 2022-07-26
- Publication Date
- 2025-12-12
- Estimated Expiration
- 2042-07-26
AI Technical Summary
In frequency-selective wireless channels, existing technologies struggle to accurately estimate and correct clock skew, especially under high signal-to-noise ratio conditions. This results in an excessively large limit on the minimum achievable error vector amplitude, impacting the throughput and latency performance of wireless network devices.
By receiving the preamble of network packets, the power distribution of multiple subcarriers in the channel is estimated, and the power distribution is used to estimate the carrier frequency offset. Finally, the clock offset is calculated and corrected to compensate for the sampling frequency and carrier frequency offset.
It improves the accuracy of clock offset estimation, reduces the error vector amplitude, enhances the throughput of wireless network devices, and reduces latency, meeting the requirements of high throughput and low latency.
Smart Images

Figure CN116325678B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] Embodiments presented in this disclosure relate generally to wireless network devices, and more specifically, to techniques for re-estimating clock offset of a frequency-selective wireless channel. BACKGROUND
[0002] Wireless network devices continue to proliferate in many forms, such as personal computers, smartphones, televisions, tablets, sensors, etc. The bandwidth requirements to support wireless network devices are also steadily increasing. Emerging video formats such as 4K and 8K can require up to 20 Gbps of uncompressed data rate. Emerging applications can also require very high throughput and / or low latency (e.g., virtual reality, augmented reality, gaming, telecommuting, online video conferencing, cloud computing).
[0003] To address the very high throughput and low latency requirements, the IEEE 802.11 standard introduces a new amendment, IEEE 802.11be (also referred to as “Wi-Fi 7” or “Extremely High Throughput” (EHT)). Wi-Fi 7 introduces new physical layer (PHY) and medium access control (MAC) modes that support a maximum throughput of 30 Gbps or higher. For example, Wi-Fi 7 doubles the number of bandwidths and service sets (SSs) in multi-user, multiple-input, multiple-output (MU-MIMO), which increases the nominal throughput by a factor of four (4). The PHY also introduces a higher rate modulation and coding scheme (MCS) such as 4096-quadrature amplitude modulation (QAM), which increases the nominal throughput by 20%.
[0004] The signal-to-noise ratio (SNR) required to accept 4096-QAM at the receiver side is about 40 dB (or equivalently, an error vector magnitude (EVM) of less than -40 dB), which is too large for typical Wi-Fi scenarios. With larger bandwidths and modulation sizes, it becomes more important to accurately estimate and correct for RF impairments in the channel. Even with an SNR at the client device that is greater than 40 dB, small errors in the clock offset estimation can limit the minimum achievable EVM to be greater than -40 dB. BRIEF DESCRIPTION OF DRAWINGS
[0005] The disclosure briefly summarized above can be described in greater detail by reference to embodiments, some of which are illustrated in the appended drawings. It should be noted, however, that the appended drawings illustrate only typical embodiments and should not be considered limiting; other equivalent embodiments are also contemplated.
[0006] Figure 1An exemplary system including an access point (AP) and a client device is shown in accordance with one or more embodiments.
[0007] Figure 2 Formatting of EHT network packets is shown in accordance with one or more embodiments.
[0008] Figure 3 A method of determining a clock offset in a frequency selective wireless channel in accordance with one or more embodiments.
[0009] Figure 4 A method of estimating a clock offset in a frequency selective wireless channel of an EHT network in accordance with one or more embodiments.
[0010] For ease of understanding, the same reference numbers will be used in different drawings to designate the same or similar elements. It is contemplated that elements disclosed in one embodiment can be beneficially utilized on other embodiments without specific recitation. DETAILED DESCRIPTION
[0011] SUMMARY
[0012] One embodiment presented in this disclosure is a method comprising receiving a network packet, and estimating a power profile corresponding to a plurality of subcarriers of a channel using a preamble of the network packet. The method further comprises estimating a carrier frequency offset using the power profile, and estimating a clock offset using the carrier frequency offset.
[0013] Another embodiment is a network device comprising one or more computer processors configured to receive a network packet, and estimate a power profile corresponding to a plurality of subcarriers of a channel using a preamble of the network packet. The one or more computer processors are further configured to estimate a carrier frequency offset using the power profile, and estimate a clock offset using the carrier frequency offset.
[0014] Another embodiment is a computer program product comprising a computer readable storage medium having computer readable program code embodied therewith. The computer readable program code is executable by one or more computer processors to perform operations comprising receiving a network packet, and estimating a power profile corresponding to a plurality of subcarriers of a channel using a preamble of the network packet. The operations further comprise estimating a carrier frequency offset using the power profile, and estimating a clock offset using the carrier frequency offset.
[0015] Example Embodiments
[0016] According to Wi-Fi standards, a single reference oscillator provides the mixer frequencies and DAC / ADC sampling clocks for all antennas and frequency bands. For the 5 GHz and 6 GHz bands, the symbol clock frequency and the transmit center frequency tolerances are controlled to within ±20 parts per million (ppm), and in the 2.4 GHz band to within ±25 ppm. This locked clock provides coherent effects for sampling frequency offset (SFO) and carrier frequency offset (CFO), which simplifies receiver clock offset estimation and correction. By using the preamble of a network packet to estimate the CFO, a clock offset ppm value can be calculated and used to compensate for the CFO and SFO. In highly frequency-selective channels, the estimation of the CFO can be subject to bias related to the power of each subcarrier in the channel. The bias is generally caused by the energy concentration in the frequency domain of the received packet.
[0017] According to embodiments described herein, a method includes receiving a network packet and using a preamble of the network packet to estimate a power profile corresponding to a plurality of subcarriers of a channel. The method also includes using the power profile to estimate a carrier frequency offset and using the carrier frequency offset to estimate a clock offset.
[0018] Figure 1 An exemplary system 100 is shown that includes an access point (AP) 105 and a client device 135. While primarily discussed using terminology of the IEEE 802.11 standards, the techniques described herein are applicable to estimating clock offsets using other suitable protocols.
[0019] The AP 105 includes a memory 115 and one or more processors 110. The one or more processors 110 can be implemented in any suitable form, such as a general- purpose microprocessor, a controller, an application-specific integrated circuit (ASIC), etc. The memory 115 can include various computer-readable media: volatile and / or nonvolatile media, removable and / or non-removable media, etc., which can be selected according to size, relative performance, or other criteria. The AP 105 also includes one or more transmitters 120 and one or more receivers 125. In some embodiments, the one or more transmitters 120 and the one or more receivers 125 support MU-MIMO connections with multiple different client devices.
[0020] The client device 135 is communicatively coupled with the AP 105 via a wireless network 130, such as a local area network (LAN), a wide area network (WAN), or a public network (e.g., the Internet), etc. In some embodiments, the wireless network 130 conforms to the IEEE 802.11 standards, although other packet-based protocols are contemplated. In some embodiments, the wireless network 130 conforms to IEEE 802.11be (also referred to as “Wi-Fi 7”) or a subsequent amendment.
[0021] Client device 135 can be implemented in any suitable form, such as a smartphone, tablet computer, laptop computer, wearable computer, and so on. Client device 135 includes memory 145 and one or more processors 140. The one or more processors 140 can be similarly configured as the one or more processors 110, and memory 145 can be similarly configured as memory 115. Client device 135 also includes one or more transmitters 150 and one or more receivers 155. In some embodiments, the one or more transmitters 150 and the one or more receivers 155 support MIMO connections with AP 105.
[0022] Memory 115, memory 145 can include one or more modules for performing the various functions described herein. In one embodiment, each module includes program code executable by the one or more processors 110, 140. However, other embodiments of system 100 can include modules that are partially or entirely implemented in other hardware (i.e., circuitry) or firmware of AP 105 and / or client device 135.
[0023] As shown, memory 145 includes a channel state module 146 that processes network packets using a preamble of the network packet and estimates characteristics of a channel. In some embodiments, the preamble includes a plurality of orthogonal frequency-division multiplexing (OFDM) symbols corresponding to a plurality of subcarriers. In some embodiments, channel state module 146 estimates the channel using long training fields (LTFs) from a legacy portion or a non-legacy portion of the preamble.
[0024] Reference is now made to Figure 2 wherein FIG. 200 illustrates formatting of an EHT network packet 205 (or network packet 205). Network packet 205 includes a preamble 210 followed by a data field 215. Preamble 210 includes a legacy portion field 220 followed by a non-legacy portion field 222. Legacy portion field 220 includes a legacy short training field (L-STF) 225-1, a legacy LTF (L-LTF) 225-2, a legacy signal field (L-SIG) 225-3, and a repeated legacy signal field (RL-SIG) 225-4. Non-legacy portion field 222 includes a universal signal (U-SIG) field 225-5, an EHT-SIG field 225-6, an EHT short training field (EHT-STF) 225-7, and an EHT long training field (EHT-LTF) 225-8.
[0025] The legacy portion field 220 is generally used for frame detection, synchronization, and to carry indicators such as MCS and frame length. The legacy portion field 220 can be arranged at the beginning of the network packet 205 to maintain backwards compatibility with legacy client devices operating in various frequency bands (e.g., 2.4 GHz, 5 GHz, 6 GHz).
[0026] In some embodiments, the U-SIG field 225-5 includes a plurality of OFDM symbols that include information for interpreting the network packet 205. The U-SIG field 225-5 can include version-independent fields and / or version-dependent fields. Some non-limiting examples of version-independent fields include a PHY version identifier, a UL / DL flag, a BSS color, a PPDU type, an MCS, a bandwidth, a transmit opportunity (TXOP), etc. Some non-limiting examples of version-dependent fields include a guard interval duration, an EHT-STF / LTF size, a space-time block encoding flag, etc. The U-SIG field 225-5 can be configured to indicate additional functionality such as multi-link aggregation, multi-AP coordination, etc.
[0027] The EHT-SIG field 225-6 can have a variable length and can include common fields and / or user-specific fields. The common fields can generally include information about RU allocation, encoding, number of space-time streams, MCS, guard interval duration, etc. The EHT-STF field 225-7 and the EHT-LTF field 225-8 include information that allows a user to estimate channel characteristics.
[0028] Returning to Figure 1 , the channel state module 146 estimates a clock offset 148 to apply to the one or more receivers 155. In some embodiments, the channel state module 146 uses power information for a plurality of subcarriers of the channel to estimate a carrier frequency offset (CFO), and uses the carrier frequency offset to estimate the clock offset 148.
[0029] The clock offset 148 can generally be computed based on a periodicity of a legacy preamble (e.g., the L-STF 225-1 or the L-LTF 225-2 of the Figure 2 ) after packet detection begins in the primary channel. The CFO can be represented as:
[0030] Δ CFO = δ x f cenerFreq (1),
[0031] where δ represents a normalized clock offset. As described above, for 5 GHz and 6 GHz bands, the normalized clock offset can be controlled to within ±20 ppm, or for 2.4 GHz bands, the normalized clock offset can be controlled to within ±25 ppm.
[0032] A coarse or fine estimate of CFO can be computed in time domain (or frequency domain) by measuring the phase difference between time samples (or DFT outputs) of consecutive symbols of L-STF 225-1 or L-LTF 225-2 using a maximum likelihood estimator. One example of time domain CFO estimation is:
[0033]
[0034]
[0035] where y1[n] and y2[n] represent repeated OFDM symbols in the same channel, N represents the FFT size, and T s represents the sampling time. S (maximum likelihood estimate of CFO) can also be represented as:
[0036]
[0037] where Hkrepresents the channel state information of the kthsubcarrier.
[0038] In highly frequency selective channels, the estimate of CFO can be biased with respect to the power of each subcarrier in the channel. The bias is generally caused by the energy concentration of the received packet in the frequency domain.
[0039] Considering those terms of S that include products of non-equal subcarriers as noise terms, CFO can be represented as:
[0040]
[0041] Therefore, the CFO estimate still depends on the normalized clock offset caused by the effect of SFO. When the channel is frequency flat (and assuming = |s k | 2 = 1), the effect of SFO terms can be considered negligible.
[0042] However, when the channel is a frequency selective channel, the effect of SFO terms can be represented as:
[0043]
[0044]
[0045]
[0046] This shows that the phase shift due to SFO is a function of the power of each subcarrier. Therefore, the error in the CFO estimate due to the effect of SFO by the channel can be represented as:
[0047]
[0048] In some embodiments, when estimating CFO, the channel state module 146 computes the error term according to equation (8).
[0049] Figure 3 is a method 300 of determining clock offset in a frequency-selective wireless channel. The method 300 can be used in conjunction with other embodiments, such as embodiments performed by a client device 135 (e.g., using a channel state module 146) of Figure 1 .
[0050] The method 300 begins at block 305, where a network packet is received by a wireless network device. In some embodiments, the network packet is formatted to comply with an IEEE 802.11 standard, such as IEEE 802.11be or a subsequent amendment.
[0051] At block 315, the wireless network device uses the preamble of the network packet to estimate a power profile corresponding to a plurality of subcarriers of the channel. In some embodiments, the wireless network device uses one or more LTFs (whether legacy or non-legacy) to estimate the power profile. For example, the wireless network device can estimate the power from channel state information (CSI) using a predefined signal and a signal received after performing processing such as removing a cyclic prefix, demapping, and OFDM demodulation.
[0052] At block 325, the wireless network device uses the power profile to compute a power ratio of the channel. In some embodiments, the power ratio of the channel is computed as:
[0053]
[0054] where N denotes the index of the subcarriers (with the DC having an index value of zero). In other words, the power ratio can be computed as the sum of the magnitude squared of each subcarrier on one side of the zero index value (DC) divided by the sum of the magnitude squared of each subcarrier on the other side of the zero index value. Other computations of the power ratio can also be considered.
[0055] In some embodiments, the power ratio represents a criterion for re-estimating CFO only for those network packets having a power ratio large enough, which can reduce the complexity and latency of the computation of the wireless network device. At block 335, the power ratio is compared to a threshold.
[0056] When the power ratio does not exceed the threshold (NO), the method proceeds to block 375, and the clock offset is maintained. When the power ratio exceeds the threshold (YES), the method proceeds to block 345, where the wireless network device uses the power profile to estimate the carrier frequency offset.
[0057] At block 355, the wireless network device estimates a clock offset using the carrier frequency offset. At block 365, the wireless network device applies the clock offset. The method 300 ends after completing block 365 or block 375.
[0058] Figure 4 is a method 400 of estimating a clock offset in a frequency-selective wireless channel of an EHT network. The method 400 can be used in conjunction with other embodiments. For example, the method 400 can represent an example of the method 300 performed for an EHT-formatted network packet. Figure 3
[0059] The method 400 begins at block 405, where a network packet is received by a wireless network device. At block 415, the wireless network device estimates a channel using a legacy portion field of the network packet. In some embodiments, the wireless network device estimates the channel using an L-LTF. In other embodiments, the wireless network device estimates the channel using an L-STF. At block 425, the wireless network device estimates a carrier frequency offset using power information of a plurality of subcarriers of the channel. In some embodiments, estimating the carrier frequency offset includes, for example, computing an error term according to equation (8).
[0060] At block 435, the wireless network device estimates a phase of the channel. At block 445, the wireless network device estimates a clock offset using the carrier frequency offset. In cases where the channel is not updated based on the clock offset estimated at block 445, the clock offset is applied until the wireless network device processes a non-legacy portion of the network packet. For example, the clock offset can be applied during an EHT-STF to minimize the impact of residual CFO in the EVM of a data field. In these cases, subsequent channel estimates based on EHT-LTFs need not change. Beneficially, estimating the clock offset at block 445 can have less computational overhead, as decoding of the legacy field can be done without the higher precision needed to decode the non-legacy field.
[0061] At block 455, the wireless network device estimates a channel using an EHT-LTF of the network packet. In some embodiments, the phase of the channel is updated, for example, using block 435. At block 465, the wireless network device estimates a carrier frequency offset using power information of a plurality of subcarriers of the channel. At block 475, the wireless network device estimates a phase of the channel. At block 485, the wireless network device estimates a clock offset using the carrier frequency offset. At block 495, the wireless network device applies the clock offset.
[0062] At block 499, the wireless network device decodes the L-SIG field of the network packet. In some embodiments, the clock offset of block 445 or the clock offset of block 495 is imposed prior to or during the decoding of the L-SIG field. For these cases, a phase adjustment is applied to the channel estimate. The method 400 ends after block 499.
[0063] In this disclosure, reference is made to various embodiments. However, the scope of the present disclosure is not limited to the particular described embodiments. Rather, any combination of the described features and elements, whether related to different embodiments or not, is contemplated to implement and practice contemplated embodiments. Additionally, as used in the description herein and throughout the claims that follow, the meaning of "in" includes "in" and "on" and is not limited to "in" in the sense of "within," unless otherwise limited by the context of the claim.
[0064] As will be apparent to those of ordinary skill in the art, embodiments disclosed herein can be embodied as a system, a method, or a computer program product. Accordingly, embodiments can take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that can all generally be referred to herein as a "circuit," "module" or "system." Furthermore, embodiments can take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
[0065] Program code embodied on a computer readable medium can be transmitted using any appropriate medium, including but not limited to wireless, wired, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0066] Computer program code for carrying out operations of embodiments of the present disclosure can be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code can execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computer (for example, through the Internet using an Internet Service Provider).
[0067] The computer program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0068] The computer program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0069] The computer program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0070] The computer program product can have signal recorded thereon in a variety of forms including, but not limited to, radio frequency signals, digital signals, voice signals, and / or other like signals. Computer program product of the present disclosure can be implemented by various high-speed computers and / or computer processors, which will execute a set of instructions to perform one or more service-related functions. The service-related functions can be implemented using software and / or hardware. As such, the computer program product includes a set of instructions that allow the computer processor to perform a set of tasks when executed thereon. In one implementation, for example, the service-related functions can be implemented using Flash memory or other non-volatile memory. In another implementation, the service-related functions can be implemented using a software-operating system having one or more computer-readable instructions. These computer-readable instructions can be written in a number of programming languages for use with many hardware environments.
[0071] In light of the forgoing, the scope of the present disclosure is determined by the appended claims.
Claims
1. A method comprising: receiving a network packet; estimating, using a preamble of the network packet, a power profile corresponding to a plurality of subcarriers of a channel, wherein the preamble comprises a plurality of orthogonal frequency-division multiplexing (OFDM) symbols corresponding to the plurality of subcarriers; computing, using the power profile, a power ratio of the channel; comparing the power ratio of the channel to a threshold; estimating, using the power profile, a carrier frequency offset, and updating the carrier frequency offset in response to the power ratio exceeding the threshold; and estimating, using the carrier frequency offset, a clock offset. the plurality of OFDM symbols are included in a legacy short training field (L-STF) or a legacy long training field (L-LTF).
2. The method of claim 1, wherein, the plurality of OFDM symbols are included in an extremely high throughput long training field (EHT-LTF).
3. The method of claim 1, wherein, 4. The method of any preceding claim, further comprising: applying the clock offset prior to or during decoding a legacy signal field (L-SIG) of the preamble.
5. A network device comprising: one or more computer processors configured to: receive a network packet; estimate, using a preamble of the network packet, a power profile corresponding to a plurality of subcarriers of a channel, wherein the preamble comprises a plurality of orthogonal frequency-division multiplexing (OFDM) symbols corresponding to the plurality of subcarriers; compute, using the power profile, a power ratio of the channel; compare the power ratio of the channel to a threshold; estimate, using the power profile, a carrier frequency offset, and update the carrier frequency offset in response to the power ratio exceeding the threshold; and estimate, using the carrier frequency offset, a clock offset. the plurality of OFDM symbols are included in a legacy short training field (L-STF) or a legacy long training field (L-LTF). the plurality of OFDM symbols are included in an extremely high throughput long training field (EHT-LTF).
6. The network device of claim 5, wherein, the one or more computer processors are further configured to:
7. The network device of claim 5, wherein, apply the clock offset prior to or during decoding a legacy signal field (L-SIG) of the preamble.
8. The network device of any of claims 5 to 7, wherein, 9. A computer program product comprising: a computer-readable storage medium having computer-readable program code embodied therein, the computer-readable program code executable by one or more computer processors to perform operations comprising: receiving a network packet; estimating, using a preamble of the network packet, a power profile corresponding to a plurality of subcarriers of a channel, wherein the preamble comprises a plurality of orthogonal frequency-division multiplexing (OFDM) symbols corresponding to the plurality of subcarriers; computing, using the power profile, a power ratio of the channel; comparing the power ratio of the channel to a threshold; estimating, using the power profile, a carrier frequency offset, and updating the carrier frequency offset in response to the power ratio exceeding the threshold; and estimating, using the carrier frequency offset, a clock offset. the plurality of OFDM symbols are included in a legacy short training field (L-STF) or a legacy long training field (L-LTF). 10. The computer program product of claim 9, wherein, 11. The computer program product of claim 9, wherein, The plurality of OFDM symbols are included in an Extremely High Throughput Long Training Field (EHT-LTF).
12. The computer program product of any of claims 9-11, the operations further comprising: applying the clock offset prior to or during decoding a legacy signal field (L-SIG) of the preamble.
Citation Information
Patent Citations
Apparatus and method for estimating and compensating sampling clock offset
CN101378378A
Beamforming techniques for single-stream communications
CN108496311A