Labs / 02
Lab B: Channel Response, ISI, and Eye Diagrams
A channel is one object. S-parameters, an impulse response, a TDR trace and an eye diagram are not four models of it — they are four questions put to the same network, and every answer comes from the same definition. This lab defines the channel once, as a cascade of sections, and derives each linked view from it.
They are not all equivalent, though, and it matters which direction you are going. S21 as a complex function of frequency and the impulse response are the same linear response when their complex data, bandwidth, grid, window and reference plane are retained. Other views answer more specific questions and discard information: a loss curve in dB has discarded the phase, a sampled TDR trace has discarded whatever lies outside its band, an eye is a projection in which many different waveforms land on top of each other, and a receiver's decisions are the output of a slicer, which is not a linear operation at all. You can go from the complete complex description to any of them. You cannot come back.
Best viewed on a laptop or desktop. These panels are built so you can move a slider and watch several charts answer at once. A phone has no room to put them side by side.
Notes
Select a stem, or focus the plot and use the arrow keys, to trace its contribution to an earlier bit.
Find the discontinuity: read its position off the TDR
| Source symbol | Sent | Weight | Contribution |
|---|
Learning sequence and notes
Select a sample on the plot or use its arrow keys. The selected trajectory is highlighted in the eye view.
Does a negative post-cursor always push a decision toward the wrong symbol?
Find the worst margin, then inspect the source symbols, weights, contributions, and omitted remainder. Compare raw and active values at this same sampling instant.
Each contribution is the source symbol multiplied by its amplitude and tap weight. Its effect therefore depends on both signs. The worst-margin sample is closest to the wrong decision in the transmitted symbol’s direction; it can still be detected correctly.
Use the table sum and the zero threshold to explain the decision. In this model, values above zero map to +1; zero and negative values map to −1.
Impulse response: how the channel spreads a sample
Learning sequence and notes
Each dimensionless weight multiplies an input voltage sample in the discrete convolution. This is different from a response to a finite-width bit, which also includes the transmitter edge. Both paths use the same sample interval and time reference.
With CTLE switched off, should the raw and active impulse traces differ?
Compare the early and full records, then switch the time labels. Keep the channel fixed while you compare CTLE off and on, and check the decay diagnostic before interpreting the tail.
With CTLE off, both traces use the raw channel weights and should agree. “From input reference” restores the removed integer transport delay to the labels; it does not change the weights. Fractional delay remains.
If the sample rate doubles, can individual weight heights be compared without also checking sample spacing and normalization?
Inspect loss and delay at the same frequency
Notes
Click either frequency plot, use its left/right arrow keys, or enter a frequency in GHz. Both markers select the nearest computed sample by distance in physical Hz. The readout reports that sample’s actual frequency; it is not an interpolated value or a new simulation. Group delay is displayed in ps and exported in seconds.
About a second and a half. Moving any control abandons a running sweep rather than letting it finish into a different scenario.
Notes
Select a cell with a click or the plot’s arrow keys, then load it to compare with the full-resolution channel. Completed cells can be inspected while the remaining sweep runs.
The channel being measured
Notes
Select a block to reach its controls. Line sections form the through path; the open stub is a shunt branch at its junction, not another series line. S11 and S21 use the input/output reference planes shown, both referenced to 50 Ω. CTLE is downstream of that channel measurement. This diagram does not de-embed individual sections.
In high-speed digital engineering, different specialists speak entirely different mathematical dialects. An RF microwave engineer evaluates a high-speed channel in the frequency domain, looking at S21 insertion loss curves and return loss nulls. A SerDes DSP designer analyzes the time domain, measuring cursor and post-cursor voltages on a single-bit pulse response (h(t)). A system validation engineer looks only at the final receiver eye diagram, measuring eye height in millivolts and eye width in picoseconds.
It is easy to treat these as disconnected views from separate disciplines. In reality, they are four simultaneous mathematical projections of the exact same physical channel. The frequency response (S21) and the impulse response (h(t)) form a strict Fourier transform pair; the pulse response is the convolution of that impulse response with the driver's unit step; and the eye diagram is simply the folding of hundreds of thousands of those overlapping pulse responses under a pseudo-random bit sequence (PRBS).
This interactive laboratory binds all four representations together. When you adjust a physical trace length, introduce an impedance mismatch, or attach an unterminated via stub, every panel updates instantaneously from the same underlying ABCD transmission matrix.
Linked views of one channel
The panels above come from one network: a cascade of line sections with an optional mismatched piece and an optional stub. Changing a physical control updates every view from that definition. Complex S21 and the discrete impulse response form a transform pair when the bandwidth, sampling grid, window and reference planes are kept consistent; the other views are projections that answer narrower questions.
This connection helps with diagnosis. Pulse spreading and ringing must be consistent with the complex frequency response over the band used to construct it. A magnitude-only plot, an insufficient frequency span, or a different reference plane can hide the feature that matters, so preserve those conditions when comparing frequency- and time-domain results.
Why the cascade is a matrix product
Each section is described by an ABCD matrix relating the voltage and current at its input to those at its output. Because the output of one section is literally the input of the next, cascading is matrix multiplication — and because matrix multiplication is exact, every internal re-reflection between the discontinuity and the two ends is included automatically.
That matters more than it sounds. A first-order treatment — "the discontinuity reflects this much, and the load echo comes back through the channel twice" — gets the main features right and the ripple either side of a notch wrong, because the ripple is the higher-order terms interfering.
Go deeper — group delay, and what this model still leaves out
The group delay panel is the derivative of the S21 phase:
A uniform lossless line has a group delay exactly equal to its own Td, flat at every frequency — the model gate asserts this to within a femtosecond. Anything that is not flat is a frequency-dependent arrival time, which is dispersion, which is ISI by another name. The peaks you see around a stub resonance are the sharpest form of it.
What the model deliberately leaves out:
- Crosstalk. Single-ended, single-net. The neighbours that would sit either side of this trace in a real escape are not here — see what closes the eye, which adds them.
- The DFE. The receiver here is a CTLE only, so the post-cursors shorten but never vanish. A four-tap DFE would zero the first four exactly, which is a different and much stronger claim.
- Package and die. The source and load are ideal 50 Ω. Real terminations are a resistor in parallel with a pad capacitance and a bond inductance, which is itself a discontinuity at both ends.
- Mode conversion. Everything here is single-ended. A differential pair with skew converts part of the differential signal into common mode, and no single-ended S21 can show that.
What the eye height on this panel actually is. At the decision instant, every sample is sorted by the symbol that was transmitted — not by which side of zero it landed on. The number is the gap between the lowest sample of the ones and the highest sample of the zeros, over one period of the PRBS7 pattern. Three consequences worth knowing before you compare it with anything:
- It is a worst case over this pattern, not a percentile and not a BER contour. A compliance eye height is a different quantity measured a different way, and the two are not interchangeable.
- It goes negative when the two populations overlap, and the panel says "closed by" and how much. Sorting by sign instead would have folded every wrong sample into the other population and reported a positive opening no matter how bad the channel was.
- It is built from 393 symbols, with convolution edges removed by a fixed number of unit intervals for every preset. That finite population is useful for exploring the eye shape and selected decisions; it is not large enough to support a compliance claim. The readout beside it counts the wrong decisions and refuses to quote a bit error rate: a repeating deterministic pattern gives reproducible samples, not independent trials, so its length is not evidence about a real link.
Asymmetric invertibility: the one-way diagnostic trap. The relationship between these four views is strictly directional in diagnostic utility. Moving forward is deterministic:
However, attempting to invert this chain backwards — Eye Diagram → Geometry — is fundamentally ill-posed and non-unique. A completely closed eye diagram can be produced by three radically different physical impairments:
- Severe, smooth dielectric absorption along a uniform 20-inch trace (wide, smeared pulse response; linear loss slope in S21).
- An un-backdrilled 150-mil via stub acting as a quarter-wave notch filter (sharp oscillatory ringing in h(t); deep localized dip in S21).
- A severe driver impedance mismatch producing a succession of round-trip reflections (discrete echo steps in h(t); periodic ripple in S21).
Looking at the receiver eye diagram tells you only that the channel has failed; it cannot tell you why. Effective signal integrity triage requires moving backward through the chain one step at a time: using the single-bit pulse response to identify whether the eye closure is driven by main cursor attenuation, precursor dispersion, or post-cursor ringing, and using the frequency-domain S-parameters and group delay to isolate the specific physical discontinuity responsible.
Bring your own file
The parser behind this is a small, strict reader for one shape of Touchstone file, and it is deliberately an inspector rather than an importer. It will tell you what a file contains and whether it can be trusted — and it will not offer to load it into the lab above, because doing that honestly needs renormalisation to a different reference impedance, interpolation onto a different frequency grid, and a DC extrapolation. Three pieces of numerical work, each with its own error budget, none of which is written yet. A button that skipped them would produce numbers, and they would be wrong in a way nothing downstream could detect.
or drop one here, or
Nothing loaded. The example is generated from this site's own causal line model, so it describes a channel the lab above can also compute from first principles — which makes it a check on the reader rather than a demonstration of it.
In the real world
The reason this lab links several panels on one page is that channel debug is often always a question of which domain shows the problem most clearly. A smooth loss slope is obvious in S21 and invisible on a TDR. A 30 Ω via field is obvious on a TDR and shows up in S21 only as gentle ripple. A stub resonance is a spike in group delay, a null in S21, and almost nothing on a TDR at all.
So the practical habit is to look at all of them before concluding anything — and, when a simulation and a measurement disagree, to find the domain where the disagreement is largest, because that is where the wrong assumption lives.
Sources
Rows marked with a claim id are tracked in the claim ledger, which records what each source can and cannot establish.
Where this is explained
This page is the instrument. The mechanisms it lets you change are described on the topic pages below, each one linked for the specific thing it explains rather than as a general reading list.
- Loss mechanisms — where the decibels come from, and why conductor and dielectric split the band.
- Intersymbol interference — why one bit arrives inside the next, which is what the eye is measuring.
- Reading an eye diagram — what the height, the width and the crossings each tell you.
- S-parameters — S21 and S11 as this lab plots them, and what TDR adds to them.
- Equalization — how a CTLE and a DFE reopen an eye that loss has closed.