Apparatus, system, and method for selecting a wireless device antenna for communication

By detecting the RSSI value of the confirmation frame and the generated signal quality value, the antenna is dynamically selected, which solves the problem of low link quality caused by insufficient beacon packets and data packets in wireless devices, improves link quality and data rate, and reduces power consumption.

CN113826331BActive Publication Date: 2026-05-19INFINEON TECHNOLOGIES AMERICAS CORP
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
INFINEON TECHNOLOGIES AMERICAS CORP
Filing Date
2020-05-11
Publication Date
2026-05-19

AI Technical Summary

Technical Problem

Existing wireless devices often select antennas with lower link quality due to insufficient received beacon and data packets, leading to packet errors and increased power consumption.

Method used

By utilizing the signal attribute detector in the wireless device to detect the RSSI value of the acknowledgment frame, and combining it with the antenna evaluator to generate and update signal quality values, the antenna is dynamically selected to ensure better link quality, including signal attributes when using WLAN, BT, or ZB communication protocols.

Benefits of technology

It improves the accuracy of antenna selection, ensures higher link quality and data rate, and reduces packet errors and power consumption.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113826331B_ABST
    Figure CN113826331B_ABST
Patent Text Reader

Abstract

Example systems and methods of a wireless device use a signal property detector to determine a signal property value associated with a first frame received via a first antenna. Medium access control (MAC) logic can detect that the first frame indicates an acknowledgement (ACK) of a second frame transmitted by the wireless device. In response to the ACK being detected by the MAC logic, an antenna evaluator uses the signal property value to select one of the first antenna and a second antenna to transmit or receive a third frame.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross-references to related applications

[0002] This application is an international application of U.S. Patent Application No. 16 / 436,629, filed June 10, 2019, which claims the priority benefit of U.S. Provisional Application No. 62 / 847,726, filed May 14, 2019. Both the aforementioned U.S. Patent Application and the U.S. Provisional Application are incorporated herein by reference in their entirety. Technical Field

[0003] This topic relates to the field of wireless communications. More specifically, but not in a limiting way, this topic discloses techniques for selecting antennas for communication. Background Technology

[0004] Some communication systems include communication circuitry and multiple antennas for transmitting data according to one or more wireless communication protocols. For example, a communication system may utilize a Wireless Local Area Network (WLAN) communication protocol (e.g., Wi-Fi based on the IEEE 802.11 standard), a Bluetooth / Bluetooth Low Energy (BT) communication protocol (e.g., based on the BT SIG standard), and / or a Zigbee (ZB) communication protocol (e.g., based on the IEEE 802.15.4 standard). The link quality supported by the available antennas of the communication system may vary over time and depend on a variety of factors, including use case, location, and environmental conditions. Attached Figure Description

[0005] Some embodiments are illustrated by way of example and not limitation in the accompanying drawings, in which:

[0006] Figure 1 This is a communication flowchart illustrating communication between wireless devices according to an embodiment;

[0007] Figure 2 This is a block diagram illustrating a communication device according to an embodiment;

[0008] Figure 3 This is a flowchart illustrating a method for selecting an antenna based on a confirmation instruction according to an embodiment;

[0009] Figure 4 This is a flowchart illustrating a method for determining antenna selection according to an embodiment;

[0010] Figure 5 This is a physical layer frame format diagram according to the implementation method;

[0011] Figure 6 This is a diagram of the Bluetooth packet format according to the implementation method;

[0012] Figure 7This is a flowchart illustrating a method for selecting an antenna based on a confirmation frame according to an embodiment; and

[0013] Figure 8 This is a block diagram illustrating an electronic device according to an embodiment. Detailed Implementation

[0014] Apparatus, systems, and methods for selecting antennas for wireless devices are described. In the following description, numerous examples and embodiments are set forth for illustrative purposes to provide a thorough understanding of the claimed subject matter. It will be apparent to those skilled in the art that the claimed subject matter can be practiced in other embodiments. Some embodiments are now briefly described, followed by further examples from… Figure 1 Let's begin a more detailed discussion.

[0015] Wireless devices can use different antennas (or subsets of antennas) to communicate during different time periods. Typically, antenna selection algorithms for wireless devices can select antennas based on duty cycle and / or on signal properties associated with the antenna. Signal properties are the characteristics of the radio frequency (RF) signal received at the antenna.

[0016] Existing wireless devices do not provide techniques for detecting and utilizing signal attributes that can be used for antenna selection. For example, some wireless devices may only use the Received Signal Strength Indication (RSSI) determined from WLAN beacon packets and / or data packets to select an antenna. With the emergence of some wireless device applications or operating modes, the number of beacon packets and / or data packets received by the wireless device becomes insufficient, leading to the problem that the antenna selection algorithm selects a suboptimal antenna. For example, the primary operating mode of a conventional wireless security camera may be used to transmit video data (e.g., User Datagram Protocol (UPD) packets), and the wireless security camera may select the antenna for transmission based on the RSSI value. When the wireless security camera receives an insufficient number of beacon packets and / or data packets, it may still remain transmitting from a poor antenna, resulting in packet errors and increased power consumption required for retransmission.

