METHOD FOR CALCULATING THE VARIANCE

Abstract: This applicaton describes a method and device for measuring a variation value, where a value representative or a variation between a quantity Q and a reference quantity Qref is determined by calculating error samples xi and then determining the value R representative of the variation from (6) where each value of wj is recursively determined from the previous value wj-1. Through this recursive determination, a nested loop is avoided, whereby the amount of necessary calculation is greatly reduced.

Description: METHOD FOR CALCULATING THE VARIANCE [Field of the invention] The field of the invention relates to a method and device for measuring a value that characterizes a variation between a quantity and a reference quantity, where said variation is measured with respect to a parameter on which both the quantity and reference quantity depend. An example of this is the determination of a variation between a signal and a reference signal, both of which depend on time. [Background of the invention] A well known measure of variation is the variance which is defined as the mean value of the square of the difference between a sample value and the mean value of the samples. The standard deviation is the square root of the variance. Specifically in connection with the characterization of timing signals, a measure of the time variation as a function of integration time is known, which is referred to as TDEV (time deviation) and is e.g. defined in ETSI European Telecommunication Standard ETS 300462-1, April 1997 or ITU-T Recommendation G.810, Series G: Transmission Systems and Media, August 1996. A time deviation TDEV is defined as TDEV(nr 0 ) (1) where the angle brackets denote an ensemble average, and x i' with i = 1, 2, .... N, are sample values of a time error function x(t) and these samples are taken at equidistant time intervals. The time dependent error function x(t) is defined as the difference between a clock generating time T(t) and a reference clock generating time Tref(t). Here, t is therefore to be understood as the absolute (abstract) time, whereas T is a signal generated by a clock that depends on t and itself also represents a time. The N sample values are sampled at equal intervals X Q , such that x- j _=x(i • X Q ) , i = 1, 2, .... N. XQ is the sampling period and τ = n • X Q is the observation interval. The ensemble average relates to the observation interval in the sense that an average is taken over possible triplets x i+2n' x i+n' x i • The above mentioned documents contain an estimator formula for TDEV, which is: where n 1/ 2, the integer part of N/3 [Problem underlying the invention] The problem with the above estimator formula is that a calculation results in two nested FOR-loops for the summation under the square root, and in three nested FOR- loops when calculating the values TDEV for all values of n, which is often required. With large values of N, which is typically the case, this results in a large calculation burden which either leads to long calculation times or to an increased amount of hardware for coping with the calculation burden in a reasonable amount of time. As an example, in communication systems using the above described TDEV as a control parameter for synchronization control, this leads to more circuitry, which makes the systems more complicated and more expensive. The above mentioned problem is not restricted to systems calculating the deviation for a clock signal with respect to a reference clock signal over time, but will occur in any system based on the above principle of calculating a value representative of a variation based on the double sum where the lower and upper boundaries of the inner sum running over i are respective functions (fi and f 2 ) of the outer variable j . [Object of the invention] The present invention has the object of providing a better method of measuring a value characteristic of the variation between a quantity and a reference quantity, said value being based on the above described double sum. [Summary of the invention] This object is solved by the methods and devices described in the independent claims appended to the present application. Advantageous embodiments are described in the dependent claims. The present invention greatly simplifies the determination of a value representative of the variation between a quantity and a reference quantity by employing a recursive formula, such that the two nested FOR-loops mentioned above can be avoided. More specifically, the present invention defines a first value w^ as a function of the difference values X j , which represent differences between the quantity and the reference quantity, and determines the value R, which corresponds to the above mentioned double sum, through N - 3«+ l W (6) 7 = 2 where each consecutive value of Wj is not calculated by running through a total sum, but is recursively determined from the respectively previous value Wj_^. n is a value between 1 and the integer part of Ν/3. In this way the present invention achieves a simpler and less time consuming calculation of the value R, such that the measurement method of the present invention enables a simpler and cheaper hardware, without any decrease in efficiency. More specifically, the calculation of the double sum of the above mentioned equation (3) requires floating point operations in a number depending on N^, whereas the method of the present invention only requires a number of floating point operations depending on N. Therefore, the present invention decreases the required processing capacity and processing time, to thereby lead to better and/or cheaper hardware. According to a preferred embodiment of the present invention, the calculation of Wi is done in accordance with and the recursive calculation of W j in accordance with w j. = w J.- ,1 +x j.-.l+_.3n -3x 7.- ,1+2./7 +3x j.- .l+n -x j.-.1. According to another preferred embodiment of the present invention, the calculation of vι_ is performed by introducing a help variable y, where γ k = xk+2n ~ 2x n+k + x k ( 8) and such that the recursive formula for w- j becomes j = w j"l + Yj-1+n ~ Yj-1 (10 > According to further preferred embodiments, the values R, which depend on n, can be used to calculate a variance and a deviation value, either for individual values of n, or for all values of n from 1 to the integer part of N/3. As another preferred embodiment of the present invention, the measurement method is applied to a communication system requiring synchronization, in which the deviation value that is calculated relates to the variation between a clock signal and a reference clock signal. According to another preferred embodiment, the present invention is applied to a system in which a surface profile level is compared to a reference profile level, and samples are measured at equal location intervals, such that the measured characteristic variation value relates to the spatial variation of the surface level. As already mentioned above, the present invention can be applied to a system calculating a value characteristic of a variation on the basis of the above mentioned double sum shown in equation (3) . [Brief description of the figures] Fig. la and lb show a flow-chart illustrating a first embodiment of the present invention; Fig. 2a and 2b show a flow-chart illustrating a second embodiment of the present invention; and Fig. 3a and 3b show a flow-chart illustrating a fourth embodiment of the present invention. Fig. 4 is a diagram illustrating the sampling number N, the measurement period NX Q the sampling interval TIX Q and the basic interval X Q . Fig. 5a and 5b show a flow-chart illustrating an embodiment that is a modification of the embodiment shown in Fig. 1. Fig. 6a and 6b show a flow-chart illustrating a third embodiment of the present invention. Fig. 7a and 7b show a flow-chart illustrating an embodiment of the present invention that is a modification of the embodiment shown in Fig. 6. [Detailed disclosure] Fig. 1 shows a flow-chart of a first embodiment of the present invention, where Fig. la shows the first part and Fig. lb the second part. As can be seen, in a first step SI a loop variable i is set to a starting value of 1. Then, in step S2, a quantity Q, which depends on a given parameter t is measured at equidistant intervals Q , together with a reference quantity Qref associated with Q, where Qref also depends on the parameter t. In this way, samples Qj_ = Q(i • X Q ) and Qrefi = Qref (i • XQ ) are measured. Also, the difference between Qj_ and Qref_ is determined to thereby supply error samples Xj_=Qj_-Qrefj_ . It is self-understood that the error function can also be defined as Qref^ - Q_ . It should be noted that t represents any possible parameter, such as time, location, etc. The interval X Q is naturally measured in the same units as the parameter t. Then, N samples are determined by running through the loop constituted by steps S2, S3 and S4, where step S3 determines if i = N, and if not, then S4 increments the loop variable i to i + 1. N is a parameter that characterizes the measurement period, as will be explained in more detail in connection with Fig. 4. With regard to the present invention, it is of no importance how N is set or acquired, i.e. with respect to the invention, N can be seen as an arbitrary, given parameter. It should be noted that the quantity Q can be any measurable quantity, just as the parameter t can be any parameter on which a quantity can depend. As an example, Q can be a clock signal T and the parameter t can be the actual time, so that x would be the difference between a clock signal T(t) and a reference clock signal Tref(t) at equal spacing sample points defined by the time interval X Q . On the other hand, the quantity Q can equally well be a surface level value and the parameter referred to as t a one dimensional location along said surface, such that x represents error values between surface level values and reference surface level values at points of equal distance X Q along a direction in said surface. After the samples x_ are determined, a second loop using a loop variable k determines a value W ] _ . More specifically, in step S5 the loop variable k is set to 1 and the value ] _ is set to 0. Then, a loop consisting of steps S6, S7 and S8 determines a value W_ in accordance with the above mentioned equation (4) which is n This is done by replacing the value W ] _ by Wι+X ]+ 2 n -2x ]:+n +X ]c in step S6, then determining if k = n in step S7 and incrementing k to k+1 in step S8 if the result in S7 is negative . It should also be noted that the value for n is acquired in step S5. As will be explained in more detail in connection with Fig. 4, n is a parameter that characterizes the observation interval. With regard to the present invention, n can be acquired or set in any desirable or suitable way. For example, n can be a stored value that is simply read by the system in step S5. Or the user may be prompted to enter a desired value. Or the system may have a sub-routine for determining a value of n. As can be seen, it is of no importance to the invention how and where n is set, as long as the value of n lies between 1 and the integer part of N/3. Then, in step S81 it is determined if n is equal to the integer part of N/3, and if this is the case, then the value R, which represents the above mentioned double sum is determined as R = W^ 2 . This is shown in step S9 (see Fig. lb) . On the other hand, if in step S81 it is determined that n is smaller than the integer part of N/3, then the processing proceeds to step S10, in which again the above mentioned value of R is set to W ] _2 ■ ]_ _ _ then processing continues by setting the loop variable j to 2 in step Sll and then entering the loop as S12, S13, S14 and S15 to thereby determine the value R as where each value Wj is determined recursively from the previous value of w, i.e. WJ_ ] _ by w j = w j-l + x j-l+3n ~ 3xj-ι + 2n + 3x j-l+n ~ x j-l (7) This is done by calculating the new value of Wj in accordance with the above mentioned equation (7) in steps S12, then replacing the value of R by R + j 2 in step S13, asking if the value j has reached N - 3n+l in step S14 and incrementing j to j+1 in step S15 if the result of step S14 is negative. The processing after step S14 or S9 runs together again, i.e. the value of R is then employed in any suitable way, e.g. output to a control means that responds to the measure of variation between Q and Qref expressed by R, or the value R is processed further, e.g. a variance value VAR is determined as and/or a deviation value is determined as DEV = (VAR) 1/2 or The above mentioned embodiment calculates one value representative of a variation between a quantity Q and a reference quantity Qref associated with Q in dependence on a parameter n, where n determines the observation interval in the form of n • X Q . n can be assigned or have any value between 1 and the integer part of N/3, where N indicates the measurement period N- XQ . As can be seen , the above embodiment does not contain any nested loops, i.e. loops that are part of a larger outer loop. In this way, the above described double sum is calculated only from single, independent loops, so that the amount of necessary calculation only depends linearly on the sample size, i.e. only depends on N, in contrast to a conventional solution of the double sum, which would lead to a number of calculations depending on N . Therefore, the above described embodiment achieves a better measurement method, as the amount of calculation is considerably reduced, namely by a factor of N, which in turn allows a far simpler and/or more efficient hardware implementation. The present invention is by no means restricted to the specific embodiment described in Fig. la and lb, as a person skilled in the art will readily see that the precise steps of calculation and looping can be arranged in any desired or suitable way. An example of this is shown in Figs. 2a and 2b which show a second embodiment of the present invention. Steps in Figs. 2a and 2b which are the same as those already described in Figs, la and lb carry the same reference numerals and shall not be described again in detail. Instead of one loop S2, S3 and S4 for measuring Q j _, Qrefj_ and determining Xj_, as in the case of Fig. 1, Fig. 2 has two loops S20, S3, S4 and S22, S23, S24. In other words, the measurement of Q_ and Qrefj_ and the determination of Xj_ is performed in two subsequent loops. On the other hand, the value R = W ] _ is not determined in steps S9 and S10, as in Fig. 1, but only in one step S25, which precedes the decision in step S8. Therefore, as already mentioned, the present invention can basically be implemented in any desired way, as long as the sum is determined in a recursive way by determining WJ from the preceding value This is exemplified by a third embodiment of the present invention, a flow chart of which is shown in Fig. 6a and 6b. The third embodiment relates to a process that determines a deviation value TDEV. In Fig. 6a, step S100 represents the determination of N values of xi, similarly to the above description of the first and second embodiments. Then, in step S101, n is assigned a value between 1 and the integer part of N/3 (referred to as Int(N/3)) . In the first two embodiments n was a given value with respect to the process for determining R, e.g. n was set by an external control means. As indicated in the present embodiment, the invention is by no means restricted thereto, and n can also be set in the process for determining R. It is clear that the setting of n is of no importance to the basic concept of the invention, namely the recursive determination of R, as n is only a parameter in said recursive determination process. In step S102 and the subsequent loop consisting of steps S103 to S105, similarly to steps S5 to S8 in the previous embodiments, a first value of w is determined in accordance with k-l Then, in step S106, a value of R is determined with the 2 help of the above calculated value of w, namely R=w . If the value of n is equal to Int(N/3), then the calculation of R is complete, as step S107 will then branch to step S113 (see Fig. 6b) to calculate TDEV on the basis of the shown equation. On the other hand, if n is smaller than Int(N/3), then R will be calculated recursively in accordance with and - j -1 + x j -l+3n " 3x j -l+2n + 3xj _ 1+n - J _I ( 7 ) in steps S108 to S112. Finally, after R has been determined, TDEV is calculated in step S113 in accordance with the shown equation. A difference between the first two embodiments and the third embodiment is that in the third embodiment no vectorisation of w is necessary. Figs. 3a and 3b show a flow-chart of a fourth embodiment of the present invention. Steps that are the same as in Fig. 1 carry the same reference numerals and shall not be described again in detail. The first loop S2, S3 and S4, which is identical to the one shown in Fig. 1, determines error values XJ_ which characterize the variation between a quantity Q and a reference quantity Qref. The present embodiment is characterized by the definition of a help variable y^, as shown in the loop consisting of steps S51, S52 and S53. As can be seen, in a first step S50, the loop variable k is set to 1, and then the help variable y^ is defined in accordance with Yk = x k+2n - 2x n+k + x k (8) for values of k from 1 to Ν-2n. In the presently described embodiment, this is achieved by determining in step S52 if k is equal to N-2n, and if not, then incrementing k to k+1 in step S53, after which the processing returns to step S51. These values of y^ are then stored. After all of the values y^ for k = 1 to N-2n have been determined and stored, the processing enters a further loop referred to as S55, S56, S57. In this loop, which again runs through a loop variable referred to as k, the value W]_ is determined in accordance with the equation (9) At first, in step S54, the loop variable k is set to 1 and the value W ] _ is set to 0. Then W]_ is replaced by w^+y^ (Step S55) after which step S56 asks if k=n, and if not, then k is incremented to k + 1 in step S57, after which the processing returns to step S55. As in the case of in Fig. 2, the processing in Fig. 3 then continues with step S25, in which R is set equal to w^ 2 , after which step S81 determines if n is equal to the integer part of N/3. If not, then the loop formed by steps S60, S13, S14 and S15 is entered, which is comparable to the loops S12, S13, S14 and S15 known from the embodiments described in connection with Fig. 1 and 2, only that step S12 has been replaced by S60, in which the recursive determination of J is accomplished in accordance with J = wj_ι + Yj-i+n - Yj-1 (10) Although the above described embodiment contains the additional loop S51, S52 and S53 for determining the help variable y^, the resulting calculation in the recursive equation of step S60 is simplified, which can be advantageous because it requires simpler hardware, especially if the method of the present invention is implemented in the form of circuitry containing adders, subtractors, etc. On the other hand, if the invention is implemented as software in an appropriate computing device, e.g. a CPU, then the embodiment described in connection with Fig. 1 is advantageous over that described in connection with Fig. 3, because the method embodied by the flow-chart of Fig. 1 contains one loop less than that of Fig. 3. As already mentioned in connection with Fig. 1, the value R determined by the methods described in connection with Fig. 2 and 3 can also be further employed in any suitable and desired way, e.g. output to a control means that is controlled in accordance with the variation between Q and Qref, or processed further, e.g. for calculating a variance or a deviation The value R determined by the methods in accordance with the above described embodiments is equal to the double sum described in the introduction. As already mentioned, the value n, which can be assigned any value between 1 and the integer part of N/3 describes the number of sampling intervals within one observation interval. This is explained in connection with Fig. 4, in which a number N of sampling intervals along the direction of a parameter t (for example time) are shown, each interval having a length of X Q . In the specific example of Fig. 4, N = 12. The observation interval UXQ relates to the triplets of values x associated with each sampling interval, i.e. Xi + 2n' x i+n' Xή • According to a preferred embodiment, the method of the present invention is employed such that all values of R relating to individual values of n, i.e. for all values of n from 1 to the integer part of N/3 are calculated. These values can then be processed further, e.g. for calculating the deviation DEV according to R EEV = 6a 2 (N-3n+ϊ) (12) for each value of n from 1 to the integer part of N/3, in order to use these deviation values as appropriate characterization parameters. Such a measurement of all of the possible values R can simply be accomplished by introducing a further loop, as e.g. done in Fig. 5, which is a modification of the embodiment shown in Fig. 1. All of the steps that are the same as in Fig. 1 carry the same reference numerals and shall not be described again. In addition to the steps of Fig. 1, the embodiment for calculating the values for n from 1 to the integer part of N/3 has the supplementary step S70 between steps S3 and S5, in which the loop parameter n is initially set to 1, and the supplementary steps S71, S72 and S73, where the value R calculated for a specific value n is stored in association with n in step S71, and steps S72 and S73 for the outer loop running over n, where S72 asks if n has reached the maximum value which is the integer part of N/3 and if not, then the processing proceeds to steps S73, in which n is incremented to n+1. After step S73, the loop returns to S5. As in the cases of the previous embodiments, the values R can be processed or output in any suitable or desired way. It is clear that the embodiment described in connection with Figs. 5a and 5b can also be realized in other ways, for example also in connection with the embodiments described in Fig. 2 and 3. The modification of the method shown in Fig. 2 would consist in introducing the step S70 shown in Fig. 5a between steps S23 and S5 and Fig. 2a, and adding steps S71, S72 and S73 at the end of the processing in Fig. 2b, as done in Fig. 5b. Similarly, the method described in connection with Fig. 3a would be modified by adding step S70 between steps S52 and S54 of Fig. 3a and adding steps S71, S72 and S73 at the end of the processing in Fig. 3b. This is readily understandable to a person skilled in the art. Fig. 7a and 7b show a modification of the embodiment of Fig. 6, where steps S201, S202 and S203 have been added in order to implement a calculation of TDEV(n τ 0 ) for all values of n from 1 to the integer part of N/3. As can be seen, the loop for n is initialized in step S201 and loops back in step S202, and step S107 exits the loop when n is equal to the integer part of N/3. As already mentioned in connection with the embodiment of Fig. 1, the precise order and implementation of calculations and loopings in the embodiments of Figs. 2, 3, 5, 6 and 7 is not important to the invention as long as the value R is calculated by recursively determining w in accordance with w- j = w-j (WJ_ ] _), i.e. from the previous value of w, and as a function of the difference values x, e.g. either by WJ = J_! + Xj-l+3n " 3xj-i+2n + 3xj_ 1+n : j-ι (7) or by WJ = wj_ι + Yj-i+n ~ Yj-1 (10) As can be seen in the embodiment of Fig. 5, the calculation of the values R for all values of n leads to one nested loop, in contrast to the conventional calculation which contains two nested loops, namely one for the inner sum and a second one for the outer loop running over n. Again, the number of calculations is reduced by a factor of N in the present invention, as the number or required calculations in accordance with the embodiment shown in Fig. 5 is in the order of N 2 whereas the conventional calculation is in the order of N 3 . As a best mode of putting the invention to practice, the inventor presently considers the method described in connection with Fig. 7a and 7b, where the quantity Q is a clock signal T, Qref is a reference clock signal Tref, such that the values x_ are time error samples. The values R are calculated for all possible values of n, i.e. from n = 1 to n = the integer part of N/3, such that a complete set of values of the time deviation can be calculated from the values R through for all possible values of n. These values TDEV ( ΏX Q ) can then be used for characterization or supervision of reference timing signals. The precise implementation of the present invention in terms of hardware or software can be done in any suitable or desired way. For example, if a used software language has a provision such that if the running variable of a FOR- loop is outside of the range given by the upper and lower values of the FOR-loop, said FOR-loop is not entered, then e.g. the decision step S81 and loop consisting of Sll, S14 and S15 in Fig. 2b can be implemented by such a FOR-loop running from k=2 to N-3n+l. In other words, the decision step S81 would be implicitly contained in the above mentioned FOR-loop. Although the present invention has been described in terms of specific embodiments, it is by no means restricted thereto. Much rather, the scope of the invention is defined by the appended claims. Reference symbols in the claims serve the purpose of better understanding and do not restrict the scope.

