The present application is related to commonly owned and assigned Appl. Ser. No. 11/752,184, entitled Bluetooth Access Code Assisted Initial DC Estimation and Frame Synchronization, which is filed on even date herewith and is incorporated herein by reference.
The present invention relates to wireless communication devices and protocols. In particular, but not by way of limitation, the present invention relates to systems and methods for improving the quality and commercial appeal of wireless communications and wireless communication devices.
Wireless communications and wireless communication devices are at the center of many important technological advancements. As the proliferation of these wireless devices increases, the efficiency and accuracy of the communications therebetween becomes vital to the commercial success of particular devices and particular communication protocols. One protocol that is showing great promise is Bluetooth, (The Specification of the Bluetooth System, v1.0 B, Dec. 1, 1999 is incorporated herein by reference) which is a wireless protocol that describes how mobile phones, computers, PDAs, peripherals and other devices can interconnect using short-range wireless connections.
To implement Bluetooth and other such wireless protocols, a device receiving a transmitted signal is required to recover bit patterns carried by the transmitted signal. This recovery process involves waveform demodulation, DC compensation, bit synchronization and bit detection. Waveform demodulation usually is implemented in a radio module and is wireless protocol dependent.
DC compensation typically involves correcting for a DC offset arising during the signal recovery process. This DC offset comprises a variation in the intended DC voltage of the recovered baseline signal caused, for example, by frequency drift in the received Bluetooth signal. Present devices compensate for DC-related imperfections in incoming signals using a variety of means, none of which are completely satisfactory. For example, certain electronic devices use analog components to calculate and track DC offset, while others use digital components. In this regard analog “DC trackers” usually are implemented as lowpass RC filters, while conventional digital approaches generally require a select number of bits to be buffered before any DC offset can be calculated.
The accuracy of the DC tracking performed by both conventional analog and digital circuits is affected by characteristics of the incoming bit patterns. For instance, when a string of high values, e.g., “1s,” is received, the computed DC offset will be adjusted to a higher value even though the actual DC offset has not changed. This is because most approaches to DC tracking automatically assume an even distribution of high and low values in the received signal. In addition, in analog approaches the accuracy of DC tracking and of the associated estimated variance are sensitive to the selected time constants of the analog filters employed. In conventional digital DC tracking techniques, the accuracy of DC tracking and of the associated estimated variance are functions of the selected buffer size.
Present technology suffers drawbacks in addition to those described above. For example, wireless devices generally must also compensate for clock variances and relative transmitter-receiver clock drift that case data frames to be out of synchronization. Present systems for synchronizing frames are slow, require significant hardware, and are not entirely accurate. Accordingly, present systems can waste valuable time and unnecessarily drop frames.
Although present analog and digital approaches to computing DC offsets and synchronizing frames for wireless communications are functional, they are not sufficiently accurate or otherwise satisfactory. Accordingly, a system and method are needed to address the shortfalls of present technology and to provide other new and innovative features.
Exemplary embodiments of the present invention that are shown in the drawings are summarized below. These and other embodiments are more fully described in the Detailed Description section. It is to be understood, however, that there is no intention to limit the invention to the forms described in this Summary of the Invention or in the Detailed Description. One skilled in the art can recognize that there are numerous modifications, equivalents and alternative constructions that fall within the spirit and scope of the invention as expressed in the claims.
In summary, the present invention provides a system and method for addressing problems relating to DC compensation, bit synchronization and bit detection, and may be applied within many different types of wireless receivers. In one aspect the present invention provides a system and method for compensating for DC offset and/or clock drift that impacts the operation of a wireless-enabled device. In one exemplary embodiment, the present invention can include a radio module, an analog-to-digital (A/D) converter, a DC tracking loop, and a multi-hypothesis bit synchronizer (MHBS).
The DC tracking loop, for example, can be a digital emulation of a cascade of two analog one-pole LPFs (low pass filters). The DC tracking loop provides flexibility and stability when compared to conventional one-pole LPFs. Additionally, the DC tracking loop can include a variable time constant to provide responsiveness to DC variations caused by frequency drift over time. The output of the DC tracking loop is a DC offset estimate that can account for long term drift and short term fluctuations.
The second component of this embodiment, the MHBS, is configured to compensate for clock drift and provide bit synchronization and clock control. For example, the MHBS can provide bit synchronization by making multiple timing hypotheses with a one sample offset between the adjacent hypotheses, wherein each hypothesis is based upon an accumulation of the DC compensated data over a symbol period. The MHBS then uses the sign of the accumulation for a particular set of samples as the output bit of that particular hypothesis. For example, the output bit is a “1” when the accumulated sum is positive and a “0” when the accumulated sum is negative.
To determine which of the hypotheses is most likely the correct one, the MHBS averages the absolute value of each hypothesis' accumulated sample sum over time, and compares the averaged sample sums. The hypothesis associated with the maximum averaged sample sum is assumed to be best matched to the true symbol timing. As bit detection, the MHBS outputs the bit output from the hypothesis with the maximum average sample sum.
To overcome long timing drift or random timing jitter causing bit slippage, when the maximum averaged sample sum amplitude is not from the optimal, i.e., an on-time hypothesis, the MHBS can apply a timing control logic to recenter the next symbol time. Assuming that the sample rate is N samples per symbol, when a late hypothesis corresponds to the maximum averaged sample sum, the next symbol time is (N+1) samples later rather than N. Similarly, if an early hypothesis corresponds to the maximum averaged sample sum, the next symbol time is (N−1) samples later. Thus, the MHBS recenters the symbol window in both cases, thereby preventing bit slippage.
As previously stated, the above-described embodiments and implementations are for illustration purposes only. Numerous other embodiments, implementations, and details of the invention are easily recognized by those of skill in the art from the following descriptions and claims.
Various objects and advantages and a more complete understanding of the present invention are apparent and more readily appreciated by reference to the following Detailed Description and to the appended claims when taken in conjunction with the accompanying Drawings wherein:
Referring now to the drawings, where like or similar elements are designated with identical reference numerals throughout the several views, and referring in particular to
Although only a computer 110, a PDA (personal digital assistant) 115, cell phone 120 and peripheral device 125 are illustrated, implementations of the present invention can include any type of wireless-enabled device and should not be limited to those devices shown. Moreover, the receiver modules 105 in these various devices can include, for example, ASICs (application specific integrated circuits), software instructions, general purpose processors, or any combination thereof.
To determine which hypotheses' output bit is likely the correct one, the absolute value of each hypothesis' sample sum is averaged over time—called the averaged sample sum. This computation is represented by
E(k)=|SSE(k)|
O(k)=|SSO(k)|
L(k)=|SSL(k)|
Ē(k)=b·E(k)+(1−b)Ē(k−1)
Ō(k)=b·O(k)+(1−b)Ō(k−1)
In an exemplary implementation, hardware complexity is reduced by implementing the multiplication operations in the above expressions as bit shift operations. For example, if one lets b=½β, then multiplication of a quantity by the parameter b may instead be effected through a bit shift operation “>>” as follows:
b·y=(y>>β)
where the parameter β is used to control the integration time.
A three-way comparison is then made between the averaged sample sums, and the hypothesis that corresponds to the maximum averaged sample sum is assumed to be the one best matched to the true symbol timing. The final output bit value is the bit output from the hypothesis with the maximum average sample sum amplitude.
The above set of operations are normally repeated every N samples, which is the nominal symbol rate. However, to overcome long timing drift or random timing jitter that can cause bit slippage, when the maximum average sample sum amplitude is not from the on-time hypothesis, a timing control logic can be applied to change the next symbol time. For example, when the late hypothesis corresponds to the maximum averaged sample sum, the next symbol time is (N+1) samples later rather than N. Similarly, when the early hypothesis corresponds to the maximum averaged sample sum, the next symbol time is (N−1) samples later. By adjusting the symbol time, the symbol window is recentered, and bit slippage is prevented.
Adjusting the symbol timing can impact the computation of the next averaged sample sum. However, to keep the correct averaging operation, the MHBS 150 can perform a memory swap between the feedback values of the three integrators as dictated by the direction of the rotation toward the center, e.g., the on-time sample hypothesis. For example, if the early hypothesis is the maximum, the memory swap is represented by
tmp=
Ō(k−1)=Ē(k−1)
Ē(k−1)=tmp.
As can be appreciated by those skilled in the art, the direction of the memory swap is reversed if the late hypothesis instead of the early hypothesis is determined to correspond to the maximum averaged sample sum.
Referring now to
z1(k)=ax(k)+(1−a)z(k−1)
z2(k)=az1(k)+(1−a)z2(k−1)
where x(k) comprises a balanced input sample (i.e., between the quantites +X and −X), and where a is the loop time constant. Again, letting a=1/2α, then a bit shift operation “>>” may be substituted for multiplication as follows:
a·y=(y>>α)
The operation of the DC tracking loop 145 is illustrated by reference to the flowchart in
Next, the output from shifter 165 is provided to adder 170. The other input to adder 170 comes from a scaled feedback value, wherein the feedback value is z(k−1), where z(k) is represented by
In other words, the other input to adder 170 is the output from adder 180, which takes the difference between z(k−1) and the value of z(k−1) after being downshifted by “α” bits within shifter 185 (step 240 and 245).
The output from adder 170 is z1, which can be expressed as
z1(k)=(x(k)>>α)+z(k−1)−(z(k−1)>>α).
The output from adder 170, z1, is provided to shifter 190 where it is downshifted by α bits and provided a first of the inputs to adder 195 (step 245). The output from adder 195 is z2(k), which can be expressed as
z2(k)=(z1(k)>>α)+z2(k−1)−(z2(k−1)>>α).
(z2(k−1)>>α)
As shown in
Referring now to
If k is the current sample time index and y(i)'s are the input samples to the MHBS 150, the three sample sums corresponding to the early, on-time and late sample hypotheses are respectfully represented as:
To determine which hypothesis' output bit is most likely correct, as an approximation to the maximum likelihood estimation, the absolute value of each hypothesis' accumulation (also called a sample sum) is averaged over time. This is represented by
E(k)=|SSE(k)|
O(k)=|SSO(k)|
L(k)=|SSL(k)|
Ē(k)=(E(k)>>β)+Ē(k−1)−(Ē(k−1)>>β)
Ō(k)=(O(k)>>β)+Ō(k−1)−(Ō(k−1)>>β)
where the parameter β is used to control the integration time.
As previously described, the max calculator 285 performs a comparison between the averaged sample sums. The hypothesis associated with the maximum averaged sample sum is assumed to be the one best matched to the true symbol timing, and the final output bit value—the “symbol” output of FIG. 7—is the bit output from the hypothesis with the maximum average sample sum.
To overcome long timing drift or random timing jitter causing bit slippage, when the maximum averaged sample sum amplitude is not from the optimal, e.g., an on-time sample hypothesis, the symbol clock control 290 recenters the next symbol time. Assuming that the sample rate is N samples per symbol, when the late sample hypothesis corresponds to the maximum averaged sample sum, the next symbol time is (N+1) samples later rather than N. Similarly, if an early hypothesis corresponds to the maximum averaged sample sum, the next symbol time is (N−1) samples later.
In conclusion, the present invention provides, among other things, a system and method for compensating for DC offset and for clock drift and jitter. Those skilled in the art can readily recognize that numerous variations and substitutions may be made in the invention, its use and its configuration to achieve substantially the same results as achieved by the embodiments described herein. Accordingly, there is no intention to limit the invention to the disclosed exemplary forms. Many variations, modifications and alternative constructions fall within the scope and spirit of the disclosed invention as expressed in the claims.
This patent application is a CONTINUATION of U.S. patent application Ser. No. 10/035,567, filed on Oct. 22, 2001. The above-identified application is hereby incorporated by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
5566214 | Kroeger et al. | Oct 1996 | A |
5568520 | Lindquist et al. | Oct 1996 | A |
5629960 | Dutkiewicz et al. | May 1997 | A |
5640416 | Chalmers | Jun 1997 | A |
5644600 | Kawai | Jul 1997 | A |
5654991 | Andren et al. | Aug 1997 | A |
5724384 | Kim et al. | Mar 1998 | A |
5768323 | Kroeger et al. | Jun 1998 | A |
5818544 | Han | Oct 1998 | A |
5844935 | Shoji | Dec 1998 | A |
5867525 | Giallorenzi et al. | Feb 1999 | A |
6141372 | Chalmers | Oct 2000 | A |
6229839 | Levin et al. | May 2001 | B1 |
6236648 | Umetsu | May 2001 | B1 |
6370205 | Lindoff et al. | Apr 2002 | B1 |
6643336 | Hsieh et al. | Nov 2003 | B1 |
6873666 | Chen | Mar 2005 | B2 |
7136447 | Chen et al. | Nov 2006 | B2 |
Number | Date | Country | |
---|---|---|---|
20070230623 A1 | Oct 2007 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10035567 | Oct 2001 | US |
Child | 11759001 | US |