[0017] The embodiments described herein provide techniques for expanding the number of signal attribute samples utilized by a wireless device to select antennas more likely to support link quality sufficient to maintain target throughput and data rates compared to previous implementations. For example, an embodiment includes a wireless device coupled to an antenna selector, a first antenna, and a second antenna. The wireless device includes a signal attribute detector for determining an RSSI value associated with a first frame received via the first antenna. In an embodiment, the wireless device's Media Access Control (MAC) logic detects an acknowledgment (ACK) for a second frame (e.g., a video packet) previously transmitted by the wireless device. In various embodiments, the first and second frames are WLAN frames, and the MAC logic is configured to detect the ACK based on one or more bit values ​​in the header of the first frame. In response to the MAC logic detecting the ACK, the wireless device's antenna estimator (e.g., an antenna selection algorithm) uses the RSSI value to select one of the first and second antennas via the antenna selector to transmit or receive a third frame (e.g., transmit a subsequent video packet).

[0018] In this implementation, the antenna evaluator uses RSSI values ​​to generate or update signal quality values ​​(e.g., signal-to-noise ratio (SNR)) associated with the first antenna over a period of time. Dynamically selecting an antenna using an acceptable or relatively large SNR can result in better overall link quality. To select between the first and second antennas, the antenna evaluator can compare the SNR value associated with the first antenna with a reference SNR value. The reference SNR value can be the SNR value associated with the second antenna (e.g., based on historical SNR of signals received via the second antenna) or a threshold SNR value (e.g., a minimum SNR value).

[0019] In this way, implementations can leverage conventionally undetermined, unused, and / or discarded signal attributes (e.g., RSSI values ​​associated with MAC ACK) to enhance the signal quality associated with the antenna. While some implementations have been described with respect to WLAN communication protocols, other implementations may be based on other communication protocols such as the ZB or BT communication protocols without departing from the claimed subject matter.

[0020] The following detailed description includes reference to the accompanying drawings, which form a part of the detailed description. The drawings illustrate embodiments. These embodiments, also referred to herein as “examples,” are described in sufficient detail to enable those skilled in the art to practice embodiments of the claimed subject matter. These embodiments may be combined, other embodiments may be utilized, or structural, logical, and electrical changes may be made without departing from the scope of the claims. Therefore, the following detailed description is not intended to be limiting, and its scope is defined by the appended claims and their equivalents.

[0021] Figure 1 This is a block diagram illustrating communication between wireless device 102 and wireless device 182 according to an embodiment. Wireless devices 102 and 182 can communicate using one or more communication protocols, including but not limited to WLAN, BT, or ZB. In various embodiments, wireless devices 102 and 182 may be included in a speaker, a network camera device, a voice control hub, a mobile phone, an access point, or any other device capable of wireless communication.

[0022] Wireless device 102 is shown as including antennas 104 and 106, while wireless device 182 is shown as including antenna 184. In some embodiments, antennas 104 and 106 may each represent a group of one or more antennas. The antennas or antenna groups that can support sufficient link quality can vary based on a variety of factors—including the current location of wireless device 102 relative to wireless device 182 and other environmental conditions such as interference, noise, etc. In embodiments, wireless device 102 may use an ACK signal to select which antenna among the plurality of antennas 104 or 106 is used to communicate with wireless device 182.

[0023] As shown, wireless device 102 sends an output signal 142 to wireless device 182 and subsequently receives an acknowledgment signal 144. For example, output signal 142 may include data packets or data frames (e.g., video data, audio data, status data, or any other data), which wireless device 102 may retransmit if no acknowledgment is received from wireless device 182. In response to receiving output signal 142, communication device 182 sends an acknowledgment signal 144 confirming that wireless device 182 has received output signal 142. In embodiments, acknowledgment signal 144 may be any RF signal including an indication in response to output signal 142. For WLAN and ZB communications, acknowledgment may be indicated in a MAC ACK frame. For BT communications, acknowledgment may be indicated in a baseband packet header. Multiple output signal-acknowledgment pairs 140, 150, 160, and 170 are shown as being transmitted between wireless device 102 and wireless device 182.

[0024] Wireless device 102 is also shown receiving input signal 146 from wireless device 182. Input signal 146 may include data or beacons or any other packets or frames not explicitly used as an acknowledgment signal 144 to output signal 142.

[0025] In one implementation, wireless device 102 includes an antenna evaluator (not shown) for determining which antenna 104 or 106 is used for communication for link quality purposes. Conventionally, the system can use RSSI values ​​associated with input signals 146 (e.g., WLAN data frames and beacon frames) to inform antenna selection (e.g., but cannot obtain and use any RSSI values ​​associated with acknowledgment signals 144). This leads to the problem of selecting an antenna that produces relatively lower link quality compared to the link quality that another available antenna can provide. Wireless device 102 may include information about... Figure 2 The described communication device can use the signal attributes of each acknowledgment signal 144 to dynamically select among available antennas to provide acceptable link quality.

