3.4.3 Eye Monitoring
(Ask a Question)An eye diagram is a visual representation of a digital signal from an oscilloscope, showing the signal's eye opening as a function of voltage over time. It helps in identifying issues such as timing jitter, amplitude noise, and other signal integrity problems. Similarly, the Eye Monitor within the PolarFire XCVR can do the same without the needed instrumentation of an oscilloscope. Both an oscilloscope and the Eye Monitor represent a "typical" data stream in Bit Error Rate (BER) measurements, including noisy channel impediments and bandwidth limiting effects from stressful data stream patterns when it is transmitted through a real system.
The PolarFire Eye Monitor path within the receiver uses an exact copy of the Continuous-Time Linear Equalizer (CTLE) and Decision Feedback Equalizer (DFE) blocks as the Rx data path to provide accurate monitoring and analysis of the signal quality. This path ensures that the measurement activity does not introduce any disruption to the actual data being received. By incorporating an independent phase rotator and offset setting, the Eye Monitor varies the phase and sampling offset relative to the DFE path. This parallel measurement pathway provides a precise capture of the eye diagram dimensions, which is crucial for assessing signal integrity and performance. This approach helps in identifying issues such as jitter and noise more accurately, as it provides a clearer picture of the signal's on-chip behavior.
When comparing a waveform from an oscilloscope to the resulting waveform of the Eye Monitor, the waveforms are likely to be different. This is because the Eye Monitor is post-equalization thus the Rx CTLE settings impose a negative DC gain, resulting in a change of the overall input signal characteristics as detected inside the receiver. This gives a true measure of signal quality after the PCB variations, package pin including the device equalization corrections rather than working with the distortions that occur when performing off-chip oscilloscope probing.
The Eye Monitor requires a reasonably good signal to provide meaningful measurements. If the incoming signal is so poor in quality that the CDR cannot reliably lock onto it, the Eye Monitor cannot operate either. This is because the Eye Monitor depends on the CDR to provide a stable clock reference for accurate signal analysis. Without a stable clock, the eye diagram cannot be accurately constructed, rendering the Eye Monitor ineffective. Both the DFE and Eye Monitor require a certain level of signal quality to function properly. If the signal quality is too poor, neither the CDR nor the Eye Monitor can perform their respective tasks effectively. Also, both the eye monitor and DFE operation are not permitted below 3 Gbps.
The embedded Eye Monitor logic measures the eye of the incoming data by using the XCVR register interface to control and monitor the features. The eye monitor circuitry works with all bit widths of the deserializer data path. It samples the differences between Eye Monitor and DFE data by sweeping the serial data across 32 phase steps across one complete UI while monitoring the BER. These results provide a statistical eye scan representing the margin analysis of the channel over which the RX receives data showing input voltage compared to BER. The input voltage is expressed as a value after DC-offset cancellation where the differential input is near zero.
The Eye Monitor/DFE comparison block is embedded in the XCVR. The block samples the differences between Eye Monitor and DFE data, maintaining a count of up to 10 differences per DFE clock. It is operated by programming user-defined samples to EYEMONITOR SAMPLE COUNT and transitioning RUN EYEMONITOR COMPARISON from 1’b0 to 1’b1. It counts for EYEMONITOR SAMPLE COUNT clock samples, asserts EYEMONITOR COMPARISON DONE, and presents the difference count on EYEMONITOR COMPARISON OUT. The count is self-reset between comparisons by resetting the accumulating errors between measurement steps.
The BER for an Eye Monitor scan is dependent on the number of samples taken at each point. As the maximum number of differences per sample is 10, the error rate (BER) is calculated using the following equation:
EYEMONITOR COMPARISON OUT / (10 × EYEMONITOR SAMPLE COUNT)
To restart the block, de-assert and then re-assert RUN EYEMONITOR COMPARISON which restarts the entire scan.
| Register Name | Field Name | Width | Field Offset | Type | Default | Field Description | 
|---|---|---|---|---|---|---|
| DES_RTL_EM | RUN_EYEMONITOR_COMPARISON | 1 | 0 | RW | 0x0 | 
 
 | 
| EYEMONITOR_SAMPLE_COUNT | 12 | 1 | RW | 0x64 | 
 | |
| EYEMONITOR_COMPARISON_DONE | 1 | 13 | RO | 0x0 | Eye Monitor Done Signal | |
| EYEMONITOR_COMPARISON_OUT | 16 | 16 | RO | 0x0 | Eye Monitor comparison error count | 
