The present application is based upon and claims the benefit of priority from the prior Japanese Patent Application No. 2008-152274 filed on Jun. 10, 2008, with the Japanese Patent Office, the entire contents of which are incorporated herein by reference.
The disclosures herein generally relate to sync detection circuits, and particularly relate to a sync detection circuit for detecting synchronization based on the auto-correlation of signal values.
In cellular communication systems, each mobile terminal needs to stay synchronized with a base station at all times. Each mobile terminal performs an initial synchronization process for establishing synchronization with a base station at the time of power-on or hand-over. In this process, the frame timing of the communication system is detected, and synchronization is established based on the detected frame timing.
Frames occur at frame intervals Tf (e.g., 5 ms in the example illustrated in
Each downlink subframe has a preamble at its beginning. The pattern of such preamble differs from base station to base station. As far as a given base station is concerned, all the subframes transmitted from this base station have the same preamble pattern. Mobile terminals are not informed of the preamble pattern. Mobile terminals thus recognize the start position of each frame by detecting the occurrences of the same pattern at a known frame interval Tf (e.g., 5 ms in the example illustrated in
The analog-to-digital converter 10 converts an analog signal received by an antenna into a digital signal. The correlation computing unit 11 computes the correlation of the digital received signal output from the analog-to-digital converter 10. The correlation value ρ of two complex values x and y is obtained by use of formula (1) as follows.
ρ(x,y)=|E(x·y*)| (1)
Here, the function E serves to obtain an expected value. In the case of a signal that changes with time, such an expected value can be acquired by computing a temporal average. y* is the complex conjugate of y
A received signal y is represented by use of formula (2) as follows.
y(k)=h(k)x(k)+n(k) (2)
where:
The delay element 14 of the correlation computing unit 11 delays the digital received signal y(k) by Nframe sample points (i.e., the number of sample points in one frame), thereby introducing one-frame time delay. The delayed signal output from the delay element 14 is represented by use of expression (3) as follows.
y(k−Nframe)=h(k−Nframe)x(k−Nframe)+n(k−Nframe) (3)
where:
h(k−Nframe)=h(k)+Δh(k)
The complex conjugate unit 15 obtains y(k−Nframe)* that is the complex conjugate of y(k−Nframe). The multiplication unit 16 then computes the product of y(k−Nframe)* and y(k−Nframe). The multiplication unit 17 then computes the product of y(k−Nframe)* and y(k−Nframe). An expected value of this product is represented by use of expression (4) as follows.
The absolute value unit 18 computes the absolute value of the expected value obtained by the moving average unit 17. The expected value ε(k) (i.e., the absolute value of the expected value to be exact) corresponding to a sample point k output from the correlation computing unit 11 is supplied to the peak-point detecting unit 12, and is also supplied to the delay elements 13 that are serially cascaded. Each delay element 13 delays the expected value that it receives by one sample point to supply the delayed expected value to the next delay element 13 situated at the following stage, and also supplies this delayed expected value to the peak-point detecting unit 12.
The peak-point detecting unit 12 detects the maximum value among the Nframe expected values ε(k) through ε(k−Nframe+1), and outputs the sample point k that corresponds to this maximum value (which is represented as k with a hat (i.e., circumflex)). Computation that obtains k corresponding to the maximum value is represented by use of expression (5) using ArgMax function as follows.
When the sample point detected by the peak-point detecting unit 12 correctly matches the position of the preamble symbol, equation (6) as follows is satisfied due to the fact that the preamble symbol appears at an interval equal to Nframe samples. It should be noted that the transmitted signal x(k) is normalized such that its amplitude is equal to 1.
x({circumflex over (k)})x({circumflex over (k)}−Nframe)*=1 (6)
At the position of the preamble, the transmitted signal x(k) at the sample point k and the transmitted signal x(k−Nframe) situated at the Nframe-th preceding sample point from k are the same complex number. Accordingly, the result of the computation of expression (6) is equal to 1.
Substituting equation (6) into expression (4) for the expected value and expanding the expression by use of the change Δh(k) yield expressions (7), (8), and (9) as follows.
w(k)=h(k)x(k)n(k−Nframe)+h(k−Nframe)*x(k−Nframe)*n(k) (9)
Expression (8) represents an error attributable to channel fluctuation. Expression (9) represents an error attributable to the noise n(k) that is input into the correlation computing unit 11.
As described above, the expected value computed by the correlation computing unit 11 illustrated in
The gain of correlation computation is proportional to the number of samples taken for the correlation computation. The gain of correlation computation is equal to a ratio of the preamble symbol period to the sampling period. In the case of the WiMAX system having a bandwidth of 5 MHz, for example, a ratio of the preamble symbol period to the sampling period is equal to 576 as demonstrated below. In such a case, gain Gcorr of correlation computation is equal to 27.6 decibel as demonstrated by expression (10) shown below.
where:
The errors obtained as expressions (8) and (9) may be sufficiently large relative to the gain of correlation computation as given by expression (10). That is, the mobile terminal may be moving, and the signal-to-noise ratio may be low. In such a case, the synchronization processing unit fails to detect a correct synchronization point.
According to an aspect of the embodiment, a sync detector includes a correlation computing unit configured to receive signal values corresponding to respective sample points and to compute auto-correlation of the received signal values between sample points of interest and sample points that are situated at a distance equal to a constant number of sample points from the sample points of interest, a correlation value synthesizing unit configured to receive auto-correlation values corresponding to respective sample points obtained by the correlation computing unit and to synthesize the auto-correlation values with respect to at least two sample points among sample points that are spaced apart by the constant number of sample points thereby to compute a synthesized correlation value, and a peak-point detecting unit configured to detect a position of a sample point corresponding to a largest synthesized correlation value among synthesized correlation values corresponding to respective sample points obtained by the correlation value synthesizing unit.
According to another aspect, a communication apparatus includes a correlation computing unit configured to receive signal values corresponding to respective sample points as a received signal and to compute auto-correlation of the received signal values between sample points of interest and sample points that are situated at a distance equal to a constant number of sample points from the sample points of interest, a correlation value synthesizing unit configured to receive auto-correlation values corresponding to respective sample points obtained by the correlation computing unit and to synthesize the auto-correlation values with respect to at least two sample points among sample points that are spaced apart by the constant number of sample points thereby to compute a synthesized correlation value, a peak-point detecting unit configured to detect a position of a sample point corresponding to a largest synthesized correlation value among synthesized correlation values corresponding to respective sample points obtained by the correlation value synthesizing unit, and a signal processing unit configured to process the received signal by using a synchronization point that is the position of the sample point corresponding to the largest synthesized correlation value detected by the peak-point detecting unit.
The object and advantages of the embodiment will be realized and attained by means of the elements and combinations particularly pointed out in the claims. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed.
In the following, embodiments will be described in detail with reference to the accompanying drawings.
The analog-to-digital converter 20 converts an analog signal received by an antenna into a digital signal. The correlation computing unit 21 computes the correlation of the digital received signal output from the analog-to-digital converter 20 The correlation value ρ of two complex values x and y is obtained by use of formula (1) as previously described. A received signal y is represented by use of formula (2) as previously described.
The delay element 34 of the correlation computing unit 21 delays the digital received signal y(k) by Nframe sample points (i.e., the number of sample points in one frame), thereby introducing one-frame time delay. The delayed signal output from the delay element 34 is represented by use of expression (3) as previously described.
The complex conjugate unit 35 obtains y(k−Nframe)* that is the complex conjugate of y(k−Nframe). The multiplication unit 36 then computes the product of y(k−Nframe)* and y(k−Nframe). The multiplication unit 37 then computes the product of y(k−Nframe)* and y(k−Nframe). An expected value of this product is represented by use of expression (4) as previously described. Further, the absolute value unit 38 computes the absolute value of the expected value obtained by the moving average unit 37.
In this manner, the correlation computing unit 21 receives received signal values corresponding to respective sample points, and computes the auto-correlation of the received signal values between sample points of interest and sample points that are situated at a constant distance of Nframe sample points from the sample points of interest. The auto-correlation value corresponding to a sample point k output from the correlation computing unit 21 (i.e., expected value ε(k) or the absolute value of the expected value) is supplied to the peak-point detecting unit 24, and is also supplied to the delay elements 23 that are serially cascaded. Each delay element 23 delays the expected value that it receives by one sample point to supply the delayed expected value to the next delay element 23 situated at the following stage, and also supplies this delayed expected value to the correlation value extracting unit 24.
The correlation value extracting unit 24 selects, from auto-correlation values ε(k) through ε(k−Nframe+1) obtained by the correlation computing unit 21 and corresponding to respective sample points, a predetermined number of auto-correlation values that are top in the list that would be made by arranging the auto-correlation values in the descending order, i.e., a predetermined number of auto-correlation values that are larger than the remaining unselected auto-correlation values. The selected auto-correlation values are supplied to the correlation value synthesizing unit 25. The number of the auto-correlation values ε(k) through ε(k−Nframe+1) obtained by the correlation computing unit 21 is Nframe. The number of sample points in one symbol may be 576, and the number of symbols in one frame may be 50. In this case, the total number of sample points is equal to 50×576. Computation of the subsequent processing with respect to such a large number of sample points imposes heavy computation load. In consideration of this, it is desirable to reduce the number of auto-correlation values to be processed in the subsequent processing as illustrated in
ε′(k mod Nframe)=Topx(ε(k mod Nframe)) (11)
where:
In
The correlation value synthesizing unit 25 receives the auto-correlation values corresponding to the respective sample points obtained by the correlation computing unit 21 In the configuration illustrated in
The correlation value synthesizing unit 25 may perform the synthesizing of auto-correlation values by adding up the auto-correlation values. Namely, the synthesizing of ε′(k) and ε′(k+Nframe), for example, is the obtaining of a sum of ε′(k) and ε′(k+Nframe). Alternatively, synthesizing may be performed by adding up the squires of auto-correlation values, or may be performed by adding up values made by multiplying auto-correlation values by weighting factors. Synthesizing computation suffices as long as the synthesizing of auto-correlation values results in the signal components being added up to increase, and the error components such as noise components being added up to decrease in relative terms as the error components are uncorrelated to each other between the auto-correlation values.
The addition of a auto-correlation values by the correlation value synthesizing unit 25 is represented by use of expression (12) as follows.
In
The peak-point detecting unit 22 detects the position of a sample point corresponding to the largest synthesized correlation value among the synthesized correlation values corresponding to the respective sample points obtained by the correlation value synthesizing unit 25. For example, the peak-point detecting unit 25 detects the maximum value among the Nframe synthesized correlation values ε″(k) through ε″(k−Nframe+1), and outputs the sample point k that corresponds to this maximum value (which is represented as k with a hat (i.e., circumflex)). Computation that obtains k corresponding to the maximum value is represented by use of expression (13) using ArgMax function as follows.
When the sample point detected by the peak-point detecting unit 22 correctly matches the position of the preamble symbol, the preamble symbol appears at an interval equal to Nframe samples. In the following, the selection process performed by the correlation value extracting unit 24 is ignored for the sake of simplicity of explanation, and the correlation value synthesizing unit 25 performs its synthesizing process with respect to all the sample points. In this case, the expected value of expression (7) as previously described is modified by the synthesis process to expression (14) as follows.
The reason why the second term δh and the third term w disappear is that the channel-fluctuation-attributable error and noise-attributable error can be regarded as having no correlation between signals to be synthesized. Namely, the α-time synthesizing processes reduce these errors to ignorable size.
As described above, the sync detecting unit 30 illustrated in
In step S2, auto-correlation values having the same index (k) are synthesized among the extracted auto-correlation values that are the top x. As an example, x may be 3, and the sample points k for the top three auto-correlation values selected from the first one frame may be 243, 5849, and 16983. Further, the sample points k for the top three auto-correlation values selected from the next one frame may be 243, 5852, and 16983. In this case, ε′(k) corresponding to the sample point k equal to 243 is subjected to synthesizing between the two frames. By the same token, ε′(k) corresponding to the sample point k equal to 16983 is subjected to synthesizing between the two frames. As for ε′(k) corresponding to the sample point k equal to 5849 and ε′(k) corresponding to the sample point k equal to 5852 do not have data at the corresponding sample position in the opposite frame. No synthesizing process is thus performed. Alternatively, synthesizing with zero may be performed by assuming that the data at the corresponding position is zero.
In step S3, k providing the largest correlation value among the synthesized correlation values obtained from the plural frames is searched for. This is done by first identifying the largest synthesized correlation value among the synthesized correlation values obtained by applying synthesizing processes to two or more frames. Then, the value of k providing this largest synthesized correlation value is output as a synchronization sample point.
The correlation computing unit 21 of the sync detecting unit 30 computes the auto-correlations of the received signal. This auto-correlation computation is illustrated as auto-correlation computation 43 in
For the sake of simplicity of explanation,
After the correlation computing unit 21 computes the Nframe auto-correlation values for one frame, the correlation value extracting unit 24 selects the top x values from these Nframe auto-correlation values for one frame. This extraction process is illustrated as Extract 44 in
If the check result in step S2 is no, the correlation value extracting unit 24 updates, in step S3, the top-x auto-correlation values ε′(k) and the values of the corresponding sample points k with the auto-correlation value ε(k) at the sample point k of interest and the value of the sample point k of interest. Namely, the smallest one of the top-x auto-correlation values and the value of the corresponding sample point k are replaced with the auto-correlation value at the sample point of interest and the value of the sample point of interest, respectively. It there is a sample point k that has yet to be processed, the procedure returns to step S1 and continues from thereon.
The above-described procedure is performed with respect to the auto-correlation values ε(k) at all the sample points k in the range from 0 to Nframe−1, thereby obtaining the top-x auto-correlation values among these auto-correlation values and the values of the corresponding sample points k. In step S3, these top-x auto-correlation values and the values of the corresponding sample points k are stored in a buffer (i.e., stored in memory).
In
By the same token, the top-x auto-correlation values obtained for the data of the second frame are stored in a Frame#2 field. Also, the values of sample points k12 through kx2 corresponding to these top-x auto-correlation values are stored in the sample value field 50. In the same manner, the top-x auto-correlation values obtained for the data of the α-th frame are stored in a Frame#α field. Further, the values of sample points k1α through kxα corresponding to these top-x auto-correlation values are stored in the sample value field 50.
As described above, each auto-correlation value in this example is comprised of a real part Re[•] and an imaginary part Im[•]. In this manner, each auto-correlation value comprised of the real part Re[•] and the imaginary part Im[•] may be passed from a given-stage processing unit to a next-stage processing unit in the form of a complex value. In this arrangement, an absolute value may be obtained as such a need arises in data processing such as comparison computation.
Based on the correlation value buffer data 45 obtained as described above, the correlation value synthesizing unit 25 synthesizes auto-correlation values. This synthesizing process is illustrated as Combining 46 in
If a sample point having the identical value is found (i.e., the check result in step S2 is yes), the correlation value synthesizing unit 25 synthesizes auto-correlation values in step S3. Namely, the correlation value synthesizing unit 25 adds up the auto-correlation value ε′(kn,m) at the sample point kn,m of interest and the auto-correlation value ε′(ki,j) at the sample point ki,j equal to the sample point kn,m of interest. This produces a synthesized correlation value ε″. This process in step S3 is performed with respect to all the sample points ki,j that are found in step S2 as being equal to the sample point kn,m of interest. With this, the procedure of synthesizing auto-correlation values with respect to the sample point kn,m of interest comes to an end.
If there is a sample point k that has yet to be processed, the procedure returns to step S1 and continues from thereon. The processes from step S1 to step S3 are performed with respect to all the frames while excluding the sample points for which the synthesizing of correlation values has already been finished. With this arrangement, the synthesized correlation values are obtained with respect to all the sample points in the range from 0 to Nframe−1. In step S4, the synthesized correlation values ε″ that are obtained as final results are output.
There may be a sample point that is not selected as the top x in any one of the m frames among the sample points in the range from 0 to Nframe−1. Such a sample point may be treated as having a synthesized correlation value that is equal to zero. It should be noted that the sample points in the range from 0 to Nframe−1 refer to the 0th to Nframe−1-th sample points starting from the beginning of each frame.
Referring to
The above-described procedure is performed with respect to the synthesized correlation values ε″ at all the sample points k in the range from 0 to Nframe−1, thereby obtaining the largest value among these synthesized correlation values ε″. In step S4, the value of the sample point k corresponding to the largest synthesized correlation value ε″ as obtained above is output as an estimated synchronization point.
The synchronization processing unit 77 corresponds to the sync detecting unit illustrated in
As described above, the synchronization processing unit 77 uses the configuration illustrated in
The correlation synthesis as represented by expression (12) may be performed with respect to non-continuous frames as represented by expression (15) as follows.
In this expression, correlation synthesis is performed with respect to every γ-th frame. If γ is 2, for example, every second frame (i.e., every other frame) is used in the computation of correlation synthesis.
Moreover, the correlation synthesis as represented by expression (12) may be performed by use of a forgetting factor β as represented by expression (16).
ε″(k mod Nframe)=(1−β)Topx(ε(k mod Nframe+Nframe))+βTopx(ε(k mod Nframe)) (16)
where:
According to at least one embodiment, the sync detecting unit uses the correlation value synthesizing unit to synthesize plural auto-correlation values, thereby improving the reliability of auto-correlation values. As a result, the synchronization sample points detected by the sync detecting unit accurately match the positions of the synchronizing signal.
Further, the present invention is not limited to these embodiments, but various variations and modifications may be made without departing from the scope of the present invention.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the arts and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiment(s) of the present inventions have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2008-152274 | Jun 2008 | JP | national |