[0026] Figure 2 This is a block diagram illustrating a communication device 200 according to an embodiment. The communication device 200 may be disposed on a substrate 201 such as a printed circuit board (PCB). The bus system 203 may include an inter-chip bus, an intra-chip bus, a coexistence bus, or any other communication lines for connecting circuits and / or logic modules that may be disposed on an IC chip or a discrete IC chip.

[0027] In implementations, coexistence hardware mechanisms and algorithms enable the communication subsystem to operate concurrently and / or simultaneously. For example, the communication device 200 may be included on a system-on-a-chip, which includes BT communication resources and / or ZB communication resources coupled to WLAN communication resources via a coexistence interface.

[0028] Co-existence technology provides a method for co-locating communication resources for multiple communication protocols on a device (e.g., a small form factor device). Co-existence solutions can be implemented at the chip level, board level, software level (e.g., firmware), and / or via antennas. In implementations, co-existence between WLAN subsystems, BT subsystems, and / or ZB subsystems can be achieved using Packet Traffic Arbitration (PTA) logic (not shown) employing PTA prioritization methods and / or other arbitration algorithms between data types and applications to pursue optimal performance for the specific environment and design constraints of multi-network communication systems. Through PTA implementations, overall quality of simultaneous voice, video, and data transmission on embedded systems can be achieved. In some implementations, the antenna selected according to the embodiments described herein can be shared by one or more communication resources supported by the wireless device for communication.

[0029] The communication device 200 is shown as including a transceiver 208, a signal attribute detector 210, a communication protocol logic 211, an antenna selector 216, an antenna evaluator 218, a processing device 220, and a memory system 222, all of which are discussed in more detail below.

[0030] Communication device 200 may include antennas 104 and 106 or be coupled to antennas 104 and 106 via antenna selector 216, which may include any selection logic known in the art (e.g., hardware, software, or a combination thereof). When antenna selector 216 selects an antenna, it couples the antenna to a transceiver for RF signal reception and transmission. In embodiments, dwell time is the period during which the antenna remains coupled to transceiver 208 via antenna selector 216. In embodiments, antennas 104 and 106 may each represent one or more antennas. For example, in some embodiments, antenna selector 216 (e.g., as a switching circuit operation) may couple communication device 200 to one or more antenna arrays (e.g., phased arrays) and / or antenna clusters comprising any number of antennas (e.g., six or eight), which are exclusively paired with communication protocol logic 211 or shared among communication protocol logic 211.

[0031] Transceiver 208 can be coupled to antennas 104 and / or 106 via antenna selector 216 and facilitates the transmission and reception of RF signals according to one or more communication protocols. In an embodiment, when operating as a receiver, transceiver 208 processes the received RF signal in the analog domain, digitizes the received RF signal, and demodulates the corresponding digital data to provide a decoded sequence of 1s and 0s to communication protocol logic 211 for further processing (e.g., packet processing). When operating as a transmitter, transceiver 208 typically performs the reverse operation: receiving a sequence of 1s and 0s from communication protocol logic 211, modulating the signal, and outputting an analog signal for transmission by one or more antennas 104 and 106.

[0032] Signal attribute detector 210 is operatively coupled to one or more antennas 104 and 106 to detect and provide signal attributes for use by antenna evaluator 218 in selecting antennas that contribute to acceptable link quality. In some embodiments, signal attribute detector 210 may include analog and / or digital logic and / or measurement circuitry for determining or estimating attributes associated with RF signals. Although shown as a single block, signal attribute detector 210 may be implemented wholly or partially by transceiver 208, communication protocol logic 211, and / or by processing instructions 224 stored in memory system 222.

[0033] Signal attributes associated with RF signals may include, but are not limited to, signal frequency, angular frequency, amplitude, phase, wavelength, wave velocity, time of arrival, time difference of arrival, phase difference of arrival, phase difference of arrival, signal level and / or strength values ​​(e.g., RSSI value), signal quality values ​​(e.g., SNR or Exponentially Effective SNR Mapped (EESM) value), signal-to-interference plus-noise ratio (SINR), packet delivery ratio (PDR), and / or bit error rate (BER), and / or any other combination of attributes or their derivatives. SINR represents the degree to which the power of the received signal exceeds the sum of noise and interference at the transceiver. PDR is the ratio of correctly received packets at the receiver to the total number of packets transmitted by the transmitter. BER is the ratio of erroneous bits to the total number of received bits over a given time period. In implementations, models may be used to map SINR to BER or PER in the presence of, for example, white noise or fading. One or more of these signal attributes may provide an average estimate of the link quality over a period of time.

