Eye Diagram Analysis

Category: 電磁場解析 > 信号品質 | Integrated 2026-04-11
Eye diagram analysis showing overlaid bit waveforms forming eye opening with height and width margins
アイダイアグラム解析 — 全ビットパターンの波形を重ね描きして信号品質マージンを可視化する

Theory and Physics

Overview — What is an Eye Diagram

🧑‍🎓

Professor, what does "the eye is open" in an eye diagram specifically mean? My senior said "the eye is closed, so we have to redo the board," and I have no idea what that's about...

🎓

Good question. Let me explain the principle first. In digital communication, the transmitter sends out a sequence of "0" and "1" bits as a voltage waveform. The receiver samples this waveform to determine whether it's a "0" or a "1".

An eye diagram is created by cutting out the waveform for all possible bit patterns at each 1 UI (Unit Interval = time width of 1 bit) and overlaying them. This creates an opening in the center that looks like an "eye". The larger this opening, the easier it is for the receiver to correctly determine the bits.

🧑‍🎓

I see, it's an overlay! But why does it form an "eye" shape? If you just overlay ideal square waves, wouldn't you get a rectangle?

🎓

With an ideal square wave, you would indeed get a rectangle. But real transmission paths have bandwidth limitations. High-frequency components are attenuated, causing the waveform's rise and fall times to slow down. Furthermore, the waveform changes slightly depending on the preceding and following bit patterns—this is ISI (Inter-Symbol Interference).

For example, in the patterns "0→1→1→1" and "0→1→0→1", the voltage level reached by the second "1" is different. In the former, it charges fully, but in the latter, it starts discharging immediately, so the voltage doesn't rise completely. When all such patterns are overlaid, the traces spread out, forming the "eye" shape.

🧑‍🎓

Ah, so that's what "the eye is closed" means! If ISI gets severe, the traces overlap and the eye collapses.

🎓

Exactly. An open eye means there is margin for the receiver to correctly determine bits even in the presence of noise or timing variations. For PCIe Gen5 (32 GT/s), the post-equalization eye opening height must be at least 15 mV, and jitter must be below 3.5 ps. For Gen6 (64 GT/s, PAM4), the requirements are even stricter.

Quantitative Metrics for Eye Opening

🧑‍🎓

Can you measure the degree of "eye opening" numerically?

🎓

Of course. There are two fundamental metrics for eye diagrams.

Eye Height is the difference between the minimum voltage of the "1" level and the maximum voltage of the "0" level at the sampling timing:

$$ \text{Eye Height} = V_{\text{high,min}} - V_{\text{low,max}} $$
🎓

$V_{\text{high,min}}$ is the minimum voltage of the "1" level across all bit patterns, and $V_{\text{low,max}}$ is the maximum voltage of the "0" level. The larger this value, the greater the noise margin. It indicates how much margin exists relative to the receiver buffer's threshold voltage.

Eye Width is the time difference between the left and right crossing points:

$$ \text{Eye Width} = T_{\text{UI}} - \text{Jitter}_{\text{pp}} $$
🎓

$T_{\text{UI}}$ is the time width of 1 UI, and $\text{Jitter}_{\text{pp}}$ is the peak-to-peak jitter of the crossing points. The larger this value, the greater the timing margin.

For example, for PCIe Gen5 (32 GT/s), $T_{\text{UI}} = 1/32 \times 10^9 \approx 31.25\,\text{ps}$. With 3.5 ps of jitter, the Eye Width is about 27.75 ps. This shows how much margin exists relative to the receiver CDR's lock range.

🧑‍🎓

So height corresponds to noise margin, and width corresponds to timing margin. It's no good if only one is good, right?

🎓

Exactly. In practice, a eye mask—a hexagonal prohibited area—is defined in the center of the eye, and it's verified that no waveform trace touches the mask. Both height and width must be satisfied simultaneously to pass the specification. The mask coordinates are specified in standards like USB4 and PCIe.

Jitter Decomposition (RJ/DJ)

🧑‍🎓

I thought jitter was simply waveform fluctuation, but why do we separate it into RJ and DJ?

🎓

Jitter decomposition is essential for BER (Bit Error Rate) estimation. There are two main types of jitter:

  • DJ (Deterministic Jitter): Bounded jitter with identifiable causes. Includes ISI, crosstalk, duty cycle distortion (DCD), periodic jitter (PJ), etc. Has an upper bound for its peak-to-peak value.
  • RJ (Random Jitter): Jitter with a Gaussian distribution caused by thermal noise and shot noise. Theoretically has no upper bound.
🎓

Total Jitter (TJ) is estimated for a specific BER target using the following formula:

$$ \text{TJ}(\text{BER}) = \text{DJ}_{\text{pp}} + 2 \cdot Q(\text{BER}) \cdot \sigma_{\text{RJ}} $$
🎓

Here, $Q(\text{BER})$ is the inverse cumulative distribution function of the normal distribution (inverse of the Q-function). For BER = $10^{-12}$, $Q \approx 7.03$; for BER = $10^{-15}$, $Q \approx 7.94$.

