Publication number | US20020120420 A1 |

Publication type | Application |

Application number | US 10/037,124 |

Publication date | Aug 29, 2002 |

Filing date | Oct 25, 2001 |

Priority date | Jan 30, 1998 |

Also published as | CN1209631C, CN1289410A, DE69923160D1, DE69923160T2, EP1051631A1, EP1051631B1, US6356850, WO1999039216A1 |

Publication number | 037124, 10037124, US 2002/0120420 A1, US 2002/120420 A1, US 20020120420 A1, US 20020120420A1, US 2002120420 A1, US 2002120420A1, US-A1-20020120420, US-A1-2002120420, US2002/0120420A1, US2002/120420A1, US20020120420 A1, US20020120420A1, US2002120420 A1, US2002120420A1 |

Inventors | Jan Wilstrup, Dennis Petrich |

Original Assignee | Wavecrest Corporation |

Export Citation | BiBTeX, EndNote, RefMan |

Referenced by (19), Classifications (12), Legal Events (1) | |

External Links: USPTO, USPTO Assignment, Espacenet | |

US 20020120420 A1

Abstract

A method, apparatus, and article of manufacture for separating the components of a jitter signal. The method includes the steps of obtaining measurements of the spans of a signal, generating variation measurements for each of the spans, transforming the variation estimates from a time domain to a frequency domain, and determining the random component and the periodic component of the jitter signal.

Claims(17)

(a) obtaining a plurality of measurements for a plurality of spans;

(b) generating variation estimates for the measurements for each of the spans;

(c) transforming the variation estimates from a time domain to a frequency domain; and

(d) determining the random component and the periodic component of the jitter signal.

(a) measuring a unit interval of the data pattern;

(b) determining a matching pattern;

(c) calculating a measurement schedule defining a measurement set for each span;

(d) obtaining a plurality of measurements for a plurality of spans;

(e) generating variation estimates for the measurements for each of the spans;

(f) transforming the variation estimates from a time domain to a frequency domain; and

(g) determining the random component and the periodic component of the signal.

rotating a reference pattern through a plurality of rotations;

comparing the rotations to the data pattern; and

choosing the matching pattern.

(a) a measurement apparatus for collecting data;

(b) an analyzing unit, operatively connected to the measurement apparatus, for collecting data from the measurement apparatus, for measuring a unit interval of the data pattern, for determining a matching pattern, for calculating a measurement schedule defining a measurement set for each span, for obtaining a plurality of measurements for a plurality of spans, for generating variation estimates for the measurements for each of the spans, for transforming the variation estimates from a time domain to a frequency domain; and for determining the random component and the periodic component of the signal.

means for calculating ISI and DCD based on a comparison of the matching pattern and the measurements.

means for applying a constant false alarm filter to the frequency domain variation estimates.

(a) measuring a unit interval of the data pattern;

(b) determining a matching pattern;

(c) calculating a measurement schedule defining a measurement set for each span;

(d) obtaining a plurality of measurements for a plurality of spans;

(e) generating variation estimates for the measurements for each of the spans;

(f) transforming the variation estimates from a time domain to a frequency domain; and

(g) determining the random component and the periodic component of the signal.

Description

