Disclosed aspects are related to wireless communications. More specifically, exemplary aspects are related to adapting acquisition thresholds in receivers for wireless signals such as Bluetooth, Bluetooth Low Energy (BLE), etc., based on received signal strength of the wireless signals.
A wireless communication device which may be compatible with wireless signals such as Bluetooth, BLE, etc., may include mechanisms to receive compatible wireless signals, detect whether a received wireless signal is a “wanted signal” or a signal intended for the wireless communication device, and if the received signal is a wanted signal, then decode the wanted signal for further processing. Specifically, in the case of a receiver configured to receive Bluetooth or BLE signals, the receiver may store a device identifier corresponding to a “wanted device” or a device that the receiver wants to receive wireless signals from. Data packets in the received Bluetooth or BLE signals (e.g., a Bluetooth packet or a BLE packet, respectively) also include a device identifier of the device that transmitted the data packets (wherein, the device identifiers are referred to as a “SyncWord” or “AccessAddress” in the protocols used for Bluetooth packets and BLE packets, respectively).
Correlation between a received signal and the device identifier of a wanted device is computed, for example, using a correlator in the receiver. The computed correlation is compared with an acquisition threshold to determine whether the correlation is high or low. If the computed correlation is high, then the received signal is determined as being a wanted signal or from a wanted device, and the received signal may be processed further by the receiver; and if the computed correlation is low, then the received signal is determined to be an “unwanted signal” or not from a wanted device, and further processing of the received signal may be avoided.
However, false determinations of wanted or unwanted signals are possible based, among other factors, on the acquisition threshold. For example, if a received signal is in fact a wanted signal but the received signal is noisy (or has a low signal-to-noise ratio (SNR), as known in the art), the computed correlation may be low due to the noise. Thus, when compared with the acquisition threshold, the received signal may be deemed as an unwanted signal. In order to avoid this, conventional receivers design their acquisition threshold to be optimized for received signals with low SNRs. But an acquisition threshold optimized for low SNR signals may not be well-suited for received signals with high SNRs. This is because it is possible for some received signals with high SNRs to be falsely determined as wanted or unwanted based on a comparison of their corresponding computed correlation with an acquisition threshold designed for received signals with low SNRs. Although the rate of such false determination (or error rate) may be low, it nevertheless sets an undesirable error floor. Due to the packet format of BLE signals, the error floor may be higher for detection of BLE signals in comparison with detection of Bluetooth signals.
Accordingly, it is desirable to lower or eliminate the error floor, and more generally to optimize performance of the Bluetooth and BLE receivers across the various ranges of SNRs of received Bluetooth or BLE signals.
Exemplary aspects are directed to systems and methods for operating a receiver of wireless signals such as Bluetooth or Bluetooth Low Energy (BLE) signals. A correlator is provided to correlate a wireless signal received by the receiver, with a device identifier (e.g., of a wanted device) to generate a correlator output. An adaptive acquisition threshold generator generates an adaptive acquisition threshold based on a signal strength of the wireless signal, and a comparator is used to determine if the wireless signal is a wanted signal intended for the receiver, based on a comparison of the correlator output with the adaptive acquisition threshold.
For example, an exemplary aspect is directed to apparatus comprising a correlator configured to correlate a wireless signal received by the apparatus, with a device identifier to generate a correlator output. The apparatus further comprises an adaptive acquisition threshold generator configured to generate an adaptive acquisition threshold based on a signal strength of the wireless signal, and a comparator configured to determine if the wireless signal is a wanted signal intended for the apparatus, based on a comparison of the correlator output with the adaptive acquisition threshold.
Another exemplary aspect is directed to a method of operating a receiver of wireless signals, the method comprising receiving a wireless signal, correlating the wireless signal with a device identifier, to generate a correlator output, generating an adaptive acquisition threshold based on a signal strength of the wireless signal, and comparing the correlator output with the adaptive acquisition threshold to determine if the wireless signal is a wanted signal intended for the receiver.
Another exemplary aspect is directed to a system comprising means for receiving a wireless signal, means for correlating the wireless signal with a device identifier, means for generating an adaptive acquisition threshold based on a signal strength of the wireless signal, and means for comparing an output of the means for correlating with the adaptive acquisition threshold, for determining if the wireless signal is a wanted signal for the means for system.
Yet another exemplary aspect is directed to a non-transitory computer-readable storage medium comprising code, which, when executed by a processor, causes the processor to perform functions for operating a receiver, the non-transitory computer-readable storage medium comprising code for receiving a wireless signal, code for correlating the wireless signal with a device identifier, to generate a correlator output, code for generating an adaptive acquisition threshold based on a signal strength of the wireless signal, and code for comparing the correlator output with the adaptive acquisition threshold to determine if the wireless signal is a wanted signal for the receiver.
The accompanying drawings are presented to aid in the description of aspects of the disclosure and are provided solely for illustration and not limitations thereof.
Specific examples of the disclosure are described in the following description and related drawings. Alternate examples may be devised without departing from the scope of the disclosure. Additionally, well-known elements will not be described in detail or will be omitted so as not to obscure the relevant details of the disclosure.
The word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any aspect described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects. Likewise, the term “aspects” does not require that all aspects include the discussed feature, advantage, or mode of operation.
The terminology used herein is for the purpose of describing particular aspects only and is not intended to be limiting of the aspects. As used herein, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises,” “comprising,” “includes,” or “including,” when used herein, specify the presence of stated features, integers, steps, operations, elements, or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or groups thereof. Moreover, it is understood that the word “or” has the same meaning as the Boolean operator “OR,” that is, it encompasses the possibilities of “either” and “both” and is not limited to “exclusive or” (“XOR”), unless expressly stated otherwise. It is also understood that the symbol “/” between two adjacent words has the same meaning as “or” unless expressly stated otherwise. Moreover, phrases such as “connected to,” “coupled to,” or “in communication with” are not limited to direct connections unless expressly stated otherwise.
Further, many aspects are described in terms of sequences of actions to be performed by, for example, elements of a computing device. It will be recognized that various actions described herein can be performed by specific circuits, for example, central processing units (CPUs), graphic processing units (GPUs), digital signal processors (DSPs), application-specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), or various other types of general purpose or special purpose processors or circuits, by program instructions being executed by one or more processors, or by a combination of both. Additionally, the sequence of actions described herein can be considered to be embodied entirely within any form of computer-readable storage medium having stored therein a corresponding set of computer instructions that upon execution would cause an associated processor to perform the functionality described herein. Thus, the various aspects of the disclosure may be embodied in a number of different forms, all of which have been contemplated to be within the scope of the claimed subject matter. In addition, for each of the aspects described herein, the corresponding form of any such aspects may be described herein as, for example, “logic configured to” perform the described action.
Exemplary aspects of this disclosure pertain to a receiver of wireless signals, the receiver comprising an acquisition block configured to provide an adaptive acquisition threshold based on a signal strength of a wireless signal received by the receiver. More specifically, the wireless signal may be a Bluetooth or BLE signal, wherein the acquisition threshold can be varied based on a received signal strength indications (RSSI) of the received signal. In this manner, the acquisition threshold can be increased or decreased, to improve detection and determination of whether a received signal is a wanted signal or an unwanted signal, wherein the signal strength or SNR of the received signal can vary from low to high. An error floor, as previously discussed in conventional receivers, can be eliminated or lowered, by adapting the acquisition threshold to the SNRs, or in exemplary implementations, the RSSI of the received signal.
As used in this disclosure, the term “wanted signal” refers to a wireless signal such as Bluetooth or BLE received by the receiver from a “wanted device.” As previously explained, the wanted device is a wireless communication device that the receiver intends to or wants to receive wireless signals from. A wanted device may have an associated device identifier (e.g., SyncWord in the case of Bluetooth signals or AccessAddress in the case of BLE signals) which may be stored in the receiver. The receiver may have a correlator to correlate a wireless signal received by the receiver with the device identifier stored in the receiver in the process of determining whether or not the wireless signal is a wanted signal. These and other exemplary aspects will be explained in further detail with reference to the figures, in the following sections.
With reference now to
With reference now to
In further detail, SyncWord 204 may be a device identifier used by receiver 112 (e.g., within acquisition block 120) to detect whether a received signal is a wanted signal, or more specifically, whether a received Bluetooth packet comprises Bluetooth AccessCode 200 corresponding to a wanted device. SyncWord 204 may also be optionally used for synchronization of frequency and/or time, including, for example, carrier frequency offset and/or symbol timing (e.g., functions which may be performed in demodulator 116 of
With reference now to
In further detail, in the case of BLE packet 250, AccessAddress 254 may be a device identifier used by a receiving device (e.g., in acquisition block 120 of receiver 112) to determine whether a received BLE packet 250 is a packet of a wanted signal (i.e., AccessAddress 254 corresponds to the device identifier of a wanted device). In some instances, AccessAddress 254 may also be optionally used for synchronization of frequency and/or time, including, for example, carrier frequency offset and/or symbol timing (e.g., functions which may be performed in demodulator 116 of
In order to improve the correct determination of received signals, e.g., Bluetooth and/or BLE, as wanted signals or unwanted signals, exemplary aspects include an adapting acquisition threshold based on signal strength of the received signals. To explain these aspects, a further detailed description of receiver 112, and more specifically, features of acquisition block 120 will now be provided.
With reference to
Received signal 304 is provided to correlator 302 for correlating received signal 304 with a device identifier (e.g., of a wanted device). Although not specifically shown, correlator 302 may include or have access to a memory or storage device comprising the device identifier. Correlator 302 may be configured to correlate received signal 304 with the device identifier. The correlation may be performed using any correlation function (e.g., a matched filter) to determine the correlation between received signal 304 and the device identifier.
An output of correlator 302 is identified as correlator output 306, wherein correlator output 306 quantifies a match between the received signal and the device identifier (e.g., an expected SyncWord or AccessAddress of a wanted device). Using conventional correlation functions such as a matched filter, correlator output 306 may be at its maximum magnitude when, for example, a bit pattern (or waveform) of the received signal matches a bit pattern (or waveform) of the device identifier (while keeping in mind that in some implementations, at its maximum magnitude, correlator output 306 may also satisfy other considerations such as a bit or symbol transition times between received signal 304 and receiver 112 being synchronized, a modulation index matches the transmitter modulation index for received signal 304, inter symbol interference is accounted for by correlator 302, etc.). A bit pattern (or waveform) match occurs when a received packet (e.g., a Bluetooth or BLE packet) of received signal 304 is intended for receiver 112 (i.e., received signal 304 is a wanted signal), while bit transition times are synchronized at a convolution time step where a matched filter signal output may be at its highest. Therefore, in determining whether a received packet is a packet of a wanted signal, correlator output 306, at its maximum value, for example, may be compared with an acquisition threshold value. As previously explained, the optimum acquisition threshold value for a particular received signal 304 may vary based on the signal's noisiness. Therefore, in exemplary aspects, the acquisition threshold value may be adapted to the strength of a received signal.
Adaptive acquisition threshold generator 308 is provided in the acquisition block 120 to generate adaptive acquisition threshold 310 based on signal strength of received signal 304, as explained further with reference to
Comparator 312 is configured to receive adaptive acquisition threshold 310, as well as correlator output 306 and perform a comparison between adaptive acquisition threshold 310 and correlator output 306. If correlator output 306 is greater than adaptive acquisition threshold 310, comparator 312 asserts the signal depicted as wanted signal 318 at its output to indicate that the received signal 304 contains a packet of a wanted signal directed to or intended for receiver 112.
The blocks depicted as packet detector 320, symbol timing estimator 328, and carrier frequency offset estimator 330 will now be discussed briefly, while keeping in mind that exhaustive details of these blocks are beyond the scope of this disclosure. Based on the assertion of wanted signal 318, packet detector 320 can start a process of detecting a peak of the correlator output 306. Once the peak of the correlator output 306 has been detected, packet detector 320 asserts, at its output, the signal, packet detected 326. Based on packet detected 326, symbol timing estimator 328 may estimate the symbol timing of Bluetooth and/or BLE symbols and carrier frequency offset estimator 330 may estimate the carrier frequency offset of Bluetooth and/or BLE signals.
With reference to
With reference to
With continuing reference to
RSSI 506 is compared with each of the RSSI thresholds RSSI_TH1, RSSI_TH2, . . . RSSI_THN in corresponding N RSSI threshold comparators 508_1, 508_2, . . . 508_N. If RSSI 506 is greater than one or more of RSSI thresholds RSSI_TH1, RSSI_TH2, . . . RSSI_THN, then the corresponding one or more RSSI threshold comparators 508_1, 508_2, . . . 508_N will output “1” on their corresponding RSSI threshold comparison outputs 510_1, 510_2, . . . 510_N. Otherwise, RSSI threshold comparators 508_1, 508_2, . . . 508_N which determine that RSSI 506 is less than their corresponding RSSI thresholds RSSI_TH1, RSSI_TH2, . . . RSSI_THN, will output “0” on their corresponding RSSI threshold comparison outputs 510_1, 510_2, . . . 510_N.
Thus, for example, if RSSI 506 is less than the least RSSI threshold RSSI_TH1, then RSSI 506 is less than all of RSSI thresholds RSSI_TH1, RSSI_TH2, . . . RSSI_THN, which means that all of RSSI threshold comparators 508_1, 508_2, . . . 508_N will output their corresponding RSSI threshold comparison outputs 510_1, 510_2, . . . 510_N as “0”s. Similarly, if RSSI 506 is greater than the largest RSSI threshold RSSI_THN, then RSSI 506 is greater than all of RSSI thresholds RSSI_TH1, RSSI_TH2, . . . RSSI_THN, which means that all of RSSI threshold comparators 508_1, 508_2, . . . 508_N will output their corresponding RSSI threshold comparison outputs 510_1, 510_2, . . . 510_N as “1”s. If RSSI 506 is greater than a first subset of one or more of the RSSI thresholds RSSI_TH1, RSSI_TH2, . . . RSSI_THN, but less than a second subset of one or more of the RSSI thresholds RSSI_TH1, RSSI_TH2, . . . RSSI_THN, then a corresponding first subset of RSSI threshold comparators 508_1, 508_2, . . . 508_N will output their corresponding first subset of RSSI threshold comparison outputs 510_1, 510_2, . . . 510_N as “1”s, while a second subset of RSSI threshold comparators 508_1, 508_2, . . . 508_N will output their corresponding second subset of RSSI threshold comparison outputs 510_1, 510_2, . . . 510_N as “0”s.
As illustrated in
Also shown in
With reference now to
With continuing reference to
If, on the other hand, in Block 608, it is determined that correlator output 306 is greater than adaptive acquisition threshold 310, then a wanted signal is detected, e.g., wanted signal 318 is asserted. In this case, process 600 proceeds to Block 610, wherein correlator 302 is continued to run along with packet detector 320 to detect the peak of correlator output 306. In Block 612, a determination is made as to whether the peak of correlator output 306 has been detected, e.g., if packet detected 326 is asserted. If the peak of correlator output 306 packet is not detected, then process 600 returns to Block 610 to continue the processes running correlator 302 along with packet detector 320, until the peak of correlator output 306 is detected, e.g., packet detected 326 is asserted.
If packet detected 326 is asserted in Block 612, then symbol timing and carrier frequency offset estimations may be performed in Block 614, e.g., in symbol timing estimator 328 and carrier frequency offset estimator 330, respectively.
Accordingly, it will be appreciated that exemplary aspects include various methods for performing the processes, functions and/or algorithms disclosed herein. For example,
In Block 702, method 700 comprises receiving a wireless signal (e.g., received signal 304).
Block 704 comprises correlating (e.g., in correlator 302) the wireless signal with a device identifier (e.g., a SyncWord or AccessAddress, for Bluetooth or BLE signals, respectively, of a wanted device, wherein the device identifier may be stored in receiver 112), to generate a correlator output (e.g., correlator output 306).
Block 706 comprises generating an adaptive acquisition threshold (e.g., adaptive acquisition threshold 310 generated by adaptive acquisition threshold generator 308) based on a signal strength of the wireless signal (e.g., RSSI 306).
Block 708 comprises comparing (e.g., in comparator 312) the correlator output with the adaptive acquisition threshold to determine if the wireless signal is a wanted signal intended for the receiver (e.g., the wireless signal is determined to be a wanted signal if the correlator output is greater than the adaptive acquisition threshold).
Accordingly, it will be appreciated that aspects of this disclosure may relate to a system (e.g., wireless communication system 100 or, specifically, receiver 112 of
An example configuration of receiver 112 will now be discussed in relation to
In a particular aspect, input device 830 and power supply 844 are coupled to the system-on-chip device 822. Moreover, in a particular aspect, as illustrated in
It should be noted that although
Those of skill in the art will appreciate that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
Further, those of skill in the art will appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the claimed subject matter.
The methods, sequences and/or algorithms disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor.
Accordingly, aspects of the claimed subject matter may include a non-transitory computer-readable media embodying a method for adapting acquisition threshold to received signal strength of wireless signals such as Bluetooth or BLE. Accordingly, the claimed subject matter is not limited to illustrated examples.
While the foregoing disclosure shows illustrative aspects of the claimed subject matter, it should be noted that various changes and modifications could be made herein without departing from the scope of the claimed subject matter. The functions, steps and/or actions of the method claims in accordance with the description herein need not be performed in any particular order. Furthermore, although aspects of the claimed subject matter may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.