Let's give a concrete example. Suppose a channel has $\text{DJ}_{\text{pp}} = 5\,\text{ps}$ and $\sigma_{\text{RJ}} = 0.3\,\text{ps}$. The TJ at BER = $10^{-12}$ is:

$$ \text{TJ}(10^{-12}) = 5 + 2 \times 7.03 \times 0.3 = 5 + 4.22 = 9.22\,\text{ps} $$
🧑‍🎓

Even if RJ seems small, it gets amplified by the Q-function multiplier...! An additional 4.2 ps from RJ 0.3 ps compared to DJ 5 ps.

🎓

Yes. That's why reducing RJ is one of the most critical challenges in high-speed serial design. PLL jitter performance, power supply noise suppression, and board ground integrity directly affect RJ. While much of DJ can be compensated for by equalizers, RJ cannot.

BER Bathtub Curve

🧑‍🎓

The BER bathtub curve comes up often, but how is it related to the eye diagram?

🎓

The bathtub curve plots BER (vertical axis) against sampling phase (horizontal axis). As the name suggests, it resembles the cross-section of a bathtub. The left and right walls rise steeply, and there is a "bottom" in the center where BER is minimized.

🎓

Mathematically, the BER at sampling phase $\phi$ is derived from the convolution of the Gaussian distribution of RJ and the distribution of DJ. The one-sided BER (e.g., the left wall) is:

$$ \text{BER}_{\text{left}}(\phi) = \frac{1}{2}\,\text{erfc}\!\left(\frac{\phi - \mu_{\text{DJ,left}}}{\sqrt{2}\,\sigma_{\text{RJ}}}\right) $$
🎓

The right wall is calculated similarly, and the total BER is:

$$ \text{BER}(\phi) = \text{BER}_{\text{left}}(\phi) + \text{BER}_{\text{right}}(\phi) $$
🎓

The "width of the bottom" of the bathtub is the timing margin for that BER target. For example, if the bottom width is 0.3 UI at BER = $10^{-12}$, then there is 0.3 UI of margin for the CDR's sampling phase. The PCI-SIG standard specifies this bottom width as "Minimum Eye Width at BER = $10^{-12}$".

🧑‍🎓

So, a deeper and wider bathtub bottom is better. Information about BER that's hard to see in a regular eye diagram is immediately apparent in the bathtub curve.

🎓

Yes. An eye diagram is an overlay of waveforms, so it provides a "worst-case" view, but statistically it only contains information up to about BER $10^{-5}$. To evaluate BER at $10^{-12}$ or $10^{-15}$, jitter decomposition and the bathtub curve are essential.

Channel Transfer Function Model

🧑‍🎓

So whether the eye opens or closes is ultimately determined by the channel characteristics, right? How is the channel modeled?

🎓

The channel (transmission path) is characterized by S-parameters. For a 2-port network, the basic ones are insertion loss $S_{21}(f)$ and return loss $S_{11}(f)$. For differential pairs, $S_{dd21}$ (differential insertion loss) is used.

The time-domain pulse response $h(t)$ is obtained by the inverse Fourier transform of $S_{21}(f)$:

$$ h(t) = \mathcal{F}^{-1}\{S_{21}(f)\} $$
🎓

The received waveform $y(t)$ is the convolution of the transmitted waveform $x(t)$ and the channel impulse response:

$$ y(t) = x(t) * h(t) = \int_{-\infty}^{\infty} x(\tau)\,h(t-\tau)\,d\tau $$
🎓

In practice, S-parameters are either measured with instruments (VNA) or obtained through simulation with 3D electromagnetic solvers (HFSS, CST). It's common to cascade the S-parameters of PCB traces, connectors, vias, and packages to build an end-to-end channel characteristic.

🧑‍🎓

So if the channel's frequency response is poor (high frequencies are attenuated), the pulse response tail spreads out, ISI increases, and the eye closes, right?

🎓

Perfect understanding. For example, running a 10-inch differential pair on an FR-4 board can easily result in insertion loss exceeding -20 dB at the Nyquist frequency (16 GHz for PCIe Gen5). How to compensate for this loss is the core of equalizer design.

Coffee Break Trivia Corner

Seeing "Eye Closure" in the Design Phase — The Birth of the Eye Diagram

The name "eye diagram" comes from the fact that the overlaid bit waveforms resemble a human eye. This display method became widely used during the digitalization of telephone lines in the 1960s-70s, as oscilloscope trigger synchronization technology advanced. The ability to predict eye opening via simulation in the design phase emerged with the spread of SPICE-based IBIS models in the 1990s. The shift from "not knowing quality until the board is made and tested" to "predicting the degree of closure via simulation beforehand" was one of the biggest turning points in high-speed serial design history.