- [0001]This application claims the benefit of priority of Provisional Application Number 60,073,276, entitled “Data Comm Jitter Analysis System,” filed Jan. 30, 1998.
- [0002]1. Field of the Invention
- [0003]This invention relates in general to measurement apparatus and method; more particularly, to a system and method for analyzing components of a signal; and more particularly still, to a system and method for analyzing jitter in a serial data signal.
- [0004]2. Description of Related Art
- [0005]Jitter in serial data communication is a difference of data transition times relative to ideal bit clock active transition times. Jitter represents a deviation, typically in picoseconds, from the ideal. As data transfer rates increase within semiconductor devices and other high speed applications increase, the jitter component may become more significant. For example, in video graphics chips, jitter can cause a flicker or jumping of the video image. Also, in serial data communication systems jitter will cause errors. In order to understand the effects that jitter may have on semiconductor devices and data communication systems, measurements of jitter and other aspects of timing are critical during the prototyping stages and production tests.
- [0006]Jitter has four major components, inter-symbol interference (ISI), Duty Cycle Distortion (DCD), periodic jitter (PJ), and random jitter (RJ). ISI is caused by a data path propagation delay that is a function of past data history and occurs in all finite bandwidth data paths. DCD is caused by differing propagation delays for positive and negative data transitions. PJ is caused by one or more sine waves and its/their harmonics. RJ is assumed to be Gaussian (normal) and has a power spectral density that is a function of frequency.
- [0007]ISI, DCD and PJ are all bounded. They may be described as a peak or peak to peak value in bit period, unit interval (UI), or seconds. PJ in general has a magnitude for each spectral line.
- [0008]RJ is unbounded. It may be described by a standard deviation in UIs or seconds. In production testing a jitter tolerance mask is used to mimic the behavior of an actual data communications receiver in that it rejects low frequency jitter. A jitter tolerance mask is a function that is defined in the frequency domain. It has a magnitude that is a function of frequency. In most serial data communications systems, the data/clock recovery circuit tolerates low frequency jitter more than high frequency jitter and the shape of the mask reflects this fact.
- [0009]An analysis of the jitter components is valuable to the product designer and tester. For example, measuring PJ helps determine whether there is cross-talk on a circuit. Analyzing ISI and DCD permits the cause of the bit error rate to be determined.
- [0010]The present available measurement instruments, however, do not separate the jitter components. For example, oscilloscopes show jitter as an overall distribution without a separation of RJ and PJ. Although spectrum analyzers may measure jitter, they typically cannot be used on data streams. Moreover, when a spectrum analyzer measures a jitter value it does not separate PJ and RJ.
- [0011]Bit error test equipment allows a serial data pattern to be compared with a test pattern. Although a bit error rate is determined, no information is provided about any of the jitter components of the bit error rate. The relative proportions of the components is undetermined. Also, bit error test equipment provides a slow method of estimating bit error rate. Two hours is typically necessary to estimate the bit error rate with statistical confidence for a bit rate of one gb/s.
- [0012]The present invention provides a solution to this and other problems, and offers other advantages. Indeed, various embodiments construed in accordance with the principles of the present invention include the advantages of measuring jitter components without the need of a bit clock, performing statistical checks on measurements, and generating a statistical prediction of the failure rate.
- [0013]The present invention discloses a method, apparatus, and article of manufacture for analyzing jitter. Inter-symbol interference, duty cycle distortion, random jitter and periodic jitter are measured. The method includes the steps of obtaining measurements of the spans of a signal, generating variation measurements for each of the spans, transforming the variation estimates from a time domain to a frequency domain, and determining the random component and the periodic component of the jitter signal.
- [0014]Another embodiment provides for the measurement of ISI, DCD, RJ and PJ in serial data communications. The method includes the steps of measuring a unit interval of the data pattern, determining a matching pattern, calculating a measurement schedule defining a measurement set for each span, obtaining a plurality of measurements for many of the spans, generating variation estimates each of the spans, transforming the variation estimates from a time domain to a frequency domain, and determining the random component and the periodic component of the signal. The random and periodic components are determined through the application of a constant false alarm filter.
- [0015]According to another aspect of the invention, there is provided an apparatus for measuring jitter in a signal having a repetitive data pattern. The apparatus comprises a measurement apparatus for collecting data and an analyzing unit for analyzing the signal and determining the random component and the periodic component of the signal.
- [0016]According to yet another aspect of the invention, there is provided an article of manufacture comprising a program storage medium for storing instructions to execute method steps for analyzing jitter in a signal and for determining the random component and the periodic component of the signal.
- [0017]Referring now to the drawings in which like reference numbers represent corresponding parts throughout:
- [0018][0018]FIG. 1 is an exemplary illustration of a representative hardware environment for a signal analyzing system according to an embodiment of the present invention;
- [0019][0019]FIG. 2 is a flow diagram illustrating the steps performed by the analysis program according to an embodiment of the present invention;
- [0020][0020]FIG. 3 is a flow diagram illustrating the steps performed by the analysis program
**106**in determining a matching pattern; - [0021][0021]FIG. 4 is a flow diagram illustrating the steps performed by the analysis program
**106**in computing measurement sets for a variance; - [0022][0022]FIG. 5 is a flow diagram illustrating the steps performed by the analysis program
**106**in running a FFT on the autocorrelation function; - [0023][0023]FIG. 6 is a graph of the displacement of actual data transitions relative to an ideal bit clock;
- [0024][0024]FIG. 7 is graph showing a one-shot time measurement;
- [0025][0025]FIG. 8 is diagram of a simple repetitive ideal pattern;
- [0026][0026]FIGS. 9
*a*-**9***d*are graphs of rotations of a simple pattern; - [0027][0027]FIGS. 10
*a*-**10***d*are graphs of rotations with measured data; and - [0028][0028]FIGS. 11 and 12 are diagrams illustrating the application of a constant false alarm filter.
- [0029]In the following description of the preferred embodiment, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration a specific embodiment in which the invention may be practiced. It is to be understood that other embodiments may be utilized and structural changes may be made without departing from the scope of the present invention.
- [0030][0030]FIG. 1 is an exemplary illustration of a representative hardware environment for a signal analyzing system
**100**according an embodiment of the present invention. A typical configuration may include a measurement apparatus**102**that measures the time interval between two events (start and stop) through counters. - [0031]A measurement apparatus is disclosed in U.S. Pat. No. 4,908,784, which is hereby incorporated by reference. A typical measurement apparatus is the Wavecrest DTS-2075, available from Wavecrest Corporation, Edina, Minn.
- [0032]Those skilled in the art will recognize that other systems that enable signal/distribution analysis that are based on real world measurement (i.e., measurements that are non-ideal or subject to uncertainty) would be applicable.
- [0033]The measurement apparatus
**102**interfaces to a workstation**104**and operates under the control of an analysis program**106**resident on the workstation**104**. The analysis program**106**is typically implemented through data analysis software. One commercially available analysis software is the Wavecrest Virtual Instrument (VI) software, available from Wavecrest Corporation, Edina, Minn. The workstation**104**comprises a processor**108**and a memory including random access memory (RAM), read only memory (ROM), and/or other components. The workstation**104**operates under control of an operating system, such as the UNIX® or the Microsoft® Windows NT operating system, stored in the memory to present data to the user on the output device**110**and to accept and process commands from the user via input device**112**, such as a keyboard or mouse. - [0034]The analysis program
**106**of the present invention is preferably implemented using one or more computer programs or applications executed by the workstation**104**. Those skilled in the art will recognize that the functionality of the workstation**104**may be implemented in alternate hardware arrangements, including a configuration where the measurement apparatus**102**includes CPU**118**, memory**140**, and I/O**138**capable of implementing some or all of the steps performed by the analysis program**106**. Generally, the operating system and the computer programs implementing the present invention are tangibly embodied in a computer-readable medium, e.g. one or more data storage devices**114**, such as a ZIP® drive, floppy disc drive, hard drive, CD-ROM drive, firmware, or tape drive. However, such programs may also reside on a remote server, personal computer, or other computer device. - [0035]The analysis program
**106**provides for different measurement/analysis options and measurement sequences. The analysis program**106**interacts with the measurement apparatus**102**through the on-board CPU**118**. In one embodiment, the measurement apparatus**102**provides arming/enabling functionality such that the apparatus**102**can measure a signal either synchronously or asynchronously. The signal is fed to the channel input arming/enabling controls**120**,**122**,**124**, and**126**to which event that a measurement is made. This is typically the pattern start signal. Counter/interpolators**128**,**130**, and**132**measure the time elapse between the start and stop events. A one-shot measurement is taken from the nth start (Nstart) data edge after the pattern start signal to the nth stop edge (Nstop) after the pattern start signal. Nstart and Nstop are integers. Interpolators typically provide fine time resolution down to 0.8 ps. In response to input controls**120**,**122**,**124**, and**126**, multiplexer**134**controls the counter/interpolators**128**,**130**, and**132**based on a clock**136**signal. Clock**136**is typically a precise crystal oscillator. A design for a measurement apparatus**102**provides arming/enabling functionality is disclosed in application Ser. No. 09/039,121, entitled “Analysis of Noise In Repetitive Waveforms,” filed Mar. 13, 1998, which is hereby incorporated by reference. Such application is commonly assigned to the assignee of the present application. - [0036]The time between measurements is randomized. This is to ensure that the autocorrelation function performs correctly. This is random sampling in the statistical sense. An autocorrelation function is defined as the multiplication of a signal and a time shifted replica of this signal mathematically or electrically, or both. Use of an autocorrelation function is a well known signal analysis technique. In one embodiment, the measurement apparatus
**102**takes one-shot measurements over a random time interval of about 21 us to 25 us plus the measured time interval. An “and” function of the internal arm signal, which is randomized, and the external arm signal (pattern start) initiates a single one-shot time interval measurement. - [0037]The measurement apparatus
**102**is provided with a serial data signal either at input**120**or input**122**. This data signal must have a known pattern and it repeats. In fiber optic systems, this signal may be supplied by a optical to electrical converter. - [0038]The measurement apparatus
**102**is provided with a pattern start signal either at input control**124**or input control**126**. The pattern start signal has a transition that has an unambiguous relationship to an arbitrary data reference edge. It may come from the equipment under test or from a hardware-based pattern recognizer that “triggers” on a word which has one unique position in the data pattern. - [0039]In the exemplary embodiment of this invention, no bit clock is required or desired. In many cases, a low jitter bit clock is not available.
- [0040]Those skilled in the art will recognize that the exemplary environment illustrated in FIG. 1 is not intended to limit the present invention. Indeed, those skilled in the art will recognize that other alternative hardware environments may be used without departing from the scope of the present invention.
- [0041][0041]FIG. 2 is a flow diagram illustrating the steps performed by the analysis program
**106**according to one embodiment of the present invention. A method for measuring inter-symbol interference, duty cycle distortion, random jitter and periodic jitter is described. - [0042]Block
**200**represents the analysis program**106**measuring the UI. This forms the basis for subsequent measurements and data analysis. - [0043]Block
**202**represents the analysis program**106**pattern matching. The measured data is tested against an ideal image of the expected pattern. The analysis program**106**then estimates ISI+DCD. - [0044]Block
**204**represents the analysis program**106**computing the measurement sets needed to estimate PJ and RJ. - [0045]Block
**206**represents the analysis program**106**taking measurements of various data sets and computing the variance of each set. Although the statistical variance is used in the preferred embodiment described herein, those skilled in the art will recognize that other methods of measuring the variations in the measurements may be applied. - [0046]Block
**208**represents the analysis program**106**running a FFT (Fast Fourier Transform). In another embodiment, a mask may be applied in order to model the jitter tolerance of serial data communications receiver. A jitter tolerance mask is a function that is defined in the frequency domain. A mask is used for modeling jitter rejection in receivers. - [0047]Block
**210**represents the analysis program**106**separating the PJ and RJ and computing their estimates. - [0048][0048]FIG. 6 is a graph of the displacement of actual data transitions relative to an ideal bit clock. The deltas in FIG. 6 are the differences in time from data transitions and active bit clock transitions. d
**0**is the delta associated with data edge**0**; d**1**is the delta associated with data edge**1**, etc. - [0049]If a given data pattern is repeated many times, ISI+DCD will be static relative to a pattern boundary (reference edge
**0**). Each delta will be a constant. The serial data edge positions, for ISI+DCD, have converged to a steady state. However, ISI+DCD will have jitter relative to a bit clock. The deltas will not be the same value. - [0050]PJ and RJ will cause each delta to vary in time. The variance of these deltas over N (an integer>0) UI time intervals yields an autocorrelation function of PJ and RJ.
- [0051]The means of the deltas allow an estimation of ISI+DCD. The variance of the deltas allows PJ and RJ estimations. In this way, ISI+DCD estimates may be separated from PJ and RJ estimates.
- [0052]A modified version of the Blackman-Tukey method of signal analysis is used, as is well-known in the art. This allows the application of jitter tolerance masks to ensure compliance to data communication standards. An application of modified Blackman-Tukey autocorrelation function is demonstrated through FIG. 7 and the following discussion.
- [0053][0053]FIG. 7 is a graph showing a one one-shot time measurement. FIG. 7 shows an enlarged view of one arbitrary edge transition to another arbitrary edge transition compared to an ideal bit clock. In one embodiment, the mathematical equations below are directed towards application on a Wavecrest DTS-2075, available from Wavecrest Corporation, Edina, Minn. Those skilled in the art will recognize that modifications to the mathematical equations will make the described embodiment applicable to other hardware instruments.
- [0054]The one-shot measurement spans N*UI, where N is approximately an integer. A span is approximately N*UI or approximately N*T, where T is the signal period and N is an integer. X
**0**and Xn are the deltas for the jitter. As shown in FIG. 7, (**1**.**1**) tmeas(N)=N*UI+Xn−X**0**. M measurements on a randomized time schedule are taken for each N. - [0055]Therefore
$\begin{array}{cc}\mathrm{Variance}\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{tmeas}\ue8a0\left(N\right)\right)=\frac{1}{M-1}\ue89e\sum _{k=1}^{M}\ue89e{\left[\mathrm{tmeas}\ue8a0\left(N\right)-\stackrel{\_}{\mathrm{tmeas}\ue8a0\left(N\right)}\right]}^{2}& \left(1.2\right)\\ \stackrel{\_}{\mathrm{tmeas}\ue8a0\left(N\right)}=\frac{1}{M}\ue89e\sum _{k=1}^{M}\ue89e\left(N*\mathrm{UI}+\mathrm{Xn}-\mathrm{X0}\right)& \left(1.3\right)\\ \stackrel{\_}{\mathrm{tmeas}\ue8a0\left(N\right)}=N*\mathrm{UI}+\frac{1}{M}\ue89e\sum _{k=1}^{M}\ue89e\left(\mathrm{Xn}-\mathrm{X0}\right)\ue89e\text{}\ue89e\mathrm{If}\ue89e\text{\hspace{1em}}\ue89e\mathrm{ISI}+\mathrm{DCD}\ue89e\text{\hspace{1em}}\ue89e\mathrm{is}\ue89e\text{\hspace{1em}}\text{'}\ue89e\mathrm{small}\text{'}\ue89e\text{\hspace{1em}}\ue89e\mathrm{the}\ue89e\text{\hspace{1em}}\ue89e\text{\hspace{1em}}\ue89e\mathrm{mean}\ue89e\text{\hspace{1em}}\ue89e\mathrm{of}\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{Xn}-\mathrm{X0}\right)\ue89e\text{\hspace{1em}}\ue89e\mathrm{is}\ue89e\text{\hspace{1em}}\ue89e\mathrm{small},\mathrm{then}:& \left(1.4\right)\\ \stackrel{\_}{\mathrm{tmeas}\ue8a0\left(N\right)}\cong N*\mathrm{UI}.\text{\hspace{1em}}\ue89e\mathrm{Substitute}\ue89e\text{\hspace{1em}}\ue89e\mathrm{into}\ue89e\text{\hspace{1em}}\ue89e\left(1.2\right).& \left(1.5\right)\\ \mathrm{Variance}\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{tmeas}\ue8a0\left(N\right)\right)\cong \frac{1}{M-1}\ue89e\sum _{k=1}^{M}\ue89e{\left(\mathrm{Xn}-\mathrm{X0}\right)}^{2}& \left(1.6\right)\\ \mathrm{Variance}\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{tmeas}\ue8a0\left(N\right)\right)\cong \frac{1}{M-1}\ue89e\sum _{k=1}^{M}\ue89e\left({\mathrm{Xn}}^{2}-{\mathrm{X0}}^{2}\right)+\frac{1}{M-1}\ue89e\sum _{k=1}^{M}\ue89e\left(-2*\mathrm{Xn}*\mathrm{X0}\right)& \left(1.7\right)\end{array}$ - [0056]The first term in (
**1**.**7**) is constant as a function of N and the second term is −2 times the autocorrelation function of PJ and RJ, see (**1**.**8**).$\begin{array}{cc}\mathrm{Variance}\ue89e\text{\hspace{1em}}\ue89e\left(\mathrm{tmeas}\ue8a0\left(N\right)\right)\cong C-2*\left[\frac{1}{M-1}\ue89e\sum _{k=1}^{M}\ue89e\left(\mathrm{Xn}*\mathrm{X0}\right)\right]& \left(1.8\right)\end{array}$ - [0057]N*UI is τ(tau), the lag time of the autocorrelation function. The Fourier transform of the autocorrelation function from a signal gives the power spectral density of the signal.
- [0058]When an FFT is performed on (
**1**.**8**), the mean of the data record is forced to 0: This makes the value of C irrelevant. This is justified by the fact that PJ and RJ are not static, as they have no “DC” component. - [0059]UI Estimation
- [0060]The signal analysis system
**100**takes M**1**(an integer) measurements of the start pattern signal and computes the mean and standard deviation. The mean is divided by the length of the pattern in UI (Lpatt), with the results being the UI estimate. The standard error of the mean may then be estimated using the standard deviation as follows: STD(measurements)/SQRT(M**1**). Typically, if the standard error of the mean is too large, increasing the number of measurements will reduce the error. This estimate will typically work well if M**1**>100. The estimate may be tested against a default or user-defined constant. For example, an acceptable error is defined by the data communications and/or telecommunications industry. Also, the error may be such that the accuracy of subsequent measurements is impaired. Increasing M**1**may sufficiently reduce the error. - [0061]Pattern Match
- [0062]The signal analysis system
**100**compares measured data with an image of the expected pattern. The image of this pattern must be rotated to perform this match as the relationship between the start pattern signal and the reference data edge is arbitrary. The match uses a least square criteria. Those skilled in the art will recognize that other methods of performing the match may be used. Generally, the match may be found using any measure of error between the actual measured pattern and the rotated image. FIG. 3 is a flow diagram illustrating the steps performed by the analysis program**106**according to one embodiment of the present invention in determining a matching pattern. It will be appreciated that the processor**108**acts on program steps as set forth in the flow diagrams in order to implement the method in accordance with the principles of the invention. In the preferred embodiment, such program is written in C. However, the program can be written in a number of other languages, including C++ and FORTRAN. - [0063]Block
**300**represents the analysis program**106**taking M**2**measurements from data edge**0**(reference edge) to data edge**1**. The mean and error of the mean are computed. The error of the mean is tested against a default or user-defined constant. - [0064]Block
**302**represents the analysis program**106**repeating the steps represented by block**300**for edge**0**to edge**2**, edge**0**to edge**3**. . . edge**0**to edge (end−1), where “end” is the number of the edge where the pattern repeats. - [0065]Block
**304**is a decision block representing the analysis program**106**testing if the error of the mean of the measurements taken is too great. For example, the error of the mean is compared to a default or user-defined constant. If so, block**306**represents the analysis program**106**increasing M**2**and returning to block**300**and repeating the measurements; otherwise, the pattern is rotated as represented by block**308**. The error may be too great especially in the presence of large amounts of PJ and RJ. Increasing M**2**may allow this test to pass. Typically, M**2**will be greater than**100**. - [0066]Block
**308**represents the analysis program**106**rotating the patterns as described below. - [0067]Block
**310**represents the analysis program**106**comparing each rotated pattern to the actual measured mean by finding the sum of the squares of the errors as described below. - [0068]Block
**312**represents the analysis program**106**choosing the best pattern match as described below. - [0069]Block
**314**represents the analysis program**106**calculating the ISI and DCD based on the pattern match as described below. - [0070][0070]FIG. 8 is diagram of edge transitions vs. time for an ideal repetitive pattern. All the edge transitions are integer boundaries. No jitter is present. The following material describes a pattern image, rotations and a pattern match of one embodiment, as represented by blocks
**308**,**310**, and**312**of FIG. 3. Time moves CW (clock-wise) as shown by the arrow. The numbered lines represent edge (transition) positions in UI (Unit Interval). - [0071]The top of the circle in FIG. 8 is the reference position of the pattern. This pattern starts on position
**0**and ends on position**8**. Eight (**8**) is the length of the pattern (Lpatt) in UI. This pattern is described by the set: [0 1 3 7 8]. - [0072]This pattern has 4 edges (end=4). The start and end positions are counted as one edge. From above: edge number
**0**is the reference edge at**0**UI, edge number**1**at**1**UI, edge number**2**at**3**UI, etc. The number of edges in a pattern must always be even, otherwise its' start and end edges would have opposite polarities. - [0073]In the above circle shown in FIG. 8, no polarities are shown. However, assume that a positive (+) transition occurs at
**0**Ui, negative (−) at**1**UI, + at**3**UI, − at**7**UI and + at**8**UI. The pattern has repeated. A general way of looking at patterns is to ignore polarity. This allows pattern definitions on both inverted and non-inverted data without concern about polarities. - [0074]The above circle of FIG. 8 displays no jitter. All of the edges have integer UI positions and they will have zero displacements relative to ideal bit clock transitions.
- [0075][0075]FIGS. 9
*a*-**9***d*are exemplary graphs showing rotations of a simple pattern, as represented by Block**308**of FIG. 3. The reference pattern [0 1 3 7 8] as represented by circle**900**in FIG. 9A is rotated CCW**1**edge number by subtracting the edge position of the first edge after the reference position from all of the edge positions. In this case, subtract**1**. This results in circle**902**of FIG. 9*b*defined as [0 2 6 7 8]. Edge numbers: [0 1 2 3 4] The rotation of the initial pattern results in the following circles: [0 1 3 7 8]**900**, [0 2 6 7 8]**902**, [0 4 5 6 8]**904**(FIG. 9*c*), and [0 1 2 4 8]**906**(FIG. 9*d*). All of these circles**900**,**902**,**904**, and**906**of FIGS. 9*a*-**9***d*come from the same pattern. Only the reference edge has changed. It is noted that the transitions are independent of plus or minus edges in that a match will occur regardless of edge polarity. One more rotation will result in [0 1 3 7 8], the initial circle**900**. Four rotations of the initial pattern (the number of edges in the pattern) will yield the initial pattern. - [0076][0076]FIGS. 10
*a*-**10***d*are exemplary graphs of rotations with measured data. The rotated patterns of circles**1000**,**1002**,**1004**, and**1006**(shown in FIGS. 10*a*-**10***d,*respectively) are compared to the actual measured means, as represented by block**310**of FIG. 3. The measured means 2.2 m, 5.6 m and 7.3 m are placed on the four possible rotations of the pattern [0 1 3 7 8]. These measured means are from the reference edge to the first, second and third edges. - [0077]As represented by block
**312**of FIG. 3, the goal is to find out which rotation of the pattern will match the measured data. The ith delta, where i is the edge number, is the ith ideal position minus the ith measured mean. The deltas are squared and then summed for each rotation. The “match” rotation has the smallest sum (S). - [0078][0 1 3 7 8] S=square(1.0-2.2)+square(3.0-5.6)+square(7.0-7.3)=8.29
- [0079][0 2 6 7 8] S=square(2.0-2.2)+square(6.0-5.6)+square(7.0-7.3)=0.29
- [0080][0 4 5 6 8] S=square(4.0-2.2)+square(5.0-5.6)+square(6.0-7.3)=5.29
- [0081][0 1 2 4 8] S=square(1.0-2.2)+square(2.0-5.6)+square(4.0-7.3)=25.29
- [0082][0 2 6 7 8] is the rotation that matches: it has the smallest sum. The quality of the match may be found by computing the standard deviation of the deltas that have the least sum. Typically, using many random data patterns and large amounts of jitter (ISI+DCD), a standard deviation less than 0.5 UI is a very good match.
- [0083]Block
**314**represents the calculation of ISI and DCD. The estimate for ISI+DCD peak to peak is: - [0084]MAX[−MIN(deltas), (MAX(deltas)−MIN(deltas)),MAX(deltas)]
- [0085]The deltas are the set of deltas computed from the matched pattern. In the above equation, the −MIN(deltas) and the MAX(deltas) are needed when d
**0**(the reference edge delta) is at the lower or upper extreme of the overall delta distribution. Those skilled in the art will recognize that these simple illustrations are for exemplary purposes only. A typical signal may have hundreds or thousands of transitions in the pattern. - [0086]Compute Measurement Sets for Variance To Estimate PJ and RJ
- [0087][0087]FIG. 4 is a flow diagram illustrating the steps performed by the analysis program
**106**according to one embodiment of the present invention in computing measurement sets for a variance. The signal analysis system**100**computes measurement sets for Variance(tmeas(N)) (called VAR(N)) using the edge positions from the matched pattern. VAR(N) is used to feed data to the FFT, which provides PJ and RJ data. Those skilled in the art will recognize that other measurements of the variations in the measurements, such as peak to peak measurements or any statistical measure of variation, may be used instead of the statistic variance. The goal is to compute measurement sets such that only one set of measurements is taken for each N. - [0088]Block
**400**represents the analysis program**106**calculating the expected N. In the equations shown below, “end” is the last edge number in a matched pattern. Lpatt is the length of the pattern in UI. p(i) is an ideal edge position in UI for edge i in the matched pattern. Given that p(end)=Lpatt, the expected N's are calculated from: - [0089]a. p(2*end)−p(0). p(2*end)−p(1).
- [0090]p(2*end)−p(2) . . . . p(2*end)−p(2*end−1).
- [0091]b. p(2*end−1)−p(0). p(2*end−1)−p(1).
- [0092]p(2*end−1)−p(2) . . . . p(2*end−1)−p(2*end−2).
- [0093]c. p(2*end−2)−p(0). p(2*end−2)−p(1).
- [0094]p(2*end−2)−p(2) . . . . p(2*end−2)−p(2* end−3).
- [0095]. . .
- [0096]. . .
- [0097]zzz. p(1)−p(0).
- [0098]Block
**402**represents the analysis program**106**finding, from all of the combinations found represented by the steps in block**400**, measurement sets which “cover” N from 1 to Lpatt and have only one measurement set for each N. Each measurement set will have a unique edge pair and an expected N. Some patterns will not cover all N: there will be “holes” (gaps). The hole locations are stored. - [0099]Block
**404**represents the analysis program**106**converting the edge number pairs into a hardware-specific format, if necessary. For example, in an emodiment described herein, the analysis program**106**is implemented through the Wavecrest DTS-2075, available from Wavecrest Corporation, Edina, Minn. In the DTS-2075, the data represented by the steps described in block**402**are converted to Nstart +/− and Nstop +/− for the arm on nth event counters. Those skilled in the art will recognize the applicability of similar conversions when implementing the analysis program**106**according to this invention in other hardware embodiments. For example, although the steps performed by the analysis program**106**in analyzing the jitter of the serial data communication signal are polarity independent, the actual signal has a polarity which is determined with respect to the hardware measuring the signal. - [0100]Take M
**3**Measurements of Each Edge Pair. - [0101]As represented by block
**206**, the signal analysis system**100**takes M**3**measurements for each edge pair and calculates the variance and mean of each set. The mean is tested against expected N. The VAR(N) in stored in location: “expected N” for that particular pair. Interpolated data is used to “fill holes” (if any). A VAR(N) record has been created. This record is an autocorrelation function of PJ and RJ. - [0102]Run the FFT
- [0103][0103]FIG. 5 is a flow diagram illustrating the steps performed by the analysis program
**106**according to one embodiment of the present invention in running a FFT on the autocorrelation function determined in block**206**. This will provide RJ and PJ information. Taking the FFT of the autocorrelation function of a signal is the basis of a modified version of the Blackman-Tukey signal analysis method. In one embodiment of this invention, the analysis program**106**uses this method to estimate PJ and RJ. Generally, those skilled in the art will recognize that other methods of transforming the function from the time domain to the frequency domain may also be applied. - [0104]Block
**500**represents the analysis program**106**determining mirror VAR(N) to create MVAR(N). Var(0) is set to zero. The mirror function makes use of the symmetry of VAR(N) around N=0. VAR(N)=VAR(−N). This nearly doubles the length of the VAR(N) record and this improves the frequency resolution of the FFT output. - [0105]Block
**502**represents the analysis program**106**forcing the mean of MVAR(N) to zero. - [0106]Block
**504**represents the analysis program**106**determining Window MVAR(N). The Blackman-Tukey method usually uses a triangular window. Those skilled in the art will recognize that other windows such as a Kaiser-Bessel, Gaussian, or others may also be used. - [0107]Block
**506**represents the analysis program**106**determining the Padd of the record. This improves the FFT's resolution and accuracy. Padd is also known as zero augmentation. - [0108]Block
**508**represents the analysis program**106**running the FFT. A radix**2**FFT is usually used. - [0109]Block
**510**represents the analysis program**106**using a mask to weigh the FFT output as a function of frequency. Generally, serial data communication systems are more tolerant of low frequency jitter than high frequency jitter. This step is optional. - [0110]Block
**510**represents the analysis program**106**applying the constant false alarm filter as described below. - [0111]Block
**514**represents the analysis program**106**separating RJ And PJ as set forth below. - [0112]Separate PJ and RJ
- [0113]The signal analysis system
**100**adds amplitudes of the PJ spectral lines to give the magnitude of PJ in peak UI. The signal analysis system**100**sums the RJ curve and take the square root to estimate RJ expressed as a standard deviation in UI's. - [0114]In one embodiment according to the present invention, the method of separating PJ and RJ uses a technique called a constant false alarm filter that is used in radar. In video use this is also called a median filter. It consists of a sliding window that is applied to the FFT output bins. This window has a odd number of bins. For example, for a window having
**9**bins the lower**4**and upper**4**bins are averaged. If the central bin is larger than this average by a defined ratio, the magnitude and position of the central bin is stored away and later used to identify the spectral lines created by PJ. The window is moved over one bin and this process is repeated until the all of the FFT output bins have been processed. - [0115][0115]FIGS. 11 and 12 are diagrams illustrating the application of a false alarm filter. FIG. 11 displays the raw output of an FFT of PJ and RJ. This provides the input to the false alarm filter. The vertical axis is in dB and the horizontal axis is frequency. The spectral peaks in the display are PJ and the underlying envelope in the display is RJ. At this point, the FFT raw data may be multiplied by a jitter tolerance mask for standards testing. The constant false alarm filter is applied.
- [0116][0116]FIG. 12 displays the output of the constant false alarm filter output. The sliding window of the filter has a width of 9 bins. The magnitude and frequency of each PJ spectral line has been isolated from RJ. An estimate of the total PJ is the algebraic sum of the spectral line magnitudes. This gives an estimate of total PJ in peak UI or seconds.
- [0117]An estimate of RJ is calculated by removing the spectral lines from the FFT raw data. The magnitude of the bins are summed and a square root is taken. The result is a one-sigma estimate of RJ in UI or seconds.
- [0118]The foregoing description of the preferred embodiment of the invention has been presented for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teaching. It is intended that the scope of the invention be limited not by this detailed description, but rather by the claims appended hereto.