[0034] In some implementations, the signal attribute detector 210 uses techniques known in the art to detect RSSI values ​​associated with RF signals observed at the antenna during reception of a packet (e.g., a frame) preamble. The signal attribute detector 210 may encode the detected RSSI values ​​in the header of the same packet and / or store the RSSI values ​​in memory system 222 (e.g., in signal attribute table 228).

[0035] Communication protocol logic 211 includes instructions and hardware for supporting communication protocols defined by one or more communication protocol standards (e.g., according to WLAN communication protocols, BT communication protocols, and / or ZB communication protocols). PHY logic 212 may include all or part of the electrical and physical specifications for implementing the communication protocol and defining the relationship between the communication device and the transmission medium (e.g., all or part of the physical layer of the OSI reference model). For example, PHY logic 212 may establish and terminate connections, provide contention resolution and flow control, and provide modulation, demodulation, and / or conversion between digital data and corresponding wirelessly transmitted signals. MAC logic 214 may include instructions (e.g., control logic) for implementing all or part of functional and program means to transmit data between network entities (e.g., all or part of the data link layer of an OSI reference model network). MAC logic 214 may inspect frame fields for ACK indications to detect and potentially correct errors that may occur in the physical layer. Additionally, MAC logic 214 may store signal attributes associated with frames including ACK indications.

[0036] Alternatively or additionally, the communication protocol logic 211 may include baseband logic 215, which includes dedicated circuitry and / or instructions executed by a processor for managing physical channels and links, as well as other services such as error correction, data whitening, jump selection, and security according to the BT communication protocol standard. Baseband logic 215 may include a link controller that works in conjunction with a BT link manager (not shown) in the upper BT protocol layer to perform link-level routines such as link connection and power control. Baseband logic 215 may also manage asynchronous and synchronous links, process packets, and perform paging and querying to access and query BT devices in the area. In an implementation, baseband logic 215 may inspect packet fields for ACK indications to detect and potentially correct errors, and then store signal attributes associated with the frame including the ACK indication.

[0037] In an implementation, processing device 220 is used to implement the operation of communication device 200 using instructions 224 (e.g., firmware or microcode) and / or data structures organized within memory system 222. Although shown as a single block, processing device 220 and memory system 222 may include multiple shared or dedicated resources distributed across various blocks (e.g., 208, 210, 211, 216, 218) of communication device 200. (See also...) Figure 7 The example processing device 220 and memory system are described in more detail.

[0038] Antenna evaluator 218 generates a signal or link quality value associated with the antenna based on signal attributes associated with the antenna, and stores the signal and link quality value in memory system 222. The signal or link quality value associated with the antenna may include, but is not limited to, SNR, SINR, PDR, BER, or any other metric indicating wireless communication quality. Antenna evaluator 218 may be implemented by dedicated hardware and / or by processing instructions 224. In an embodiment, antenna evaluator 218 may select an antenna based on comparing the signal quality value associated with the currently selected antenna (e.g., in quality value table 226) with a reference signal quality value (e.g., in quality value table 226)—such as a threshold quality value or a historical signal quality value associated with a previously selected antenna. (See reference...) Figure 3 , Figure 4 and Figure 7 A sample operation of the antenna evaluator 218 is described in more detail. While an example of a WLAN implementation has been given, BT and / or ZB implementations can also be employed without departing from the claimed subject matter.

[0039] Figure 3 This is a flowchart illustrating a method 300 for selecting an antenna based on acknowledgment (e.g., MAC or baseband ACK) according to an embodiment. Method 300 can be executed by processing logic including hardware (circuit, dedicated logic, etc.), software (e.g., software running on a general-purpose computing system or a dedicated machine), firmware (embedded software), or any combination thereof. In various embodiments, method 300 can be as described regarding... Figure 1 Wireless device 102 and Figure 2 The communication device 200 is shown and described as performing the functions.

[0040] At block 302, antenna selector 216 couples transceiver 208 to antenna 104. At block 304, transceiver 208 transmits a first signal (e.g., output signal 142) via antenna 104. At block 306, MAC logic 214 waits for acknowledgment of the transmitted first signal. At block 308, if MAC logic 214 determines that a timeout period has elapsed since the transmission of the first signal, method 300 proceeds to block 316, where antenna evaluator 218 causes antenna selector 216 to switch transceiver 208 from being coupled to the first antenna 104 (e.g., via a switching signal) to being coupled to the second antenna 106. If, at block 308, MAC logic 214 determines that no timeout period has elapsed, the method proceeds to block 310. At block 310, if MAC logic 214 determines that a second signal acknowledging the transmission of the first signal (e.g., acknowledgment signal 144) has not been received, then method 300 loops back to block 306 to wait for acknowledgment of the transmission of the first signal. If, at block 310, MAC logic 214 determines that a second signal acknowledging the transmission of the first signal has been received, then the method proceeds to block 312.

