Let's move on to the next topic and that's eye-diagram mask testing.
Eye-diagram mask testing is something that's used in high-speed digital communication
all over the world, especially Gbps type communication.
It could also be used on the CANbus.
What an eye-diagram is, what it shows you,
is it's an overlay of all bits on top of one another
to show you worst-case amplitude, noise, jitter, or other waveform anomalies.
Years ago, a conventional eye-diagram measurement required an explicit clock.
You had a data signal and a clock signal, and you just simply triggered on the clock signal,
and the data signal would automatically overlay.
Today, clocks are embedded within the data.
It requires a clock recovery capability.
Let me show you a diagram.
Here, we show a few bits of one CAN frame in that upper diagram.
The CANbus synchronizes and resynchronizes on every recessive-to-dominant bit transition.
All the signals or waveforms I'm showing during this presentation are dominant-bit low.
They synchronize on every falling edge.
Here, you can see all the sink and resink points.
After capturing the waveform, you identify those specific resink points,
and then you divide up everything between those resink points into ideal bit times.
Then, the scope steps down and takes two bit times at a time
and overlays them on top of each other, as you see here.
There is one bit time.
We can see here, there's jitter at each of the bit boundaries
as well as some amplitude deviations.
Then, you can apply the pass/fail mask to it.
This is an eye-diagram mask.
Notice that this mask is shifted to the right.
That's because the CANbus samples later during the bit time, as shown here.
The CAN FD bus, which we'll get to a bit later,
samples closer to the middle of the bus,
and so that pass/fail mask will be closer to the middle of the eye.
Why is it called an eye?
Especially on some very, very high-speed buses,
that portion in the middle of that bit time begins to look like an eye.
On the vertical axis, what the eye-diagram is going to show you
is worst-case differential noise or interference,
transmitter-dominant bit-level variations.
Different nodes can actually transmit different dominant-bit amplitudes
as well as what we showed earlier, the dominant bits
that jumped to a much lower level during arbitration and acknowledgement.
You can easily see ringing, reflections, non-monotonic edges.
On the horizontal axis, it's going to show you worst-case jitter,
worst-case clock tolerance errors, bit-time quantization errors,
as well as slew rate symmetry.
I left one important one off of this list of bullets.
The other thing it's going to show you is that propagation delay
when bits travel from one end of the bus and back again.
This is what a CAN eye-diagram looks like on the InfiniiVision oscilloscope.
Between those two red markers there that I've annotated on this display,
that is that propagation delay.
You can see where bit time is, and I've highlighted the approximate 75% sample point.