Referenced by

Citing Patent | Filing date | Publication date | Applicant | Title |
---|---|---|---|---|

US6898535 * | Oct 14, 2003 | May 24, 2005 | Agilent Technologies, Inc. | Method and apparatus for decomposing signal jitter using multiple acquisitions |

US6931338 | Jan 7, 2003 | Aug 16, 2005 | Guide Technology, Inc. | System for providing a calibrated path for multi-signal cables in testing of integrated circuits |

US7388937 * | Aug 23, 2004 | Jun 17, 2008 | Pmc-Sierra, Inc. | Systems and methods for jitter analysis of digital signals |

US7809516 | Aug 10, 2007 | Oct 5, 2010 | Advantest Corporation | Probability density function separating apparatus, probability density function separating method, program, testing apparatus, bit error rate measuring apparatus, electronic device, and jitter transfer function measuring apparatus |

US7856463 | Aug 10, 2006 | Dec 21, 2010 | Advantest Corporation | Probability density function separating apparatus, probability density function separating method, testing apparatus, bit error rate measuring apparatus, electronic device, and program |

US7930139 | Jul 24, 2008 | Apr 19, 2011 | Advantest Corporation | Probability density function separating apparatus, probability density function separating method, program, testing apparatus, bit error rate measuring apparatus, electronic device, and jitter transfer function measuring apparatus |