[0041] At block 312, antenna evaluator 218 generates a first signal quality value associated with the first antenna 104 based on the signal attributes of the second signal (e.g., confirmation signal 144) detected by signal attribute detector 210. At block 314, antenna evaluator 218 determines whether to select the second antenna 106 based on the first signal quality value generated at block 312. (See also...) Figure 4 An example is described for determining block 314. If, at block 314, the second antenna 106 is not selected, transceiver 208 remains coupled to the first antenna 104 as at block 302. If, at block 314, the second antenna 106 is selected, method 300 proceeds to block 316, where antenna evaluator 218 causes antenna selector 216 to switch transceiver 208 from being coupled to the first antenna 104 to being coupled to the second antenna 106.

[0042] Figure 4 This is a flowchart illustrating a method 400 for providing antenna selection determination according to an embodiment. Method 400 can be executed by processing logic including hardware (circuit, dedicated logic, etc.), software (e.g., software running on a general-purpose computing system or a dedicated machine), firmware (embedded software), or any combination thereof. In various embodiments, method 400 can be as described regarding... Figure 1 Wireless device 102 and Figure 2 The communication device 200 is shown and described as performing the functions.

[0043] At block 402, antenna evaluator 218 acquires a first signal quality value associated with the first antenna 104 (e.g., stored in quality value table 226). At block 404, if the first signal quality value is less than a threshold signal quality value (e.g., stored in quality value table 226), then at block 410, antenna evaluator 218 causes antenna selector 216 to select the second antenna 106. If the first signal quality value is not less than the signal threshold, method 400 proceeds to block 406. At block 406, antenna evaluator acquires a second signal quality value associated with the second antenna 106 (e.g., stored in quality value table 226).

[0044] At block 408, if the first signal quality value is greater than or equal to (e.g., not less than) the second signal quality value, then at block 410, antenna evaluator 218 causes antenna selector 216 to reside on the first antenna 104. If the first signal quality value is less than the second signal quality value, then at block 412, antenna evaluator 218 causes antenna selector 216 to select the second antenna 106. (See also...) Figure 5 and Figure 6 Describe the example WLAN frames and BT packets used in the implementation.

[0045] Figure 5 Figure 500 shows a PHY frame including a MAC ACK indication according to an embodiment. In this embodiment, the PHY frame 500 conforms to the Physical Layer Convergence Protocol (PLCP). The PHY frame is shown as including a preamble 502, a header 504, and payload data 506. In this embodiment, a signal attribute detector 210 uses a sequence of bit values ​​in the PHY preamble 502 to determine the RSSI associated with the PHY frame 500. In this embodiment, the signal attribute detector 210 places the calculated RSSI value in the PHY header 504 for later use by the MAC logic 214 and the antenna evaluator 218. The payload data 506 of the PHY frame 500 is shown as including a MAC header 510, which includes an ACK frame 508 as indicated by bits in the frame control field 512 (e.g., having a value of 1101).

