Patent Document

FIELD OF THE INVENTION 
       [0001]    The present invention relates to improved methods for averaging data signals while minimizing distortion caused by effects such as jitter. 
       BACKGROUND OF THE INVENTION 
       [0002]    Direct averaging is often used to improve measurement accuracy in measurement instruments, such as oscilloscopes. By taking the average of multiple signals (or averaging multiple samples acquired from a single signal), the signal-to-noise ratio (SNR) of the result can be increased, since non-repeating noise and distortion are averaged out. But, when the signals have jitter, the averaged result may be distorted. When the signals are averaged, this jitter causes higher-frequency portions of the result to be attenuated more than the rest of the result. This can typically be seen as slower rising edges in the averaged result. 
         [0003]    Often, measurement instruments may introduce jitter into the signals that they are measuring. For example, trigger jitter in real-time oscilloscopes introduces jitter into samples acquired by the scope. Thus, these instruments may not be able to make measurements as accurately as more expensive devices, even when averaging is used. Thus, there is a need for improved averaging techniques to minimize the effect that jitter has on the averaged result. 
         [0004]    Improved averaging techniques could be useful for a number of different signal processing applications, and might allow instruments with acquisition jitter to replace more expensive instruments. For example, in one embodiment, improved averaging techniques could allow real-time oscilloscopes to measure S-parameters of a device under test. 
         [0005]    In one example, the disclosed techniques might allow a real-time oscilloscope to measure S-parameters without needing additional instruments such as a vector network analyzer (VNA). As bit rates increase, high speed serial data link simulation and measurements increasingly need to use S parameters when modeling components in the data link. For example, to fully characterize and simulate the serial data link  100  shown in  FIG. 1 , the output impedance (represented by reflection coefficient S 22 ) of the transmitter (Tx)  105 , input impedance (represented by reflection coefficient S 11 ) of the receiver (Rx)  115 , and the full S parameters (S 11 , S 12 , S 21 , and S 22 ) of the channel  110  are all needed. 
         [0006]    Traditionally, a vector network analyzer (VNA) or a time-domain reflectometry (TDR) system with a sampling oscilloscope is needed to measure these types of S parameters for two-port or multi-port network characterization. These specialized instruments are often expensive, and are not widely available. In contrast, real-time oscilloscopes are commonly used to debug, test, and measure high speed serial data links. It would be convenient to use real-time oscilloscopes to measure the S parameters of a data link. 
         [0007]    Unfortunately, while some previous methods allow a real-time oscilloscope to measure S parameters or related functions, they do not enable the scope to take accurate enough measurements to eliminate the need for additional VNA or sampling oscilloscope-based TDR solutions. For example, one prior art solution by Agilent (described in U.S. patent application Ser. No. 13/247,568 (“the &#39;568 application”)) uses precision probes to measure probe impedance and transfer functions for a Device Under Test (DUT). These measurements may then be used to create embed or deembed filters to compensate for the measured system characteristics. But the transfer functions measured using this method do not provide accurate delay information for the DUT. For example, a longer high quality cable may have the same magnitude loss as a shorter but lower-quality cable. But these two cables have very different group delay characteristics. Because the method disclosed in the &#39;568 application does not measure accurate delay information, it is not accurate enough to determine which type of cable is being used. 
         [0008]    U.S. patent application Ser. No. 14/673,747 (“the &#39;747 application”) does describe a method of measuring full S parameters using a real-time scope, along with a signal generator and a power divider. But the method disclosed in the &#39;747 application is still prone to measurement errors due to trigger jitter that is inherent in real-time scopes. 
         [0009]    As discussed above, accuracy of real-time scopes can be improved by using averaging. But real-time scopes have trigger jitter, which causes the higher-frequency portions of the signal to be attenuated more than the rest of the signal. This can typically be seen as slower rising edges in the measured signal. Because prior art averaging solutions do not address this attenuation, they do not enable real time oscilloscopes to make measurements as accurately as other instruments such as VNAs or sampling scopes. 
         [0010]    In addition, when a repeating data pattern is averaged, the patterns must all be aligned. Traditionally, the patterns are aligned based on edge crossings, or by using cross-correlation. But noise in the patterns can distort the edge crossings, causing a loss of accuracy in edge-based methods. And cross-correlation is computationally expensive. 
         [0011]    Thus, there is a need for improved averaging techniques to take more accurate signal measurements. 
       SUMMARY OF THE INVENTION 
       [0012]    Embodiments of the present invention use group delay to improve the signal-to-noise ratio when averaging multiple signals. This eliminates the distortion that occurs in conventional averaging techniques due to jitter. The disclosed techniques may be used in any application that uses averaging, or by any type of device or instrument. For example, in one embodiment, the disclosed techniques may be used by a real-time oscilloscope to measure S parameters with greater accuracy, despite the scope&#39;s inherent trigger jitter. This may allow the real-time oscilloscope to replace more expensive devices. In another embodiment, the disclosed techniques may be used when averaging repetitive data patterns that have been obtained from multiple acquisitions, or when averaging multiple portions of repeating data signals that have been obtained from a single long acquisition. And, because the disclosed techniques are computationally efficient, they may be used by devices that have less processing power. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0013]      FIG. 1  depicts a prior art high speed serial data link system. 
           [0014]      FIG. 2  depicts the phase and magnitude for the average of two vectors. 
           [0015]      FIG. 3  depicts a method for compensating time shifts between data signals in accordance with one embodiment of the present invention. 
           [0016]      FIG. 4  depicts a magnitude plot obtained in accordance with the disclosed invention, compared with a magnitude plot obtained using prior art averaging techniques. 
           [0017]      FIG. 5  depicts insertion loss measured in accordance with the disclosed invention, compared to insertion loss measured with a prior art VNA. 
           [0018]      FIG. 6  depicts an exemplary instrument for performing clock recovery in accordance with the present invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0019]      FIG. 1  depicts a high-level block diagram of a serial data link system. Transmitter (Tx)  105  is connected to a receiver (Rx)  115  through a channel  110 . As is known in the art, the channel  110  may consist of any physical transmission medium, including copper wire, coaxial cable, optical fiber, or (in the case of wireless transmission) the air. A channel  110  may also consist of multiple mediums. 
         [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: 
         [0000]      ΔΦ( 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  FIG. 2 . In  FIG. 2 , two data signals a and b are represented by the vectors {right arrow over (a)}  205  and {right arrow over (b)}  210 . The phase difference between {right arrow over (a)}  205  and {right arrow over (b)}  210  is ΔΦ  220 . 
         [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  FIG. 2 , vector {right arrow over (c)}  215  points to the mid-point of line {right arrow over (ab)}  225 . The vector {right arrow over (c)}  215  is perpendicular to the line {right arrow over (ab)}  225 , and bisects the angle ΔΦ. The magnitude of {right arrow over (c)}  215  is cos(ΔΦ/2) times the common magnitude of {right arrow over (a)}  205  and {right arrow over (b)}  210 . When {right arrow over (a)}  205  and {right arrow over (b)}  210  are not in phase (i.e., when ΔΦ  220  is not zero), the magnitude of {right arrow over (c)}  215  will be less than the common magnitude of {right arrow over (a)}  205  and {right arrow over (b)}  210 . 
         [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 1 , . . . , x n ) are acquired and a direct average of all of the data signals  x  is computed. Group delays (y 1 , . . . , y n ) are computed for each individual signal (x 1 , . . . , x n ) and an average group delay  y  is computed for the average signal  x . Next, the difference between each signal&#39;s group delay (y 1 , . . . , y n ) and the average group delay  y  is computed. The differences are compensated to create compensated signals (z 1 , . . . , z n ). Finally, the compensated signals are averaged together to create an averaged result  z . 
         [0025]      FIG. 3  depicts an exemplary flowchart for performing group delay-based averaging according to one embodiment of the present invention. At step  300 , two or more data signals (x 1 , . . . , x n ) are acquired. A direct average of all of the data signals is computed at step  305 , to obtain an averaged signal  x . 
         [0026]    In the embodiment shown in  FIG. 3 , the group delays are determined using by using phases of each signal. At step  310 , the phase  Φ (f) of the averaged signal  x  is determined. In one embodiment, the phase is computed by performing a Fast-Fourier Transform (FFT) for the averaged signal  x . In another embodiment, the phase  Φ (f) is computed by taking a derivative of the averaged signal x, and performing an FFT for the derivative of  x . In both embodiments, a windowing function may optionally be applied before performing the FFT. The windowing function improves performance by eliminating leakage into adjacent frequency bins. 
         [0027]    At step  315 , phases Φ(f) i  are computed for the individual data signals similar to step  310 . In one embodiment, phases Φ(f) i  are computed by performing an FFT for each signal (x 1 , . . . , x n ). In embodiments where the derivative was used to determine  x  in step  310 , the derivative of each signal must be computed at step  315  before performing an FFT to find the phase of each derivative. In both embodiments, a windowing function may optionally be applied before performing the FFTs. 
         [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&#39;s derivative. For other types of signals, using the signal itself may yield better results. 
         [0029]    At step  320 , a phase difference ΔΦ(f) i  between each individual phase Φ(f) i  and the average phase  Φ  is computed. In one embodiment, the phases found in steps  310  and  315  may be unwrapped and used to compute the phase difference for each individual signal. For example, the unwrapped average phase  Φ (f) may be subtracted from the unwrapped individual phases Φ(f) i  to obtain phase differences (ΔΦ(f) i , . . . , ΔΦ(f) n ). Any other suitable method of computing phase differences may also be used. 
         [0030]    At step  325 , the slope ΔΦ i (f) of each phase difference ΔΦ(f) 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 ΔΦ i (f) are first used to determine a time shift Δt i  for each signal x 1  . . . x n  at step  330 . For example, eq 1 above describes a relationship between slope and time shift. In one embodiment, the time shift Δt i  for each signal may be determined by dividing the slope of that signal&#39;s phase difference by 2π*f (where f is the frequency). In other words: 
         [0000]    
       
         
           
             
               
                 
                   
                     Δ 
                      
                     
                         
                     
                      
                     
                       t 
                       i 
                     
                   
                   = 
                   
                     
                       Δ 
                        
                       
                           
                       
                        
                       
                         
                           Φ 
                           i 
                         
                          
                         
                           ( 
                           f 
                           ) 
                         
                       
                     
                     
                       2 
                        
                       
                           
                       
                        
                       π 
                       * 
                       f 
                     
                   
                 
               
               
                 
                   ( 
                   
                     eq 
                      
                     
                         
                     
                      
                     2 
                   
                   ) 
                 
               
             
           
         
       
     
         [0032]    At step  335 , the signals are compensated. In embodiments where time shifts were computed at step  330 , the time shifts Δt 1  . . . Δt n  are compensated. In one embodiment, the result of the FFT that was performed on each individual signal (or its derivative) x i , . . . , x n  may be multiplied by exp(j*2π*f*Δt i ) to obtain compensated FFT results z i , . . . , z n  -where j represents the square root of negative one, f is frequency, and Δt i  is the time shift of each signal. In other embodiments, the compensated FFT results z i , . . . , z n  may be obtained by multiplying the FFT results by exp(j*ΔΦ i (f)) instead. 
         [0033]    At step  340 , the compensated FFT results z i , . . . , z 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 i , . . . , z n  are averaged to obtain an averaged result  z , and an inverse FFT (IFFT) is used to convert the averaged result  z  to the time domain. In another embodiment, an IFFT may be performed to convert each compensated signal z i , . . . , z n  to the time domain first, before averaging the results of the IFFTs to obtain an averaged time-domain results  z . 
         [0034]    In embodiments where the signals&#39; 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  FIG. 3  uses phase and time derivatives, any known methods for determining and compensating group delays may be used instead. 
         [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 i . Fourth, the disclosed techniques use all of the data points in each data signal to obtain the value of Δt 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]      FIG. 4  depicts magnitude plots for a step like data signal that has gone through a derivative operation. As shown in  FIG. 4 , the magnitude of a group-delay based average result that was obtained in accordance with the present invention (shown by plot  405 ) is improved by about 2 dB at 30 GHz when compared to a conventionally-averaged result (shown by plot  410 ). 
         [0037]      FIG. 5  depicts an insertion loss measurement result  505  obtained using a real-time oscilloscope in accordance with the present invention. As shown in  FIG. 5 , the insertion loss curve  505  correlates with an insertion loss measurement  510  that was taken with a VNA, for frequencies up to 25 GHz. This illustrates that the disclosed techniques enable a real-time oscilloscope to measure signals with similar accurately as a VNA, within a given a range of frequencies. 
         [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 oscilloscope—as depicted in  FIG. 6 . Device  600  may acquire data signals through a physical input  605  which may be a digital or analog input, or an interface such as a network, memory, or device interface. In embodiments where interface  605  receives analog signals, analog-to-digital (A/D) converter  610  may be used to convert the analog signal into a digital signal. In another embodiment, the data signal may be acquired from memory (for example, memory  620 ), or from another device. Memory  620  may store instructions that cause processor  615  to perform the improved group-delay based averaging techniques when executed. Memory  620  may also store data acquired from physical interface  605 . The one or more intermediate or final results obtained during the disclosed methods may be stored in memory  620 , output to a different device, or used for further operations by processor  615 . Memory  620  may comprise one or more separate memories, including memory located in one or more other devices. 
         [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&#39;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.

Technology Category: g