US7949484 | May 24, 2011 | Advantest Corporation | Probability density function separating apparatus, probability density function separating method, noise separating apparatus, noise separating method, testing apparatus, testing method, calculating apparatus, calculating method, program, and recording medium | |

US7953579 * | Aug 30, 2007 | May 31, 2011 | Micron Technology, Inc. | Jittery signal generation with discrete-time filtering |

US8121815 | Jul 24, 2008 | Feb 21, 2012 | Advantest Corporation | Noise separating apparatus, noise separating method, probability density function separating apparatus, probability density function separating method, testing apparatus, electronic device, program, and recording medium |

US8180609 | May 15, 2012 | Micron Technology, Inc. | Jittery signal generation with discrete-time filtering | |

US20050080574 * | Oct 14, 2003 | Apr 14, 2005 | Draving Steven D. | Method and apparatus for decomposing signal jitter using multiple acquisitions |

US20080077357 * | Aug 10, 2007 | Mar 27, 2008 | Advantest Corporation | Noise separating apparatus, noise separating method, probability density function separating apparatus, probability density function separating method, testing apparatus, electronic device, program, and recording medium |

US20080098055 * | Aug 10, 2006 | Apr 24, 2008 | Takahiro Yamaguchi | Probability density function separating apparatus, probability density function separating method, testing apparatus, bit error rate measuring apparatus, electronic device, and program |