[0046] In the implementation, MAC logic 214 examines the bit values ​​of the frame control field 512 to determine the frame type and subtype. Typically, the frame type can be a management frame, control frame, or data frame. Data frames carry higher-level protocol data in the frame body. Management frames facilitate communication maintenance. Example subtypes of management frames may include beacon frames, which are periodically sent from the access point to announce their presence and provide service set identifiers and other parameters for devices within range. Control frames facilitate the exchange of data frames between stations. Example subtypes of control frames may include those sent by the receiving station (e.g., Figure 1The wireless device 182 sends an ACK frame after receiving a data frame without detecting any errors. In an implementation, if the sending station (e.g., Figure 2 If the wireless device 102) does not receive an ACK frame within a predetermined time period, the transmitting station can switch antennas and retransmit the data frame.

[0047] Figure 6 This is a group diagram showing a BT packet 600 with an ACK indication according to an embodiment. Figure 2 The signal attribute detector 210 can determine the RSSI value associated with the BT packet 600 using the bit sequence in the access code field 602 before storing the signal attribute value in the memory system 222 or encoding the signal attribute value in the bits of the header field 604 for later use by the baseband logic 215 and the antenna evaluator 218. In one implementation, the baseband logic 215 can determine whether the BT packet 600 includes an ACK indication based on the bit value (e.g., a 0 or 1 value) in the ARQN field 606 of the header 604.

[0048] Figure 7 This is a flowchart illustrating antenna selection by a WLAN communication device according to an embodiment. This process can be executed by processing logic including hardware (circuit, dedicated logic, etc.), software (e.g., software running on a general-purpose computing system or a dedicated machine), firmware (embedded software), or any combination thereof. In various embodiments, the process can be as described regarding... Figure 2 The described communication device 102 includes PHY logic 212, MAC logic 214, and antenna evaluator 218, and references. Figure 5 The PLCP frame is executed as shown and described. In this implementation, the process is performed on multiple frames received via the currently selected antenna during the dwell time.

[0049] At block 702, during the antenna dwell time, PHY logic 212 places the RSSI value (e.g., as a bit value) calculated for each received PHY frame 500 in the corresponding PHY header 504. At block 704, MAC logic 214 checks the bits in the frame control field 512 of the MAC header 510 to determine whether the frame is an ACK frame 508, a beacon frame, or a data frame. If the frame control field 512 indicates a beacon type frame or a data type frame, then at block 706, MAC logic 214 places the RSSI value (e.g., the RSSI value encoded into the PLCP header 504) in the receive status table of signal attribute table 228 or other data structure (e.g., as PHYRXSTATUS). If the frame control field 512 indicates an ACK frame 508, then at block 708, the MAC logic 214 places the RSSI value (e.g., the RSSI value encoded into the PLCP header 504) in the transmit status table of the signal attribute table 228 or other data structure (e.g., as PHYTXSTATUS).

[0050] At block 710, antenna evaluator 218 generates a signal quality value for the selected antenna based on the RSSI values ​​stored in the receive status table and transmit status table during the corresponding dwell time period, and updates the signal quality value in quality value table 226. The generation and / or updating of the signal quality value can be dynamic, such that the signal quality value can be the operating average SNR value at a point in time during the antenna dwell time period. In one embodiment, antenna evaluator 218 calculates the average SNR based on the current average of the RSSI values ​​during the dwell time period and the noise level value during that period. For example, antenna evaluator 218 can calculate the average SNR as the difference in decibels between the current average RSSI value and the noise level value. In one embodiment, the noise level value is the noise floor or ambient noise of the RF environment measured by antenna evaluator 218 requesting processing device 220 (e.g., PHY logic 212) and / or periodically updated in memory system 222.

[0051] At block 712, antenna evaluator 218 selects an antenna based on a signal quality value or based on the expiration of the dwell time, and generates a corresponding antenna selection determination at block 714. For example, if the antenna dwell time expires or the antenna evaluator determines that the calculated signal quality value does not meet or exceed a reference value, antenna evaluator 218 can generate an antenna selection determination to dynamically switch transceiver 208 to be coupled to another antenna. The reference value can be a minimum acceptable SNR value or a historical average signal quality value associated with the antenna coupled to transceiver 208 during a previous dwell time. When the calculated signal quality value does meet or exceed the reference value, the antenna selection determination (e.g., or no antenna selection determination) can instruct transceiver 208 to remain coupled to the currently selected antenna for the remainder of the dwell time or a newer dwell time.

[0052] At block 716, MAC logic 214 passes the antenna selection determination down to PHY logic 212. For example, MAC logic 214 may cause PHY logic 212 to store the antenna selection setting and / or antenna dwell time setting in memory system 222 (e.g., a PHY register). At block 718, PHY logic 212 implements the antenna selection determination (e.g., based on the antenna selection setting and / or antenna dwell time setting in memory system 222) and returns the flow to block 702 to continue the process on the same antenna or the newly selected antenna.

[0053] When operating in TCP or UDP mode, implementations can utilize MAC ACKs. TCP mode can be used for connection-oriented transmissions, while UDP mode is generally less complex and used for connectionless message transmissions. Compared to UDP mode, TCP mode may involve a greater number of frames (e.g., TCP ACKs), which are typically used to construct reception statistics. Prior to the implementations described herein, the presence of UDP MAC ACKs was used to acknowledge successful transmission but did not trigger the storage of associated RSSI values ​​for reception statistics. In UDP mode, there is no upper-layer ACK (e.g., TCP ACK) to trigger the storage of RSSI values ​​for reception statistics. For example, a wireless security camera streaming video packets to one or more nodes on the Internet (e.g., the "cloud") can operate in UDP mode (e.g., without upper-layer ACKs as in TCP) because the wireless security camera may not need to know whether the target Internet node has successfully received the video packets. Furthermore, the more complex upper-layer ACKs that must be handled (e.g., in TCP mode) may delay the security camera's lens and / or cause playback jitter. As described in the implementation, a UDP MAC ACK is detected and responded to, rather than being discarded or ignored, and the associated RSSI value is used as a reception statistic by the antenna diversity algorithm for antenna selection.

[0054] Figure 8 This is a block diagram illustrating an electronic device 800 according to an embodiment. The electronic device 800 may wholly or partially include and / or operate as described above. Figures 1 to 7 The described wireless device 102 or a portion thereof is an example implementation. The electronic device 800 may be in the form of a computer system within which a set of instructions can be executed to cause the electronic device 800 to perform any or more of the methods discussed herein. The electronic device 800 may operate as a standalone device or may be connected (e.g., networked) to other machines. In a networked deployment, the electronic device 800 may operate as a server machine or a client machine in a server-client network environment, or as a peer machine in a P2P (or distributed) network environment.

[0055] Electronic device 800 can be an Internet of Things (IoT) device, server computer, client computer, personal computer (PC), tablet computer, set-top box (STB), voice control hub (VCH), personal digital assistant (PDA), mobile phone, network device, network router, switch or bridge, television, speaker, remote control, monitor, handheld multimedia device, handheld video player, handheld gaming device, or control panel, or any other machine capable of executing a set of instructions (sequentially or otherwise) specifying the actions to be taken by that machine. Furthermore, although only a single electronic device 800 is shown, the term "device" should also be considered to include any collection of machines that independently or jointly execute a set (or more) of instructions to perform any or more of the methods discussed herein.

[0056] Electronic device 800 is shown as including processor 802. In embodiments, electronic device 800 and / or processor 802 may include processing device 805, such as a system-on-a-chip processing device developed by Cypress Semiconductor Corporation of San Jose, California. Alternatively, electronic device 800 may include one or more other processing devices known to those skilled in the art, such as microprocessors or central processing units, application processors, host controllers, controllers, application-specific processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), etc. Bus system 801 may include a communication block (not shown) for communicating with internal or external components—such as embedded controllers or application processors—via communication interface 809 and / or bus system 801.