Claims: [Claims ] 1. Method for measuring a value that characterizes a variation between a quantity (Q) and a reference quantity (Qref) associated with said quantity, both depending on a predetermined parameter (t) , comprising: - measuring N samples (Qi, Qrefi) of said quantity (Q) and said reference quantity (Qref) at equally spaced intervals (Xo) of said parameter (t) , N being an integer with N 3, - calculating and storing N difference values xi between each sample of said quantity (Qi) and each sample of said reference quantity (Qrefi) at each of said N sample points, the index i being an integer running from 1 to N, - calculating a value Wi as a function of said difference values Xi, - calculating a value R representative of the variation between said quantity and said reference quantity as where n is an integer from the set of 1 to the integer part of N/3, and each value j with j>l is calculated recursively from the previous value W j _ x and as a function of said difference values Xi, if n is smaller than the integer part of N/3, and - calculating said value R as R = wi if n is equal to the integer part of N/3. 2. Method according to claim 1, characterized by - calculating said value wi according to the equation and - calculating said each value W j with j>l from the previous value W j _ι in accordance with w j. = w j.- ,1 +x 7.- 1 1+ l 3 7 -3x J .- .l+, 2_n +3x J .- .+n -x j.- .1 . 3. Method according to claim 1, characterized by - calculating and storing values y^ defined as •V kfr = X klr+-2nn ~ ^ X nr,4+-k! + X kt ' for k= 1 to N-2n, - calculating said value wi according to the equation n - calculating said each value W j with j >l from the previous value Wj_ι in accordance with w w j.- .1 +y J.- .l+n -y ^ J .- Λ 1 The method of one of claims 1 to 3, characterized in that a variance value VAR is calculated as VAR = R 6n 2 (N-3n+ϊ) 5. The method of claim 4, characterized in that said variance value is calculated for each value of n from 1 to the integer part of N/3. 6. The method of one of claims 1 to 3, characterized in that a deviation value DEV is calculated as The method of claim 6, characterized in that said deviation value is calculated for each value of n from 1 to the integer part of N/3. 8. The method of one of claims 1 to 7, characterized in that said parameter on which said quantity and said reference quantity depend is time. 9. The method of claim 8, characterized in that said quantity is a timing signal and said reference quantity is a reference timing signal. 10. The method of one of claims 1 to 7, characterized in that said parameter on which said quantity and said reference quantity depend is location. 11. The method of claim 10, characterized in that said quantity is a surface profile level and said reference quantity is a reference profile level. 12. A device for measuring a value that characterizes a variation between a quantity (Q) and a reference quantity (Qref) associated with said quantity, both depending on a predetermined parameter (t) , comprising: - a measuring means for measuring N samples (Qi, Qrefi) of said quantity (Q) and said reference quantity (Qref) at equally spaced intervals (xo) of said parameter (t) , N being an integer with N > 3, - a calculating and storing means for calculating and storing N difference values Xi between each sample of said quantity (Qi) and each sample of said reference quantity (Qrefi) at each of said N sample points, the index i being an integer running from 1 to N, - a calculating means for calculating a value wi as a function of said difference values Xi, for calculating a value R representative of the variation between said quantity and said reference quantity as where n is an integer from the set of 1 to the integer part of Ν/3, and each value W j with j>l is calculated recursively from the previous value W j -x and as a function of said difference values Xi, if n is smaller than the integer part of N/3, and for calculating said value R as R = wi 2 if n is equal to the integer part of N/3. 13. Device according to claim 12, characterized by said calculating means calculating said value wi according to the equation and calculating said each value WJ with j>l from the previous value Wj_ι in accordance with w j. = w j.- .1 +x J.-.l_+_, ' n -3x7.- .1+2_"+37.-.1+7? —x j.-.\. 14. Device according to claim 12, characterized by said calculating means calculating and storing values y defined as for k= 1 to N-2n, calculating said value i according to the equation and k = l calculating said each value W j with j>l from the previous value Wj_ι in accordance with w J. = w7.- Λ 1+yj .- .+n -y j .- .1 .

Inventors: NEIHOFF BJOERN, NEIHOFF, BJOERN
Applicants: ERICSSON TELEFON AB L M, TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
Application year: 1999
Main classification: G06F17
IPC codes: G06F17