Browse Prior Art Database

A General Purpose Eye Diagram Generation Algorithm for High-Speed Serial Interfaces Disclosure Number: IPCOM000010056D
Publication Date: 2002-Oct-16
Document File: 9 page(s) / 176K

Publishing Venue

The Prior Art Database


Disclosed is a method

This text was extracted from a Microsoft Word document.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 50% of the total text.

A General Purpose Eye Diagram Generation Algorithm for High-Speed Serial Interfaces

Disclosed is a method

This invention is a software program/algorithm that generates eye diagrams for high-speed serial interfaces. Benefits include an accurate, inexpensive, and totally automated process.


Currently, eye diagram generation involves using an oscilloscope in infinite persistence mode.

This requires that multiple acquisitions of a data pattern be taken and stored; next, a technician must extract jitter and voltage margining data using the oscilloscope’s cursor controls. The data obtained from positioning the cursors must then be manually written down, and the waveform “snapshot” manually stored to diskette. Besides being a labor-intensive operation, the data taken is subject to operator interpretation, recording errors, and inaccuracies in the positioning of the cursors.  Furthermore, SSC (spread spectrum clocking) effects are not factored into the data, receiver/transmitter templates cannot be overlaid on the waveform, and “N UI jitter” information cannot be extracted from the captured waveform. Finally, the triggering characteristics of the oscilloscope tend to conceal the true jitter characteristics of consecutive bits of the transmitting serial interface, since the edges used for triggering the oscilloscope display are normalized back to the starting display point on the oscilloscope grid; in using the available “infinite persistence” method, the consecutive “N-UI jitter” displayed appears to be smaller than it actually is.

  Another widely used method of eye diagram generation is writing Matlab scripts on an interface-to-interface basis. This method, although somewhat automated, is slow (Matlab scripts require massive computer resources to execute), requires a new script for every new interface developed (protocol dependent), and is very expensive (a Matlab license is required for

each user).

General Description

The disclosed method uses ASCII data files containing data points captured from a digital sampling oscilloscope, from which “folded-over” eye diagrams are generated. These sampled data points are also used to calculate  ”N-UI jitter”, as well as voltage margin values. The disclosed method handles SSC effects on the data stream by dynamically recalculating the average UI (Unit Interval) of the data points extracted from the oscilloscope-generated ASCII files. This invention could be expanded to include a wide variety of other meaningful measurement values (e.g. overshoot, undershoot, risetime, etc.) as well as perform statistical analysis for jitter/margin values versus data pattern. The “fold-over” process/algorithm that generates eye diagrams is unique in that it computes the relative jitter between consecutive bits in the data stream. The “N-UI jitter” specification methodology is crucial in that it bounds the maximum jitter over a small window in time, which clearly defines the ⮮.