[0057] The components of the electronic device 800 may reside on a common carrier substrate, such as an IC die substrate, a multi-chip module substrate, etc. Alternatively, the components of the electronic device 800 may be one or more individual ICs and / or discrete components.

[0058] Memory system 804 may include volatile and / or non-volatile memory that can communicate with each other via bus system 801. Memory system 804 may include, for example, random access memory (RAM) and program flash memory. RAM may be static RAM (SRAM), and program flash memory may be a non-volatile storage device that can be used to store firmware (e.g., control algorithms that can be executed by processor 802 to implement the operations described herein). Memory system 804 may include instructions 803 that, when executed, perform the methods described herein. Some portions of memory system 804 may be dynamically allocated to provide caching, buffering, and / or other memory-based functions.

[0059] The memory system 804 may include a drive unit providing a machine-readable medium on which one or more instruction sets 803 (e.g., software) implementing any or more of the methods or functions described herein may be stored. The instructions 803 may also reside wholly or at least partially within other memory devices of the memory system 804 and / or processor 802 during execution by electronic device 800, which in some embodiments constitutes the machine-readable medium. The instructions 803 may also be transmitted or received over a network via communication interface 809.

[0060] While in some embodiments a machine-readable medium is a single medium, the term "machine-readable medium" should be understood to include a single medium or multiple media (e.g., a centralized or distributed database, and / or associated caches and servers) that store one or more sets of instructions. The term "machine-readable medium" should also be understood to include any medium capable of storing or encoding a set of instructions executable by a machine and causing the machine to perform any one or more of the example operations described herein. Therefore, the term "machine-readable medium" should be accordingly understood to include, but is not limited to, solid-state storage as well as optical and magnetic media.

[0061] Electronic device 800 is also shown to include a display interface 806 (e.g., a liquid crystal display (LCD), a touch screen, a cathode ray tube (CRT), and software and hardware support for display technologies) and an audio interface 808 (e.g., a microphone, a speaker, and software and hardware support for microphone input / output and speaker input / output). Electronic device 800 is also shown to include a user interface 810 (e.g., a keyboard, buttons, switches, a touchpad, a touch screen, and software and hardware support for the user interface).

[0062] The above description is intended to be illustrative and not restrictive. For example, the embodiments described above (or one or more aspects thereof) may be used in combination with each other. Other embodiments will be apparent to those skilled in the art upon reading the above description. In this document, as is common in patent literature, the terms "a" or "an" are used to include one or more. In this document, unless otherwise stated, the term "or" is used to mean a non-exclusive "or," such that "A or B" includes "A but not B," "B but not A," and "A and B." In the event of any inconsistency between the usage in this document and that of those documents incorporated by reference, the usage in the incorporated references shall be considered supplementary to the usage in this document; for irreconcilable inconsistencies, the usage in this document supersedes the usage in any incorporated reference.

[0063] While the claimed subject matter has been described with reference to specific embodiments, it will be apparent that various modifications and alterations can be made to these embodiments without departing from the broader spirit and scope of the claims. Therefore, the specification and drawings should be considered illustrative rather than restrictive. The scope of the claims should be determined by reference to the appended claims and the full range of equivalents conferred by such claims. In the appended claims, the terms “including” and “in which” are used as simple English equivalents to the corresponding terms “comprising” and “wherein.” Furthermore, in the appended claims, the terms “including” and “comprising” are open-ended; a system, apparatus, article, or process that includes elements other than those listed in the claims following such terms is still considered to fall within the scope of the claims. Additionally, in the appended claims, the terms “first,” “second,” and “third,” etc., are used only as designations and are not intended to impose numerical requirements on their objects.

[0064] An abstract of this disclosure is provided to comply with 37C.FR §1.72(b), which requires that the reader be able to quickly determine the nature of the technical disclosure. The abstract is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims.

Claims

1. A method for a wireless device, the method comprising: The detection of a first wireless local area network (WLAN) physical layer (PHY) frame received via one or more antennas includes a WLAN acknowledgment (ACK) frame; In response to the detection of the WLAN ACK frame, a first signal level value associated with the first WLAN PHY frame is stored in the memory system; The first signal quality value associated with the first one or more antennas is determined using the first signal level value stored in the memory system during the antenna dwell time and the second signal level value associated with a second WLANPHY frame, which includes one of WLAN beacon frames and WLAN data frames, received via the first one or more antennas. as well as The first signal quality value is used to provide antenna selection determination.

