1. Technical Field
The disclosure relates to a delay-locked loop scheme.
2. Description of the Prior Art
When a conventional delay-locked loop (DLL) circuit is applied into the spread spectrum code communication system, ideally, the code phase delay of a spread spectrum code signal can be precisely estimated. However, due to limited inherent circuitry or external environments, practically, it is impossible to achieve the objective of precisely estimating such code phase delay of the spread spectrum code signal. Thus, there is a major defect that the conventional DLL circuit is incapable of precisely estimating the code phase delay.
Therefore, one of the objectives of the disclosure is to provide an apparatus and related method capable of precisely estimating the code phase delay of a received spread spectrum code signal for performing a delay-locked loop operation, to solve the above-mentioned problems.
In an exemplary embodiment, an apparatus for performing delay-locked loop operation on a received signal is disclosed. The received signal is a spread spectrum code signal. The apparatus comprises a spread spectrum code generating circuit, a calculating circuit, and an adjusting circuit. The spread spectrum code generating circuit is utilized for generating a plurality of replica spread spectrum signals according to an estimated code phase delay and phase spacing, wherein the replica spread spectrum code signals have phases respectively different from the phase of the received signal. The calculating circuit is coupled to the spread spectrum code generating circuit and utilized for receiving the replica spread spectrum code signals and the received signal, and for calculating a spread spectrum code error statistics signal according to the replica spread spectrum code signals and the received signal. The adjusting circuit is coupled to the calculating circuit and the spread spectrum code generating circuit and utilized for adjusting the estimated code phase delay according to the spread spectrum code error statistics signal and a phase difference between a sampled point of at least one replica spread spectrum code signal and a corresponding signal transition point.
In an exemplary embodiment, in addition to performing an integration operation on multiple replica spread spectrum code signals and feeding back the integration results to adjust an estimated code phase delay, the apparatus further refers to a phase difference between one sample point of at least one replica spread spectrum code signal and the signal transition point (i.e. a chip transition boundary) for finely calibrating the estimated code phase delay, so as to achieve more precise estimation for the estimated code phase delay.
These and other objectives of the disclosure will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the embodiment that is illustrated in the various figures and drawings.
Please refer to
The received signal S_R can be represented by the following equation:
S—R=c(t−τ)+n(t)
wherein c(t) is a spread spectrum code signal, n(t) is an additive noise signal due to the environment, and τ is the actual code phase delay of the spread spectrum code signal. In practice, the replica spread spectrum code signals S_E, S_P, and S_L generated by the spread spectrum code generating circuit 105 can be represented by the following equations:
S—E=c—LO(t−{circumflex over (τ)}+Δ)
S—P=c—LO(t−{circumflex over (τ)})
S—L=c—LO(t−{circumflex over (τ)}−Δ)
wherein c_LO (t) is a local spread spectrum code signal generated by the spread spectrum code generating circuit 105, {circumflex over (τ)} is the estimated spread spectrum code phase delay, and Δ is the phase spacing. Therefore, the replica spread spectrum code signals S_E, S_P, and S_L have phases that are respectively different from the phase of the received signal S_R. The phase difference between the replica spread spectrum code signals S_E and S_P is the same as the phase spacing Δ, and the phase difference between the replica spread spectrum code signals S_P and S_L is also the same as the phase spacing Δ.
In addition, the calculating circuit 110 comprises multiple multipliers 1105a-1105c, a statistic unit 1110, an error calculating unit 1115, and a loop filter 1120. The replica spread spectrum code signals S_E, S_P, and S_L are respectively inputted into the multipliers 1105a-1105c, and the multipliers 1105a-1105c are arranged to respectively receive the signal S_R and then used for respectively doing multiplication of the received signal S_R and each of the replica spread spectrum code signals S_E, S_P, and S_L. The statistic unit 1110 is arranged to perform integrations on the multiplied resultant signals to generate different integration results I_E, I_P, and I_L. The error calculating unit 1115 is arranged to receive the integration results I_E, I_P, and I_L and to derive the spread spectrum code error statistics signal S_error by referring to the received integration results I_E, I_P, and I_L. In practice, the spread spectrum code error statistics signal S_error is determined by an equation associated with the received integration results I_E, I_P, and I_L such as
However, it should also be understood that there is no intention to limit the disclosed concept to the exemplary embodiments. It is assumed that noise n(t) introduced into the received signal S_R is extremely small and insignificant to require consideration. It is also assumed that the frequency of the spread spectrum code is maintained at a predetermined and fixed chip rate. According to the above-mentioned assumptions, the signal c_LO(t) can be regarded as the signal c(t). Therefore, the integration results I_E, I_P, and I_L can be respectively represented by the following auto-correlation functions:
In addition, if the estimated spread spectrum code phase delay {circumflex over (τ)} is exactly equal to the actual code phase delay τ, then the integration results I_E, I_P, and I_L can be respectively represented by the following equations:
I—E=R({circumflex over (τ)}−τ−Δ)=R(−Δ)
I—P=R({circumflex over (τ)}−τ)=R(0)
I—L=R({circumflex over (τ)}−τ+Δ)=R(Δ)
In accordance with the properties of the auto-correlation function, ideally, the auto-correlation function is symmetry. That is, R(Δ)=R(−Δ). Under this condition, the integration results I_E and I_L are equal to each other so that the spread spectrum code error statistics signal S_error
derived by the error calculating unit 1115 is equal to zero. After being processed by high-frequency noise rejection of the loop filter 1120, the spread spectrum code error statistics signal S_error is transmitted and inputted to the adjusting circuit 115. Ideally, due to the symmetry property of the auto-correlation function, the spread spectrum code error statistics signal S_error is zero. However, in practical applications, the spread spectrum code error statistics signal S_error may not be zero even though the estimated spread spectrum code phase delay {circumflex over (t)} is exactly equal to the actual code phase delay τ. This is because a spread spectrum code signal is formed by a series of discrete binary bits. In other words, the spread spectrum code signal is a sampled time-discontinuous signal rather than a time-continuous signal. Since the spread spectrum code signal is processed by sampling, a value of a chip sample point obtained based on an estimated spread spectrum code phase delay {circumflex over (τ)} may be the same as that obtained based on another different estimated spread spectrum code phase delay {circumflex over (τ)}. Thus, the auto-correlation function generated from the spread spectrum code signal includes asymmetry property. This leads to that the spread spectrum code error statistics signal S_error is not zero even if the estimated spread spectrum code phase delay {circumflex over (τ)} is exactly equal to the actual code phase delay τ.
Please refer to
Since the spread spectrum code phase error statistics signal S_error may depart from zero due to the signal physical characteristics, for preventing the code phase delay estimation operation of the spread spectrum code generating circuit 105 from influenced by the signal S_error, the adjusting circuit 115 in this embodiment is further arranged with reference to phase differences between the sample points of at least one replica spread spectrum code signal and the signal transition points to adjust the estimated code phase delay {circumflex over (τ)} in addition to the spread spectrum code phase error statistics signal S_error. In practice, the adjusting circuit 115 is utilized for adjusting the estimated code phase delays {circumflex over (τ)} in the replica spread spectrum code signals S_E, S_P, and S_L by referring to phase differences between all the signal transition points (i.e. chip transition boundaries) of each chip in the signals S_E, S_P, S_L and the corresponding sample points adjacent/near to the signal transition points. Such chip transition boundaries of each chip include the left chip transition boundary and the right chip transition boundary. Such left and right chip transition boundaries can be regarded as a first signal transition point that the signal transits from a first level to a second level, and a second signal transition point that the signal transits from the second level to the first level, respectively. For example, as shown in
In practice, the adjusting circuit 115 comprises an estimation unit 1150 and an adjusting unit 1155. For each chip of the replica spread spectrum code signals S_E, S_P, and S_L, the estimation unit 1150 firstly detects a first sample point and a second sample point S2 from a plurality of sample points in this chip where the first sample point S1 is adjacent to the first signal transition point T1 and the second sample point S2 is adjacent to the second signal transition point T2. Then, the estimation unit 1150 respectively calculates a first phase difference d1 and a second phase difference d2 where the first phase difference d1 is the phase difference between the first sample point S1 and first signal transition point T1 and the second phase difference d2 is the phase difference between the second sample point S2 and the second signal transition point T2. After the calculation of the estimation unit 1150, the adjusting unit 1155 refers to the first and second phase differences d1 and d2 to calibrate/tune the estimated code phase delay {circumflex over (τ)}.
Please refer to
Adjusting the positions of the sample points ahead or behind is dependent upon the phase differences d1 and d2. For example, in this embodiment, if the amount of the phase difference d1 is larger than that of the phase difference d2, implying that the phase offset is a maximum acceptable phase offset that the code chips can be shifted ahead and the above-mentioned auto-correlation functions are not changed. Thus, the phases of the code chips are arranged to be shifted ahead by phase tuning. In contrast, if the amount of the phase difference d1 is smaller than that of the phase difference d2, then this implies the phase offset is a maximum acceptable phase offset that the code chips can be shifted behind and the above-mentioned auto-correlation functions are not changed. Thus, the phases of the code chips are arranged to be shifted behind by phase tuning.
In practice, the estimation unit 1150 is arranged to select a minimum phase difference as d1 from all the first phase differences of multiple code chips in the replica spread spectrum code signals S_E, S_P, and S_L, and to select a minimum phase difference as d2 from all the second phase differences of these code chips. The estimation unit 1150 is then arranged to calculate a difference between the phase differences d1 and d2 and to divide such difference by two to derive a phase offset used as the target offset by which the sample points in the code chips are tuned. By selecting minimum phase differences as d1 and d2 from the first and second phase differences respectively, it can be achieved that there is least probability which the above-mentioned auto-correlation functions are changed due to the code phase delays introduced into the code chips of the replica spread spectrum code signals S_E, S_P, and S_L. That is, first, the estimation unit 1150 is utilized for respectively detecting a first sample point and a second sample point where the first sample point of a plurality of sample points is adjacent to the first signal transition points and the second sample point of all the sample points is adjacent to the second signal transition points. Then, the estimation unit 1150 is used for respectively calculating a first phase difference and a second phase difference where the first phase difference is between the first sample point and a first signal transition point corresponding to the first sample point and the second phase difference is between the second sample point and a second signal transition point corresponding to the second sample point.
The adjusting unit 1155 is utilized for referring to the target phase offset
derived based on the phase differences d1 and d2 to tune the phases of the replica spread spectrum code signals S_E, S_P, and S_L, so as to achieve the objectives of adjusting the phases of the sample points in code chips of the replica spread spectrum code signals S_E, S_P, and S_L. The operation of tuning the phases ahead or behind is described as above, and is not detailed again for brevity. In addition, it should be noted that the sample point S1 in the code chip 305 and the sample point in the code chip 310 are merely used as an example for illustrative purposes, and are not intended to be limitations of the present invention. It is possible for the minimum phase difference d1 corresponding to the sample point S1 to be found in another code chip in another embodiment. Similarly, it is also possible for the minimum phase difference d2 corresponding to the sample point S2 to be found in another code chip in another embodiment. In addition, the minimum phase differences d1 and d2 may be found in the same code chip in another embodiment. These modifications and results all fall within the scope of the present invention.
Furthermore, in another embodiment, for saving loading of the estimation, the estimation unit 1150 can be arranged to perform sample point detection as mentioned above on the sample points of only one replica spread spectrum code signal, i.e. one of the signals S_E, S_P, and S_L, and then estimate the target phase offset based on results of the sample point detection. Additionally, in another embodiment, the estimation unit 1150 can be arranged to perform the sample point detection on partial sample points of the replica spread spectrum code signals S_E, S_P, and S_L, and then estimate the target phase offset based on results of the sample point detection. Further, the estimation unit 1150 can be arranged to perform the sample point detection on partial sample points in only one of the replica spread spectrum code signals S_E, S_P, and S_L, and then estimate the target phase offset based on results of the sample point detection.
In addition, the estimation unit 1150 can be arranged to estimate a phase difference by merely detecting a sample point closest to one chip boundary of a code chip, without detecting sample points adjacent to the two chip boundaries of the same code chip to estimate two phase differences. The adjusting unit 1155 can also be arranged to refer to such phase difference for appropriately tuning the estimated code phase delay {circumflex over (τ)}. In addition, the estimation unit 1150 can be arranged to refer to sample point (s) near to (but not adjacent to) the chip boundary for generating the phase differences. That is, in implementation, it is not necessary to refer to the sample points closest to the chip boundaries for generating the phase differences. The embodiments and related design modification mentioned above are all associated with fine tuning the phases (i.e. the estimated code phase delay {circumflex over (τ)}) of the replica spread spectrum code signals S_E, S_P, and S_L. Thus, such embodiments and design modifications all fall within the scope of the present invention.
In above embodiments, each spread spectrum code signal is implemented by a square wave signal. In another embodiment, each spread spectrum code signal can be implemented by a triangle wave signal to reduce calculation errors resulting from sampling errors when the statistic unit 1110 calculates the integration results I_E, I_P, and I_L. This is because the rising edge and falling edge of the square wave signal are too sharp. If sample point (s) is/are shifted to cross one chip boundary (i.e. one signal transition point) due to a code phase delay, it is very possible for the integration operation to be affected by more sampling errors which is generated due to the sample point(s) being shifted to cross one chip boundary of a square wave signal. However, if a triangle wave signal or another waveform signal having smother rising and falling edges is used to replace the square wave signal, then the integration operation would not be affected by sampling errors which is generated due to the sample point (s) being shifted to cross one chip boundary of a triangle wave signal. Thus, by using the triangle wave signal, the spread spectrum code generating circuit 105 can generate more precise estimated spread spectrum code phase delay {circumflex over (τ)}. Please refer to
Please refer to
approximately approaches to zero but is not equal to zero. As shown in
is substantially equal to zero. In addition, when the spread spectrum code signals S_E, S_P, and S_L are triangle wave signals, the curve of the spread spectrum code error statistics signal S_error becomes smoother. Therefore, it is helpful to more finely calibrate the estimated code phase delay {circumflex over (τ)} so that the estimated code phase delay {circumflex over (τ)} after being calibrated can approach to the actual code phase delay τ more approximately or can be exactly equal to the actual code phase delay τ.
Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.
This application claims the benefit of U.S. patent application No. 61/311,399, filed on Mar. 8, 2010 and incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
5832021 | Kondo | Nov 1998 | A |
6288614 | Linss | Sep 2001 | B1 |
6901106 | Chen et al. | May 2005 | B1 |
20050008113 | Kokubo et al. | Jan 2005 | A1 |
20100026566 | Ueda et al. | Feb 2010 | A1 |
Number | Date | Country | |
---|---|---|---|
20110216812 A1 | Sep 2011 | US |
Number | Date | Country | |
---|---|---|---|
61311399 | Mar 2010 | US |