Patent Publication Number: US-11038602-B1

Title: On-chip jitter evaluation for SerDes

Description:
BACKGROUND 
     Digital communications occur between sending and receiving devices over an intermediate communications medium, e.g., a fiberoptic cable or insulated copper wire, having one or more designated communications channels, e.g., carrier wavelengths or frequency bands. Each sending device typically transmits symbols at a fixed symbol rate, while each receiving device detects a potentially corrupted sequence of symbols and attempts to reconstruct the transmitted data. 
     A “symbol” is a state or significant condition of the channel that persists for a fixed period of time, called a “symbol interval.” A symbol may be, for example, an electrical voltage or current level, an optical power level, a phase value, or a particular frequency or wavelength. A change from one channel state to another is called a symbol transition. Each symbol may represent (i.e., encode) one or more binary bits of the data. Alternatively, the data may be represented by symbol transitions, or by sequences of two or more symbols. The simplest digital communication links use only one bit per symbol; a binary ‘0’ is represented by one symbol (e.g., an electrical voltage or current signal within a first range), and binary ‘1’ by another symbol (e.g., an electrical voltage or current signal within a second range). 
     Channel non-idealities produce dispersion which may cause each symbol to perturb its neighboring symbols, causing intersymbol interference (ISO. As the symbol rate increases, ISI can make it difficult for the receiving device to determine which symbols were sent in each interval, particularly when such ISI is combined with additive noise. The open literature discloses many equalization and demodulation techniques for recovering digital data from the degraded receive signal even in the presence of ISI. A critical piece of such techniques is a determination of the correct sample timing, as sample timing directly affects the signal to noise ratio of the discrete samples. 
     In most cases, the sample timing is recovered from the data stream itself using any one of various available strategies for detecting and tracking optimal sample timing. Such timing recovery strategies must deal not only with the channel dispersion and noise, but also with discrepancies between the clock signals for the transmitter and receiver. In particular, timing jitter can adversely affect the reliability of the communications link, whether measured in terms of error rate, eye size, or signal-to-noise ratio. As such, measurements of timing jitter can serve as early indicators of link reliability, and in particular, may indicate whether a given transmitter or receiver should be recalibrated or replaced to ensure continued link reliability. 
     SUMMARY 
     Accordingly, there are disclosed herein an illustrative integrated circuit and method providing on-chip jitter evaluation. One illustrative integrated circuit embodiment includes a digital receiver having a timing recovery circuit that determines a phase offset signal from estimated timing errors of previous sampling instants; and an on-chip memory that captures the phase offset signal, the on-chip memory being coupled to a processor that derives one or more jitter measurements from the phase offset signal. 
     One illustrative method embodiment includes: (a) operating a digital receiver to convert a communications signal into a digital data stream, the digital receiver including a timing recovery circuit that determines a phase offset signal from estimated timing errors of previous sampling instants; (b) capturing the phase offset signal in an on-chip memory; and (c) using a processor coupled to the on-chip memory to derive one or more jitter measurements from the phase offset signal. 
     Each of the foregoing embodiments may be implemented individually or in combination, and may be implemented with any one or more of the following features in any suitable combination: 1. the one or more jitter measurements include at least one of: a probability distribution, a mean-square value, a root-mean-square value, and a frequency transform. 2. the on-chip memory captures the phase offset signal during communications from a remote transmitter, such that the measurements represent a link jitter. 3. the processor reports an error condition if the one or more jitter measurements indicate an inadequate link quality. 4. the processor periodically reports link quality to a switch management fabric. 5. the integrated circuit includes: a local transmitter that sends a communication signal; and a loopback path that selectably couples the communication signal to the digital receiver, such that the measurements represent a loopback jitter. 6. the local transmitter and the digital receiver are configurable to use a shared reference clock and configurable to use separate reference clocks. 7. the processor combines the digital receiver jitter with a link jitter to report a jitter for a remote transmitter. 8. the integrated circuit is embodied in a network cable. 9. the integrated circuit is embodied in a network switch or router. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a perspective view of an illustrative active Ethernet cable (AEC). 
         FIG. 2  is a perspective view of an illustrative 1:4 breakout AEC. 
         FIG. 3  is a function-block diagram of the illustrative AEC. 
         FIG. 4  is a block diagram of an illustrative multi-lane data recovery and remodulation (DRR) device. 
         FIG. 5  is an architectural diagram for an illustrative communications link. 
         FIG. 6  is a block diagram of an illustrative local transmitter-receiver pair 
         FIG. 7  is a block diagram showing an illustrative clock recovery loop. 
         FIG. 8  is a flow diagram of an illustrative method of on-chip jitter evaluation. 
     
    
    
     DETAILED DESCRIPTION 
     While specific embodiments are given in the drawings and the following description, keep in mind that they do not limit the disclosure. On the contrary, they provide the foundation for one of ordinary skill to discern the alternative forms, equivalents, and modifications that are encompassed in the scope of the appended claims. 
     Disclosed herein are circuits and methods for evaluating timing jitter. These circuits and methods can be embedded on-chip with integrated circuit transceivers to characterize the timing jitter of not only the transceivers, but also of any remote transmitters with which the local receiver is linked. The measured jitter can be reported to, e.g., a switch management fabric, that monitors the performance of the transceivers and the reliability of the communication links. The jitter measurements can also, or alternatively, be compared to predetermined performance thresholds and, if the jitter is determined to be excessive or otherwise unsatisfactory, an alert signal may be asserted or an alert message may be sent to warn of potentially inadequate link reliability and/or to initiate corrective action by a user or technician. 
     As one specific example, a switch port, upon detecting that a linked transmitter exhibits excessive timing jitter, may cause a switch controller to turn on a warning light near the port and to transmit an alert message to a central service that monitors all the switches in a given facility. As another specific example, an active network cable may have connectors that, when plugged into a switch port, perform a timing jitter evaluation of their embedded transceivers and the port transmitters to which they are connected. A status LED on each connector may be illuminated as green to indicate that no faults have been detected (including no detection of excessive timing jitter). On the other hand, if a connector detects excessive timing jitter, the status LED on that connector may be illuminated as yellow to warn that the link is unreliable. 
     As a prelude to a more detailed discussion of the on-chip timing jitter evaluation, we begin with a physical implementation to provide some context.  FIG. 1  is a perspective view of an illustrative cable that may be used to provide a high-bandwidth communications link between devices in a routing network. The routing network may be or include, for example, the Internet, a wide area network, a storage area network, or a local area network. The linked devices may be computers, switches, routers, and the like. The cable includes a first connector  100  and a second connector  101  that are electrically connected via electrical conductors  106  in a cord. The electrical conductors  106  may be electrically conductive wires arranged in a paired form such as with twinaxial conductors. Twinaxial conductors can be likened to coaxial conductors, but with two inner conductors instead of one. The inner conductors may be driven with a differential signal and their shared shield operates to reduce crosstalk with other twinaxial conductors in the cable. Depending on the performance criteria, it may be possible to employ other paired or single-ended conductor implementations. 
     Pursuant to the Ethernet standard, each conductor pair may provide unidirectional transport of a differential signal. To enable robust performance over even extended cable lengths, each connector  100 ,  101  may include a powered transceiver that performs clock and data recovery (CDR) and re-modulation of data streams, hereafter called a data recovery and re-modulation (DRR) device. The DRR devices process data streams traveling in each direction. Notably, the transceivers perform CDR and re-modulation not only of the inbound data streams to the host interface as they exit the cable, but also of the outbound data streams from the host interface entering the cable. 
     It is acknowledged here that the outbound data streams may be expected to be compliant with the relevant standard (e.g., the Ethernet standard for 400 Gbps) and may be expected to have experienced essentially no deterioration from their traversal of the network interface port&#39;s receptacle pins and the cable assembly&#39;s connector plug pins. Nevertheless, the modulation quality and equalization strategy employed by the electronics manufacturer of the transmitting network interface is generally unknown and the minimum requirements of the standard may be inadequate for transport over an extended cable length, particularly if the electronics manufacturer of the receiving network interface is different than that of the transmitting network interface. As with the transmitting network interface, the equalization and demodulation strategy employed by the electronics manufacturer of the receiving network interface is generally unknown and may be unable to cope with the attenuation and interference caused by signal transport over an extended cable length, particularly if the connectors aren&#39;t fully seated or if the contacts have tarnished. By performing DRR of both inbound and outbound data streams, the illustrative cable ensures that the electrical signals transiting the cable conductors are able to withstand the attenuation and interference encountered between the cable&#39;s end connectors, thereby enabling consistently robust data transfer over extended cable lengths to be assured without consideration of these factors. 
     Though a 1:1 cable has been used in the foregoing description, the principles disclosed hereinbelow are also applicable to format conversion cables and to breakout cable designs.  FIG. 2  is a perspective view of an illustrative 1:4 breakout cable having a unary end connector  200  which may be designed for sending and receiving a 200 Gbps Ethernet data stream, e.g., in the form of 4 lanes of 50 Gbps, each lane using PAM4 at 26.5625 GBd. Electrical conductors  206  are encased as four cords each carrying 1 lane of PAM4 at 26.5625 GBd (50 Gbps) or 2 lanes of non-return to zero (NRZ) signaling at 26.5625 GBd (25 Gbps) to a corresponding one of the split-end connectors  201 - 204 . Each of the split-end connectors  201 - 204  may be designed for sending and receiving a 50 Gbps Ethernet data stream. Such breakout cables are useful for linking host devices designed to different generations of the Ethernet standard. As another example, the unary end connector may be designed for sending and receiving 400 Gbps (8 lanes of 50 Gbps PAM4), while each of the split-end connectors may be designed for sending and receiving 100 Gbps (4 lanes of 25 Gbps NRZ). At either the unary end or at the split ends, the DRR devices may provide format conversion by, e.g., converting 1 lane of PAM4 symbols into 2 lanes of NRZ symbols, and vice versa. 
       FIG. 3  is a function-block diagram of the illustrative cable of  FIG. 1 . Connector  300  includes a plug  302  adapted to fit a standard-compliant Ethernet port in a first host device  500  ( FIG. 5 ) to receive an electrical input signal carrying an outbound data stream from the host device and to provide an electrical output signal carrying an inbound data stream to the host device. Similarly, connector  301  includes a plug  303  that fits an Ethernet port of a second host device  501 . Connector  300  includes a first DRR device  304  to perform CDR and re-modulation of the data streams entering and exiting the cable at connector  300 , and connector  301  includes a second DRR device  304  to perform CDR and re-modulation of the data streams entering and exiting the cable at connector  301 . The DRR devices  304  may be integrated circuits mounted on a printed circuit board and connected to connector plug pins via circuit board traces. The wires of cord  306  may be soldered to corresponding pads on the printed circuit board that electrically connect to the DRR devices. 
     In at least some contemplated embodiments, the printed circuit boards each also support a micro-controller unit (MCU)  305 . Each DRR device  304  is coupled to a respective MCU device  305  which configures the operation of the DRR device via a first two-wire bus. At power-on, the MCU device  305  loads equalization parameters from Flash memory  307  into the DRR device&#39;s configuration registers  308 . The host device can access the MCU device  305  via a second two-wire bus that operates in accordance with the I2C bus protocol and/or the faster MDIO protocol. With this access to the MCU device  305 , the host device can adjust the cable&#39;s operating parameters and monitor the cable&#39;s performance as discussed further below. 
     Each DRR device  304 , includes a set  320  of transmitters and receivers for communicating with the host device and a set  322  of transmitters and receivers for sending and receiving via conductor pairs running the length of the cable. The illustrated cable supports eight bidirectional communication lanes LN 0 -LN 7 , each bidirectional lane formed by two unidirectional connections, each unidirectional connection having a differentially-driven twinaxial conductor pair (with a shield conductor not shown here). The transceivers include a memory  324  to provide first-in first-out (FIFO) buffering between the transmitter &amp; receiver sets  320 ,  322 . An embedded controller  310  coordinates the operation of the transmitters and receivers by, e.g., setting initial equalization parameters and ensuring the training phase is complete across all lanes and links before enabling the transmitters and receiver to enter the data transfer phase, during which the controller may coordinate measurements of link jitter. On power-up, or when a test mode is invoked, the controller  310  may further place the transmitter-receiver pairs into a loop back configuration as described below to measure local transmitter and receiver timing jitter. The embedded controller  310  employs the set of registers  308  to receive commands and parameter values, and to provide responses potentially including status information and performance data such as timing jitter. 
       FIG. 4  is a block diagram of an illustrative monolithic transceiver chip  404  which may embody the DRR devices  304  of  FIG. 3 . Chip  404  includes SerDes modules with contacts  422  for receiving and transmitting high-rate serial bitstreams across eight (differential) lanes in each direction, host-interfacing SerDes modules with contacts  420  for exchanging high-rate digital data streams with the host, and core logic  424  for implementing a channel communications protocol while buffering data in each direction. Also included are various supporting modules accessible via contacts  426 ,  428 , for functions such as power regulation and distribution, clock generation, digital input/output lines for control, and a JTAG module for built-in self testing. The chip designer can design the device by placing the predefined modular units for the serializers, deserializers, power, clock generator, I/O cells, and JTAG; and routing the interconnections between the modular units with a small amount of supporting logic. 
     The illustrative cable of  FIG. 3  may be a part of a point-to-point communications link between two host devices  500 ,  501  as shown in the architectural diagram of  FIG. 5 .  FIG. 5  shows the architecture using the ISO/IEC Model for Open Systems Interconnection (See ISO/IEC 7498-1:1994.1) for communications over a physical medium such as the twinaxial conductor pairs  306 . The interconnection reference model employs a hierarchy of layers with defined functions and interfaces to facilitate the design and implementation of compatible systems by different teams or vendors. While it is not a requirement, it is expected that the higher layers in the hierarchy will be implemented primarily by software or firmware operating on programmable processors while the lower layers may be implemented as application-specific hardware. 
     The Application Layer  508  is the uppermost layer in the model, and it represents the user applications or other software operating on different systems that need a facility for communicating messages or data. The Presentation Layer  510  provides such applications with a set of application programming interfaces (APIs) that provide formal syntax along with services for data transformations (e.g., compression), establishing communication sessions, connectionless communication mode, and negotiation to enable the application software to identify the available service options and select therefrom. The Session Layer  512  provides services for coordinating data exchange including: session synchronization, token management, full- or half-duplex mode implementation, and establishing, managing, and releasing a session connection. In connectionless mode, the Session Layer may merely map between session addresses and transport addresses. 
     The Transport Layer  514  provides services for multiplexing, end-to-end sequence control, error detection, segmenting, blocking, concatenation, flow control on individual connections (including suspend/resume), and implementing end-to-end service quality specifications. The focus of the Transport Layer  514  is end-to-end performance/behavior. The Network Layer  516  provides a routing service, determining the links used to make the end-to-end connection and when necessary acting as a relay service to couple together such links. The Data link layer  518  serves as the interface to physical connections, providing delimiting, synchronization, sequence and flow control across the physical connection. It may also detect and optionally correct errors that occur across the physical connection. The Physical layer  522  provides the mechanical, electrical, functional, and procedural means to activate, maintain, and deactivate channels (representations of conductor pairs  306 ), and to use the channels for transmission of bits across the physical media. 
     The Data Link Layer  518  and Physical Layer  522  are subdivided and modified slightly by IEEE Std 802.3-2015, which provides a Media Access Control (MAC) Sublayer  520  in the Data Link Layer  518  to define the interface with the Physical Layer  522 , including a frame structure and transfer syntax. Within the Physical Layer  522 , the standard provides a variety of possible subdivisions such as the one illustrated in  FIG. 5 , which includes an optional Reconciliation Sublayer  524 , a Physical Coding Sublayer (PCS)  526 , a Forward Error Correction (FEC) Sublayer  528 , a Physical Media Attachment (PMA) Sublayer  530 , a Physical Medium Dependent (PMD) Sublayer  532 , and an Auto-Negotiation (AN) Sublayer  534 . 
     The optional Reconciliation Sublayer  524  merely maps between interfaces defined for the MAC Sublayer  520  and the PCS Sublayer  526 . The PCS Sublayer  526  provides scrambling/descrambling, data encoding/decoding (with a transmission code that enables clock recovery and bit error detection), block and symbol redistribution, PCS alignment marker insertion/removal, and block-level lane synchronization and deskew. To enable bit error rate estimation by components of the Physical Layer  522 , the PCS alignment markers typically include Bit-Interleaved-Parity (BIP) values derived from the preceding bits in the lane up to and including the preceding PCS alignment marker. 
     The FEC Sublayer  528  provides, e.g., Reed-Solomon coding/decoding that distributes data blocks with controlled redundancy across the lanes to enable error correction. In some embodiments (e.g., in accordance with Article  91  or proposed Article  134  for the IEEE Std 802.3), the FEC Sublayer  528  modifies the number of lanes (Article  91  provides for a 20-to-4 lane conversion). 
     The PMA Sublayer  530  provides lane remapping, symbol encoding/decoding, framing, and octet/symbol synchronization. The PMD Sublayer  532  specifies the transceiver conversions between transmitted/received channel signals and the corresponding bit (or digital symbol) streams. An optional AN Sublayer  534  is shown as an internal element of the PMD Sublayer  532 , and it implements an initial start-up of the communications channels, conducting an auto-negotiation phase and a link-training phase before entering a normal operating phase. The auto-negotiation phase enables the end nodes to exchange information about their capabilities, and the training phase enables the end nodes to adapt both transmit-side and receive-side equalization filters in a fashion that combats the channel non-idealities. A receptacle  536  is also shown as part of the PMD sublayer  532  to represent the physical network interface port. 
     The connectors  300 ,  301 , have plugs  302 ,  303  that mate with the receptacles  536  of the two host devices  500 ,  501 . Within each connector, the DRR devices may implement a host-facing Physical Layer  520 , a center-facing Physical Layer  522 , and a Data Link Layer  540  that bridges together the two Physical Layers. In some embodiments, one or more of the internal sublayers within each connector (e.g., FEC, PCS, Reconciliation, MAC) are bypassed or omitted entirely to reduce areal requirements and/or to reduce power. More information regarding the operation of the sublayers, as well as the electrical and physical specifications of the connections between the nodes and the communications medium (e.g., pin layouts, line impedances, signal voltages &amp; timing), and the electrical and physical specifications for the communications medium itself (e.g., conductor arrangements in copper cable, limitations on attenuation, propagation delay, signal skew), can be found in the current Ethernet standard, and any such details should be considered to be well within the knowledge of those having ordinary skill in the art. 
     The MAC, Reconciliation, PCS, FEC, PMA, and PMD Sublayers, may be implemented as application-specific integrated circuitry to enable high-rate processing and data transmission. The receiver and transmitter sets  320 ,  322 , may implement the PMA and PMD sublayers. 
       FIG. 6  is a block diagram of an illustrative local transmitter-receiver pair (transceiver) that may be a member of the sets  320 ,  322 . A transmitter  602  receives blocks of channel bits or symbols on the TXD bus for transmission in the form of a CH_OUT signal. Transmitter  602  includes a phase lock loop (TXPLL)  604  that converts a reference clock signal (either TX_REF_CLK or RX_REF_CLK as selected by switch  605 ) into a modulation clock that controls the timing of parallel to serial converter (P2S) circuit  610 . During normal operations, multiplexer  608  supplies blocks of channel bits or symbols from the TXD bus to the P2S circuit  610 . P2S circuit converts the blocks into a digital data stream. A transmit filter  612 , also called a pre-equalization filter, converts the digital data stream into an analog electrical signal with spectral shaping to combat channel degradation. Driver  614  amplifies the analog electrical signal to drive the channel output (CH_OUT) node. 
     During training operations, multiplexer  608  obstructs information from the TXD bus, instead supplying P2S circuit  610  with training frames from a training controller  606 . The training controller  606  generates the training frames based on the convergence status and transmit filter coefficient adjustments (LOCAL_INFO) received from the local receiver  622 . That is, in addition to training patterns, the training frames may include backchannel information to be used by the remote end of the channel. The training frames include training sequences as specified by the relevant portions of the current Ethernet standard (IEEE Std 802.3). 
     The training controller  606  further accepts any back-channel information (BACK_INFO) extracted by the local receiver  622  from received training frames sent by the local end node. The training controller applies the corresponding adjustments to the coefficients of transmit filter  612 . Upon conclusion of the training phase, multiplexer  608  begins forwarding TXD blocks to the P2S circuit  610 . 
     A loop back path  615  connects the CH_OUT node to a switch  616  that selects between the CH_OUT signal and an analog electrical signal (CH_IN) received from a remote transmitter. The switch  616  supplies the selected signal to an optional low noise amplifier (LNA)  624  in receiver  622 . If included, the LNA  624  provides a high input impedance to minimize channel loading and amplifies the received electrical signal to drive the input of a continuous time linear equalization (CTLE) filter  626 . CTLE filter  626  provides continuous time filtering to shape the signal spectrum to reduce the length of the channel impulse response while minimizing inter-symbol interference (ISI). A demodulator  628  operates on the filtered signal to detect each transmitted channel bit or symbol, thereby producing a demodulated digital data stream. Some demodulator embodiments employ digital filter equalization and/or decision feedback equalization. A serial to parallel conversion (S2P) circuit  630  groups the digital data stream bits or symbols into blocks for delivery on the receive data (RXD) bus to enable subsequent on-chip operations at lower clock rates. 
     A clock recovery loop (CRL) circuit  632  extracts a clock signal from the filtered signal and/or the digital data stream and supplies it to the demodulator  628  to control sample and symbol detection timing. While certain contemplated cable embodiments do not support auto-negotiation, other contemplated embodiments do support auto-negotiation in accordance with the Ethernet standard. When supported, the auto-negotiation may be implemented as described in PCT/CN2017/075961, titled “Ethernet link extension method and device” by inventors Yifei Dai, Haoli Qian, and Jeff Twombly, and filed 2017 Mar. 8. A detector or packet information extractor  634  monitors the receive signal for the end of the auto-negotiation phase and/or the beginning of the training phase frames. Whether or not autonegotiation is supported, a training phase may be performed during the manufacturing process to set initial values of the equalization parameters for the completed cable. 
     During the training phase, a filter adaptation circuit  636  measures an error between the input and output of the demodulator&#39;s decision element, employing that error in accordance with well-known techniques from the literature on adaptive filtering to determine adjustments for the coefficients in CTLE filter  626 , any filters contained in demodulator  628 , and the transmit filter  612  of the local transmitter (during loop back) or the remote transmitter, and further operates to determine whether convergence has been achieved. The adaptation circuit  636  adjusts the coefficient values of local elements  626 ,  628 , and outputs locally-generated information (LOCAL_INFO), which includes the transmit filter coefficient adjustments and the convergence status. Where the system supports the use of a backchannel, the LOCAL_INFO is supplied to the local transmitter  602  that communicates in the reverse direction on the same data lane. The local transmitter communicates the transmit filter adjustments and the convergence status via the backchannel to the source of the CH_IN signal. In that vein, the received signal includes back-channel information from the source of the CH_IN signal. The packet information extractor  634  detects the back-channel information (BACK_INFO) and passes it to the local transmitter  602  for use in adjusting the coefficients of the transmit filter  612 . In the absence of a back-channel, the LOCAL_INFO may be communicated via the host-interface to the testing apparatus as discussed further below. Once convergence is achieved, receiver  622  is ready to begin normal operations. 
       FIG. 7  is a block diagram providing more detail for the CRL circuit  632 . Various configurations exist for the demodulator  628  that operates to convert the continuous-time filtered signal  702  into a stream of received data  708 , but each employs at least an analog to digital converter  704  that samples (or oversamples and interpolates) a signal at sampling instants determined by a sampling clock  705 . The demodulator  628  further includes at least one decision element  706  that determines which channel symbol a signal sample most closely represents, usually by comparing the sample to one or more decision thresholds. 
     While various clock recovery loop implementations are known and described in the open literature, an illustrative implementation is shown in  FIG. 7  to aid the reader&#39;s understanding. A timing detector  710  derives a timing error estimate from the input and output of the decision element  706 . (Principles for designing the timing detector are set forth in Mueller and Muller, “Timing recovery in digital synchronous data receivers”, IEEE Trans. on Comm., v24n5, pp. 516-531, May 1976; and certain specific estimators are set forth in U.S. application Ser. No. 16/110,594, “Precompensator-based quantization for clock recovery”.) A timing loop filter  712  filters the estimated timing error signal to obtain a phase offset signal  719  for a phase interpolator  720 . In the embodiment of  FIG. 7 , the timing loop filter  712  is a second order proportional-integration (PI) filter having a summer  714 , which receives along a first path a proportional (i.e., scaled by a constant coefficient kp) component of the timing error signal, and receives along a second path an integrated (i.e., scaled by a constant coefficient k l  and integrated by integrator  716 ) component of the timing error signal. The received components are added and provided to a second integrator  718 , which integrates the sum to provide the phase offset signal  719  to the phase interpolator  720 . 
     The phase interpolator  720  also receives a clock signal from a phase lock loop (PLL)  722 . The phase offset signal  719  causes the phase interpolator  720  to produce the sampling signal  505  by adjusting the phase of the clock signal in a fashion that minimizes an expected value of the timing error. In other words, the phase offset signal compensates for both the frequency offset and phase error of the clock signal relative to the analog data signal, thereby phase-aligning the sampling clock with the data symbols in the analog receive signal. 
     The clock signal produced by PLL  722  is a frequency-multiplied version of a reference clock signal from reference oscillator  724 . A voltage controlled oscillator (VCO)  726  supplies the clock signal to both the phase interpolator  720  and to a counter  728  that divides the frequency of the clock signal by a constant modulus N. The counter supplies the divided-frequency clock signal to a phase-frequency detector (PFD)  729 . PFD  729  may use a charge pump (CP) as part of determining which input (i.e., the divided-frequency clock signal or the reference clock signal) has transitions earlier or more often than the other. A low pass filter  731  filters the output of PFD  729  to provide a control voltage to VCO  726 . The filter coefficients are chosen so that the divided frequency clock becomes phase aligned with the reference oscillator. 
     With the foregoing context of an illustrative implementation, we now turn to a method for evaluating clock quality of SerDes devices, and in particular the receiver and the local and remote transmitters to which it may be coupled. To implement the method, the phase offset signal  719  is coupled to a memory buffer  730  to be captured (periodically or on demand) as needed for analysis. A processor  732  (such as controller  310 ) is coupled to the memory buffer  730  to analyze the phase offset signal as described further below. In other clock recovery loop implementations, other signals containing the compensated phase offset information may be captured and analyzed. 
     The reference clock  724  has a relatively low frequency, say 500 kHz, which the PLL multiplies to obtain the desired sampling frequency, say 25 GHz, subject to the frequency and phase offset between the transmitter and receiver that the CRL tracks. The CRL has a limited bandwidth, say 4 MHz, to ensure good performance in the presence of channel noise. Within this bandwidth, the phase offset signal may be analyzed to characterize the probability distribution and spectrum of the timing jitter. (Any jitter outside the CRL bandwidth remains uncompensated and would appear in the form of an abysmal error rate.) 
     If the transmitter and receiver clocks were precisely matched, the phase offset signal  719  would have a constant value. More typically, the phase offset signal will exhibit variation. The processor  732  may analyze the phase offset signal by first performing a linear fit to determine and remove the frequency offset. Note that many techniques are provided in the literature for coping with phase wrap-around when doing linear fitting. For example, a probability distribution for the signal derivative can be determined and the largest mode of the distribution may be taken as the slope of the line. After the slope is determined and removed, the signal mean can be calculated to determine the offset of the line. 
     Once the linear trend of the phase offset signal has been determined and removed, the processor may then characterize the timing jitter in terms of the residual phase error. Among other things, the processor may calculate a variance, standard deviation (root-mean-square), distribution (histogram), and/or spectrum (discrete Fourier transform) of the residual phase error. While the variance or standard deviation are useful for indicating an overall level of jitter, the distribution and spectrum are useful for diagnosing other potential issues. An approximately Gaussian distribution may indicate normal operation, while a relatively uniform distribution may indicate poor tracking performance. Peaks in the spectrum indicate tones in the phase error, potentially indicating crosstalk between communication signals or between oscillators. 
     If the transmitter and receiver are using a shared clock, the jitter measurement represents only the sum of the powers of the phase error introduced by the PLLs (TXPLL  604  and RXPLL  722 ) and the CRL  632 . If the transmitter and receiver are using independent clocks, the jitter measurement is the power-sum of the phase error introduced by the PLLs, the CRL, the transmitter clock, and the receiver clock. For the loopback measurement, the transmitter and receiver clock jitters are typically very similar (i.e., TXPLL jitter equals the RXPLL jitter, and the TX clock jitter equals the RX clock jitter). If additional accuracy is needed, the TX clock and PLL jitter can usually be directly measured, e.g., using an oscilloscope while the transmitter generates a training pattern of alternating symbols. Such oscilloscope measurements of the CH_OUT signal jitter may be made at the factory and stored in memory for use with separate clock loopback jitter measurements. Reference clock jitter can similarly be determined and subtracted from the CH_OUT signal jitter to estimate the TXPLL jitter, another value which can be stored in memory for use with shared clock loopback jitter measurements as detailed below. 
     With these observations in mind,  FIG. 8  shows a flowchart of an illustrative jitter evaluation method that may be implemented by controller  310 . In block  801 , the controller configures the transceivers for loopback operation (e.g., setting switch  616  to select loopback path  615 ) using separate clocks (e.g., setting switch  605  to select TX_REF_CLK). In block  803 , memory  730  ( 324 ) captures the phase offset signals during reception of a transmitted CH_OUT signal. In block  805 , the controller analyzes the captured data to remove the linear trend and to characterize the residual phase error, determining a probability distribution, a standard deviation, and a spectrum. 
     In block  811 , the controller configures the transceivers for loopback operation (e.g., setting switch  616  to select loopback path  615 ) using a shared clock (e.g., setting switch  605  to select RX_REF_CLK). In block  813 , memory  730  ( 324 ) captures the phase offset signals during reception of a transmitted CH_OUT signal. In block  815 , the controller analyzes the captured data to remove the linear trend and to characterize the residual phase error. 
     In block  817 , the controller configures the transceiver for normal operation (e.g., setting switch  616  to select CH_IN) and determines whether the remote transmitter is using a shared reference clock (e.g., if it is part of the same switch) or an independent reference clock. 
     In block  821 , the controller estimates the RX jitter using either the separate clock loopback jitter measurements (if the remote transmitter is using a separate reference clock from the receiver) or the shared clock loopback jitter measurements (if the remote transmitter is using a shared reference clock). Respectively, the CH_OUT jitter measurement or TXPLL jitter measurement value from memory, is subtracted from the separate or shared clock loopback jitter measurement to estimate the RX jitter. Alternatively, the field tester collects the CH_OUT or TXPLL jitter measurements for use in estimating RX jitter. This completes the calibration phase of the process, though it may be periodically repeated. 
     In block  823 , memory  730  ( 324 ) captures the phase offset signals during reception of a CH_IN signal. In block  825 , the controller analyzes the captured data to remove the linear trend and to characterize the residual phase error, determining a probability distribution, a standard deviation, and a spectrum. These measurements represent the total link jitter. 
     In block  827 , the controller estimates the clock jitter of the remote transmitter. In one embodiment, the controller subtracts the RX jitter from the link jitter measurements of block  825  to estimate the remote TX jitter. 
     In block  828 , the controller evaluates the remote TX jitter relative to preset limits. For example, the variance may be compared to a given limit, or the amplitude of any spectrum peaks may be compared to a preset threshold. If the limits are exceeded, the controller may set an alert signal in block  829 . The alert signal may be setting a bit in an error register, illuminating a LED on the enclosure, the transmission of a message to a management fabric of a switch or to a central control service for a facility, or otherwise signaling a user or technician that further investigation is needed to ensure a reliable connection. In block  830 , the controller reports the jitter measurements (during product testing) to the test equipment or (in the field) to a switch port, an internal switch controller, or a designated monitoring service 
     Numerous alternative forms, equivalents, and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. It is intended that the claims be interpreted to embrace all such alternative forms, equivalents, and modifications that are encompassed in the scope of the appended claims.