2. The method according to claim 1, wherein, Detecting the WLAN ACK frame includes determining multiple bit values ​​in the header of the WLAN ACK frame that indicate the WLAN ACK frame is an ACK frame.

3. The method according to claim 1, wherein, Storing the first signal level value associated with the first WLAN PHY frame includes determining the first signal level value based on a plurality of bit values ​​in the header of the first WLAN PHY frame.

4. The method according to claim 1, wherein, The first signal quality value indicates the signal-to-noise ratio associated with the first one or more antennas.

5. The method according to claim 1, wherein, Using the first signal quality value to provide antenna selection determination includes at least one of the following: determining the antenna dwell time; and selecting between the first one or more antennas and the second one or more antennas.

6. The method according to claim 5, further comprising: In response to the selection of the second or more antennas or the expiration of the antenna dwell time, a signal is generated to switch the transceiver of the wireless device from being coupled to the first or more antennas to being coupled to the second or more antennas.

7. The method according to claim 1, further comprising: Obtaining a second signal quality value associated with a second one or more antennas, wherein using the first signal quality value to provide the antenna selection determination includes comparing the first signal quality value with the second signal quality value.

8. The method according to claim 7, wherein, The first signal quality value represents the first signal quality associated with the first one or more antennas during a first time period, and the second signal quality value represents the second signal quality associated with the second one or more antennas during a second time period.

9. The method according to claim 1, wherein, Using the first signal quality value to provide the antenna selection determination includes comparing the first signal quality value with a threshold signal quality value.

10. A communication device, comprising: A signal attribute detector, configured to detect a first signal level value associated with a first WLAN physical layer (PHY) frame received via a first antenna, and to detect a second signal level value associated with a second WLAN PHY frame received via the first antenna; Media access control (MAC) logic, configured to: detect that the first WLAN PHY frame includes a WLAN acknowledgment (ACK) frame; And in response to detecting the WLAN ACK frame, storing the first signal level value in memory; and detecting that the second WLAN PHY frame includes one of a beacon frame and a data frame, wherein, in response to detecting one of the beacon frame and the data frame, the MAC logic is configured to store the second signal level value in the memory; and An antenna evaluator configured to: determine a first signal quality value associated with the first antenna using a first signal level value and a second signal level value stored in the memory during the antenna dwell time; and use the first signal quality value to provide an antenna selection determination.

11. The communication device according to claim 10, wherein, The MAC logic is configured to detect the WLAN ACK frame based on multiple bits in the header of the WLAN ACK frame.

12. The communication device according to claim 10, wherein, The MAC logic is configured to determine the first signal level value based on multiple bit values ​​in the header of the first WLANPHY frame.

13. The communication device according to claim 10, wherein, The antenna evaluator is configured to compare the first signal quality value with a reference signal quality value to provide the antenna selection determination, wherein the reference signal quality value is one of a threshold and a second signal quality value associated with the second antenna.

14. The communication device of claim 10, further comprising a transceiver coupled to the signal attribute detector and configured to be coupled to the first antenna and the second antenna, wherein, The antenna evaluator is configured to generate a switching signal based on the antenna selection determination, the switching signal being used to switch the transceiver from being coupled to the first antenna to being coupled to the second antenna.

15. A wireless device, comprising: First antenna and second antenna; Antenna selector; A signal attribute detector, configured to determine a Received Signal Strength Indication (RSSI) value associated with a first packet received via the first antenna; Control logic configured to detect the first packet indicating an acknowledgment (ACK) of a second packet previously sent by the wireless device; as well as An antenna evaluator, wherein, in response to the detection of the ACK by the control logic, the antenna evaluator is configured to use the RSSI value determined during the antenna dwell time and the RSSI value associated with a packet including one of a WLAN beacon frame and a WLAN data frame received via the first antenna to select one of the first antenna and the second antenna via the antenna selector to transmit or receive a third packet.

16. The wireless device according to claim 15, wherein, The antenna evaluator is configured to: use the RSSI value to determine a first signal-to-noise ratio (SNR) value associated with the first antenna; and compare the first SNR value with a reference SNR value, wherein the reference SNR value is one of a threshold SNR value and a second SNR value associated with the second antenna.

17. The wireless device according to claim 15, wherein, The first packet and the second packet are Bluetooth packets, and the control logic includes baseband logic configured to detect the ACK based on one or more bit values ​​in the header of the first packet.

18. The wireless device according to claim 15, wherein, The first and second packets comprise wireless local area network (WLAN) frames, and the control logic comprises media access control logic configured to detect the ACK based on one or more bit values ​​in the header of the first packet.

19. The wireless device according to claim 15, wherein, The control logic is configured to determine the RSSI value based on multiple bit values ​​in the header of the first packet.