Group Delay Based Averaging
20170168092 ยท 2017-06-15
Inventors
Cpc classification
G01R19/2509
PHYSICS
International classification
Abstract
Embodiments of the present invention provide techniques and methods for improving signal-to-noise ratio (SNR) when averaging two or more data signals by finding a group delay between the signals and using it to calculate an averaged result. In one embodiment, a direct average of the signals is computed and phases are found for the direct average and each of the data signals. Phase differences are found between each signal and the direct average. The phase differences are then used to compensate the signals. Averaging the compensated signals provides a more accurate result than conventional averaging techniques. The disclosed techniques can be used for improving instrument accuracy while minimizing effects such as higher-frequency attenuation. For example, in one embodiment, the disclosed techniques may enable a real-time oscilloscope to take more accurate S parameter measurements.
Claims
1. A method for measuring two or more signals under test, comprising: acquiring two or more signals under test; determining an average signal based on the two or more signals under test; determining an average group delay for the average signal; determining individual group delays for the two or more signals under test; determining differences between the average group delay and the individual group delays; creating compensated signals by compensating the differences; averaging the compensated signals to produce an averaged result; and outputting the averaged result.
2. The method of claim 1, wherein: the step of determining an average group delay comprises determining a phase for the average signal; the step of determining individual group delays for the two or more signals under test comprises determining individual phases for the two or more signals under test; and the step of determining differences between the average group delay and the individual group delays comprises determining differences between the average signal phase and the individual phases.
3. The method of claim 2, wherein the step of determining a phase of the average signal comprises: performing a time-to-frequency transform on the average signal; and obtaining a phase from the result of the time-to-frequency transform; and wherein the step of determining phases of the two or more data signals comprises performing time-to-frequency transforms on the two or more data signals, and obtaining phases from the results of the time-to-frequency transforms.
4. The method of claim 2, wherein the step of determining a phase for the average signal comprises: calculating a derivative of the average signal; performing a time-to-frequency transform on the derivative of the average signal; and obtaining a phase from the result of the time-to-frequency transform; and wherein the step of determining phases of the two or more data signals comprises: calculating derivatives of the two or more data signals; performing time-to-frequency transforms on the derivatives; and obtaining phases from the results of the time-to-frequency transforms.
5. The method of claim 2, wherein the step of determining phase differences comprises: unwrapping the phase of the average signal; unwrapping the phases of the signals under test; and determining the phase differences by subtracting the unwrapped phase of the average signal from the unwrapped phases of the signals under test.
6. The method of claim 2, wherein the differences comprise first differences and the step of compensating the differences comprises: performing a straight-line fit for each of the differences by using a least mean squared method; obtaining second differences based at least in part on the slopes; and compensating the second differences.
7. The method of claim 3, wherein the step of compensating the differences further comprises: determining time shifts for the two or more signals under test based on the second differences; and multiplying the results of the time-to-frequency transforms of the two or more signals under test by exp(j*2*f*t.sub.i), where j represents the square root of negative 1, f represents frequency, and At represents the time shifts.
8. The method of claim 3, wherein the step of performing a time-to-frequency transform on the average signal comprises determining a derivative of the average signal and performing a time-to-frequency transform on the derivative of the average signal; and wherein the step of performing time-to-frequency transforms on the two or more signals under test comprises determining derivatives of each of the two or more signals under test and performing time-to-frequency transforms on the derivatives.
9. The method of claim 4, wherein the step of outputting the averaged result further comprises integrating the averaged result.
10. The method of claim 2, wherein the step of averaging the compensated signals to produce an averaged result comprises; averaging the two or more compensated signals in the frequency domain to produce an averaged frequency-domain result; and producing an averaged result by performing a frequency-to-time transform on the averaged frequency-domain result.
11. The method of claim 2, wherein the step of averaging the compensated signals to produce an averaged result comprises; creating time-domain compensated signals by performing a frequency-to-time transform on each compensated signal; and averaging the time-domain compensated signals to produce an averaged result.
12. A measurement instrument configured to compute a group-delay based averaged result of two or more signals under test, comprising: a physical interface configured to obtain the two or more signals under test; memory configured to store digital representations of the two or more signals under test, and the averaged result; a processor, configured to execute instructions stored in memory; and memory configured to store instructions that, when executed by the processor, perform one of the methods in claims 1-11.
13. The measurement instrument of claim 12, further comprising an analog-to-digital converter configured to create digital representations of the two or more signals under test.
14. A computer-readable medium containing instructions that, when executed on a processor, performs one of the methods in claims 1-11.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
DETAILED DESCRIPTION OF THE INVENTION
[0019]
[0020] Real-time oscilloscopes are commonly used to measure characteristics of serial data link systems. As discussed above, the trigger jitter in real time scopes introduces horizontal shifts which cause the higher-frequency portions of the measured signal to be attenuated when averaging is used. The horizontal time shift (also called jitter) between two otherwise identical data signals (e.g., signals a and b) causes a constant group delay between the two signals. This group delay causes a proportional phase difference between the two signals. The relationship between time difference At and phase difference can be seen in the following equation:
(f)=2*f*t (eq 1)
[0021] The impact that these horizontal shifts have on the averaged result can be examined in the frequency domain. At a particular frequency f, each signal may be represented by a vector in complex coordinates, as shown in
[0022] Taking the direct average of {right arrow over (a)} 205 and {right arrow over (b)} 210 yields vector {right arrow over (c)} 215. As depicted in
[0023] The disclosed techniques address the time shift between data signals by explicitly measuring and compensating t before performing the averaging. By compensating the time shifts, the phase difference 220 is reduced to zero for all data signals that need to be averaged. So the averaged vector {right arrow over (c)} 215 will have the same magnitude as {right arrow over (a)} 205 and {right arrow over (b)} 210, since cos(0)=1.
[0024] According to one embodiment of the present invention, two or more data signals (x.sub.1, . . . , x.sub.n) are acquired and a direct average of all of the data signals
[0025]
[0026] In the embodiment shown in
[0027] At step 315, phases (f).sub.i are computed for the individual data signals similar to step 310. In one embodiment, phases (f).sub.i are computed by performing an FFT for each signal (x.sub.1, . . . , x.sub.n). In embodiments where the derivative was used to determine
[0028] In steps 310 and 315, the decision to perform an FFT on the signal or its derivative may depend on what type of data the signal contains. For example, when the starting and ending values of the signal are not close to each other (e.g., as in a step-like waveform), it may be preferable to use the signal's derivative. For other types of signals, using the signal itself may yield better results.
[0029] At step 320, a phase difference (f).sub.i between each individual phase (f).sub.i and the average phase
[0030] At step 325, the slope .sub.i(f) of each phase difference (f).sub.i is computed. In one embodiment, a straight line fit may be performed using the Least Mean Squared (LMS) method. A weighting function may be optionally used when performing the LMS fit. For example, this phase plot is smoother at lower frequencies than it is at higher frequencies. To obtain a more accurate slope, it may be useful to weight the low frequency values more than the high frequency values.
[0031] The phase slopes may be compensated directly, or converted to time differences first. In embodiments where time differences are compensated, the slopes .sub.i(f) are first used to determine a time shift t.sub.i for each signal x.sub.1 . . . x.sub.n at step 330. For example, eq 1 above describes a relationship between slope and time shift. In one embodiment, the time shift t.sub.i for each signal may be determined by dividing the slope of that signal's phase difference by 2*f (where f is the frequency). In other words:
[0032] At step 335, the signals are compensated. In embodiments where time shifts were computed at step 330, the time shifts t.sub.1 . . . t.sub.n are compensated. In one embodiment, the result of the FFT that was performed on each individual signal (or its derivative) x.sub.i, . . . , x.sub.n may be multiplied by exp(j*2*f*t.sub.i) to obtain compensated FFT results z.sub.i, . . . , z.sub.n -where j represents the square root of negative one, f is frequency, and t.sub.i is the time shift of each signal. In other embodiments, the compensated FFT results z.sub.i, . . . , z.sub.n may be obtained by multiplying the FFT results by exp(j*.sub.i(f)) instead.
[0033] At step 340, the compensated FFT results z.sub.i, . . . , z.sub.n are averaged and converted to the time domain, in order to obtain an averaged time-domain result. In one embodiment, the compensated signals z.sub.i, . . . , z.sub.n are averaged to obtain an averaged result
[0034] In embodiments where the signals' derivatives were used in step 310 or 315, the averaged result obtained in step 335 is integrated at step 345 to return the averaged result to its correct form. Although the embodiment depicted in
[0035] The disclosed group delay based approach has several advantages. First, by compensating for time shifts, the disclosed technique improves overall SNR by preserving the averaged signal level at higher frequencies. Second, the disclosed techniques use FFT and IFFT, which are more computationally efficient than conventional approaches (such as cross-correlation methods) that must align the data signals before averaging them. Third, the disclosed techniques obtain an averaged result by using a Least Mean Squared (LMS) type of line fit, which results in a single value that can be used directly to compensate the time shifts. In comparison, conventional cross correlation methods require an extra interpolation step to find the value of the time shifts t.sub.i. Fourth, the disclosed techniques use all of the data points in each data signal to obtain the value of t.sub.i. In contrast, conventional methods based on edge-crossing only use a few data points around the edges of the waveform in each data signal. Finally, the disclosed techniques may be used to provide a computationally efficient manner of averaging a repeating data pattern, while providing more accurate results than traditional edge-based methods.
[0036]
[0037]
[0038] In one embodiment, the improved group-delay based averaging techniques may be performed by an exemplary general-purpose device 600 such as a real-time oscilloscopeas depicted in
[0039] Although specific embodiments of the invention have been described for purposes of illustration, it will be apparent to those skilled in the art that various modifications may be made without departing from the spirit and scope of the invention. For example, the disclosed techniques are not limited to computing s-parameters in real-time oscilloscopes but may be used to compensate time shifts in any other instruments or devices, or for other types of signal processing. And, as previously discussed, any suitable methods may be used to determine and compensate for the group delays. Furthermore, any suitable method of determining or estimating derivatives may be used. For example, as is known in the art, a signal's derivative may be estimated by taking its difference. Although the term data signal has been used, it is understood that the present techniques may be performed on any type of acquired signal (i.e., signal under test). Likewise, one of ordinary skill in the art will understand the relationship between phase, delay, and group delay of a signal. Accordingly, the invention should not be limited except as by the appended claims.