US20080189064 * | Aug 10, 2007 | Aug 7, 2008 | Advantest Corporation | Probability density function separating apparatus, probability density function separating method, program, testing apparatus, bit error rate measuring apparatus, electronic device, and jitter transfer function measuring apparatus |

US20090043537 * | Jul 24, 2008 | Feb 12, 2009 | Advantest Corporation | |

US20090063111 * | Aug 30, 2007 | Mar 5, 2009 | Micron Technology, Inc. | Jittery signal generation with discrete-time filtering |

US20090182530 * | Jul 24, 2008 | Jul 16, 2009 | Advantest Corporation | Noise separating apparatus, noise separating method, probability density function separating apparatus, probability density function separating method, testing apparatus, electronic device, program, and recording medium |

US20090326845 * | Mar 21, 2007 | Dec 31, 2009 | Advantest Corporation | Probability density function separating apparatus, probability density function separating method, noise separating apparatus, noise separating method, testing apparatus, testing method, calculating apparatus, calculating method, program, and recording medium |

US20110224960 * | Sep 15, 2011 | Micron Technology, Inc. | Jittery Signal Generation with Discrete-Time Filtering |

Classifications

U.S. Classification | 702/108 |

International Classification | G01R29/02, H04L25/02, H04L1/20, G01R29/027, G01R29/26 |

Cooperative Classification | G01R29/0273, G01R29/26, H04L1/205 |

European Classification | H04L1/20J, G01R29/26, G01R29/027C |

Legal Events

Date | Code | Event | Description |
---|---|---|---|

Mar 5, 2003 | AS | Assignment | Owner name: SCHMIDT, J. STEPHEN, MINNESOTA Free format text: SECURITY INTEREST;ASSIGNOR:WAVECREST CORPORATION;REEL/FRAME:013813/0135 Effective date: 20030205 |

Rotate