Physical Meaning of Each Term
  • Eye Height $V_{\text{high,min}} - V_{\text{low,max}}$: The minimum voltage difference for the receiver buffer to distinguish between "0" and "1". Indicates the margin for correct bit determination even in the presence of noise (power supply fluctuations, crosstalk, dielectric loss of the board). Analogous to the width of the centerline between opposing lanes on a highway—too narrow increases the risk of a head-on collision.
  • Eye Width $T_{\text{UI}} - \text{Jitter}_{\text{pp}}$: The margin for the CDR (Clock Data Recovery) to sample data at the correct timing. Large jitter causes the optimal sampling phase to shift for each bit, leading to decision errors (increased BER). Analogous to train door opening/closing timing—shorter dwell time at the platform makes boarding/alighting more difficult.
  • Q-function $Q(\text{BER})$: A scaling coefficient derived from the BER target to obtain the tail probability of the normal distribution. The smaller the BER (stricter reliability requirement), the larger the Q value, amplifying the effect of RJ.
Assumptions and Applicability Limits
  • Linear Channel Assumption: The S-parameter model assumes a linear time-invariant system. The transmitter driver's nonlinearity (slew rate limitation, power droop) requires separate modeling.
  • Gaussian Nature of RJ: Jitter decomposition is based on the assumption that RJ follows a Gaussian distribution. Accuracy degrades when non-Gaussian jitter (e.g., PLL bang-bang jitter) is dominant.
  • Steady State: The BER bathtub curve assumes a steady state after CDR lock. It is not applicable during startup or link training.
  • NRZ Signal: The basic formulas are for NRZ (2-level) signals. For PAM4, metrics must be applied to each of the three eye openings.
Dimensional Analysis and Unit System
Physical QuantityUnitTypical Value (PCIe Gen5)
UI (Unit Interval)ps31.25 ps (32 GT/s)
Eye HeightmV≥ 15 mV (post-equalization)
Jitter (TJ @ BER=$10^{-12}$)ps≤ 3.5 ps
RJ (rms)ps0.1 to 0.5 ps
DJ (pp)ps1 to 8 ps
Insertion Loss $S_{dd21}$dB-20 to -35 dB @ Nyquist

Numerical Methods and Implementation

Statistical Eye Diagram Analysis

🧑‍🎓

In actual analysis, do you really simulate all bit patterns as time-domain waveforms? For something like $2^{20}$ bits, the computational cost seems enormous...

🎓

Good point. Time-domain bit-by-bit simulation is intuitive, but to directly verify BER = $10^{-12}$, you would need over $10^{13}$ bits, which is impractical.

That's where Statistical Eye Diagram Analysis comes in. This method analytically derives the probability distribution of ISI from the channel's pulse response, combines it with the convolution of RJ, and generates a BER map. The computational complexity is $O(2^N)$ (where $N$ is the number of cursors affecting ISI), but in practice, the effective number of cursors can be truncated to around 10-20, so it completes in seconds.

ISI Convolution Calculation

🧑‍🎓

What does "analytically" deriving the ISI probability distribution mean, specifically? How is it done?

🎓

Sampling the channel's pulse response (SBR: Single Bit Response) yields cursor values $c_k$ at each UI. $c_0$ is the main cursor, $c_{-1}, c_{-2}, \ldots$ are pre-cursors, and $c_1, c_2, \ldots$ are post-cursors.

The sampled value of the received signal $y_n$ is:

$$ y_n = \sum_{k=-K_{\text{pre}}}^{K_{\text{post}}} c_k \cdot a_{n-k} $$
🎓

$a_{n-k} \in \{-1, +1\}$ is the bit value. The part excluding the main cursor $c_0 \cdot a_n$ is ISI. Each ISI term takes one of two values, $\pm c_k$, with equal probability 1/2. Since all cursors are independent, the probability distribution of ISI is the convolution of the two-point distributions of each cursor.

If there are $N$ cursors, a discrete probability distribution is obtained from $2^N$ combinations. Convolving this with the Gaussian distribution of RJ yields the continuous probability density function of the sampled value, allowing calculation of the eye opening for any BER target.

🧑‍🎓

I see... it's repeated convolution. Can it be accelerated with FFT?

🎓

Sharp. In fact, commercial tools (Keysight ADS, Ansys HFSS Transient, etc.) use fast algorithms based on characteristic functions (Fourier transform of the probability distribution). They multiply the characteristic functions of each cursor $\Phi_k(\omega) = \cos(c_k \omega)$, then use inverse FFT to convert back to the probability distribution. The computational complexity is $O(N \cdot M \log M)$ (where $M$ is the number of discretization points), which is orders of magnitude faster than enumerating all $2^N$ possibilities.

Mathematics of Equalizers (FFE/CTLE/DFE)

🧑‍🎓

In actual analysis, do you really simulate all bit patterns as time-domain waveforms? For something like $2^{20}$ bits, the computational cost seems enormous...

関連シミュレーター

この分野のインタラクティブシミュレーターで理論を体感しよう

シミュレーター一覧

関連する分野

電磁気解析信号品質解析連成解析
この記事の評価
ご回答ありがとうございます!
参考に
なった
もっと
詳しく
誤りを
報告
参考になった
0
もっと詳しく
0
誤りを報告
0
Written by NovaSolver Contributors
Anonymous Engineers & AI — サイトマップ
About the Authors