US20060233291A1 - Partial response receiver with clock data recovery - Google Patents
Partial response receiver with clock data recovery Download PDFInfo
- Publication number
- US20060233291A1 US20060233291A1 US11/404,502 US40450206A US2006233291A1 US 20060233291 A1 US20060233291 A1 US 20060233291A1 US 40450206 A US40450206 A US 40450206A US 2006233291 A1 US2006233291 A1 US 2006233291A1
- Authority
- US
- United States
- Prior art keywords
- data
- sample
- signal
- edge
- logic state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000004044 response Effects 0.000 title claims abstract description 332
- 238000011084 recovery Methods 0.000 title claims description 80
- 230000036961 partial effect Effects 0.000 title description 275
- 230000007704 transition Effects 0.000 claims abstract description 272
- 238000005070 sampling Methods 0.000 claims abstract description 167
- 230000011664 signaling Effects 0.000 claims description 87
- 238000003860 storage Methods 0.000 claims description 58
- 238000000034 method Methods 0.000 claims description 34
- 230000005540 biological transmission Effects 0.000 claims description 24
- 239000000523 sample Substances 0.000 description 201
- 230000003044 adaptive effect Effects 0.000 description 69
- 230000002829 reductive effect Effects 0.000 description 15
- 239000013598 vector Substances 0.000 description 15
- 230000009977 dual effect Effects 0.000 description 14
- 238000012935 Averaging Methods 0.000 description 12
- 239000004020 conductor Substances 0.000 description 12
- 238000001514 detection method Methods 0.000 description 12
- 238000009826 distribution Methods 0.000 description 12
- 238000012937 correction Methods 0.000 description 10
- 230000002902 bimodal effect Effects 0.000 description 9
- 230000007423 decrease Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- JBKPUQTUERUYQE-UHFFFAOYSA-O pralidoxime Chemical compound C[N+]1=CC=CC=C1\C=N\O JBKPUQTUERUYQE-UHFFFAOYSA-O 0.000 description 9
- 230000010354 integration Effects 0.000 description 8
- 230000000295 complement effect Effects 0.000 description 7
- 239000002131 composite material Substances 0.000 description 7
- 230000003247 decreasing effect Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 238000012546 transfer Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 239000000470 constituent Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000001914 filtration Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000001208 nuclear magnetic resonance pulse sequence Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000008054 signal transmission Effects 0.000 description 3
- 239000000758 substrate Substances 0.000 description 3
- 238000010408 sweeping Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 239000004235 Orange GGN Substances 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000003542 behavioural effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 229910044991 metal oxide Inorganic materials 0.000 description 2
- 150000004706 metal oxides Chemical class 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 239000004173 sunset yellow FCF Substances 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 101001018097 Homo sapiens L-selectin Proteins 0.000 description 1
- 102100033467 L-selectin Human genes 0.000 description 1
- 229910019640 S1-SX Inorganic materials 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 238000007664 blowing Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000011960 computer-aided design Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003292 diminished effect Effects 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 210000003128 head Anatomy 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003071 parasitic effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 230000002040 relaxant effect Effects 0.000 description 1
- 230000000979 retarding effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
- H04L25/03006—Arrangements for removing intersymbol interference
- H04L25/03012—Arrangements for removing intersymbol interference operating in the time domain
- H04L25/03019—Arrangements for removing intersymbol interference operating in the time domain adaptive, i.e. capable of adjustment during data reception
- H04L25/03057—Arrangements for removing intersymbol interference operating in the time domain adaptive, i.e. capable of adjustment during data reception with a recursive structure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
- H04L25/03878—Line equalisers; line build-out devices
- H04L25/03885—Line equalisers; line build-out devices adaptive
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/06—Dc level restoring means; Bias distortion correction ; Decision circuits providing symbol by symbol detection
- H04L25/061—Dc level restoring means; Bias distortion correction ; Decision circuits providing symbol by symbol detection providing hard decisions only; arrangements for tracking or suppressing unwanted low frequency components, e.g. removal of dc offset
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/06—Dc level restoring means; Bias distortion correction ; Decision circuits providing symbol by symbol detection
- H04L25/061—Dc level restoring means; Bias distortion correction ; Decision circuits providing symbol by symbol detection providing hard decisions only; arrangements for tracking or suppressing unwanted low frequency components, e.g. removal of dc offset
- H04L25/063—Setting decision thresholds using feedback techniques only
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
- H04L25/40—Transmitting circuits; Receiving circuits
- H04L25/49—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
- H04L25/497—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems by correlative coding, e.g. partial response coding or echo modulation coding transmitters and receivers for partial response systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/02—Speed or phase control by the received code signals, the signals containing no special synchronisation information
- H04L7/027—Speed or phase control by the received code signals, the signals containing no special synchronisation information extracting the synchronising or clock signal from the received signal spectrum, e.g. by using a resonant or bandpass circuit
- H04L7/0276—Self-sustaining, e.g. by tuned delay line and a feedback path to a logical gate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
- H04L25/03006—Arrangements for removing intersymbol interference
- H04L2025/0335—Arrangements for removing intersymbol interference characterised by the type of transmission
- H04L2025/03356—Baseband transmission
- H04L2025/03369—Partial response
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
- H04L25/03006—Arrangements for removing intersymbol interference
- H04L2025/03433—Arrangements for removing intersymbol interference characterised by equaliser structure
- H04L2025/03439—Fixed structures
- H04L2025/03445—Time domain
- H04L2025/03471—Tapped delay lines
- H04L2025/03484—Tapped delay lines time-recursive
- H04L2025/03503—Tapped delay lines time-recursive as a combination of feedback and prediction filters
Definitions
- the present invention relates generally to the field of communications, and more particularly to high speed electronic signaling within and between integrated circuit devices.
- Dispersion-type ISI becomes more pronounced at faster signaling rates, ultimately degrading the signal quality to the point at which distinctions between originally transmitted signal levels may be lost.
- FIG. 1 illustrates a prior-art signaling system having an equalizing transmitter 109 and an equalizing receiver 103 to mitigate dispersion-type ISI resulting from signal transmission on a signaling path 102 .
- the receiver 103 includes a sampling circuit 105 to generate digitized samples 106 of the incoming signal, a shift register 107 to store some number (N) of the most recently received samples, and an equalizer 112 to generate an equalization signal 114 based on samples stored in the shift register 107 .
- the equalization signal 114 represents the residual signal level on path 102 of the N prior received samples in the incoming signal so that, by subtracting the equalization signal 114 from the incoming signal in difference circuit 115 , the dispersion-type ISI resulting from the prior transmissions is canceled. Because the prior decisions of the sampling circuit 105 are fed back to the sampling circuit input in the form of the equalization signal 114 , the receiver 103 is commonly referred to as a decision feedback equalizer (DFE).
- DFE decision feedback equalizer
- One major limitation of the DFE 103 is that the time delay in the overall feedback path from sampling circuit 105 to difference circuit 115 makes it difficult to generate the equalization feedback signal 114 in time to equalize the signal level of the immediately following data value if the least latent sample (i.e., the most recently captured sample 106 ) is included in the equalization feedback signal 114 .
- Including the least latent sample in the equalization signal is particularly challenging in modern high-speed signaling systems in which incoming symbols are present on the signal path 102 for extremely brief intervals (e.g., less than a nanosecond for signal rates above one Gigabit per second).
- One solution to the least-latent sample problem is to omit one or more of the least-latent samples from contributing to generation of the decision-feedback equalization signal.
- the least latent sample being nearest in time to the incoming symbol, tends to be the largest contributor to dispersion-type ISI and therefore a primary objective of cancellation by the DFE. Consequently, in signaling systems in which the least-latent sample is omitted from contribution to decision-feedback equalization, transmit-side pre-emphasis is often used to decrease the dispersion-type ISI caused by the least-latent symbol.
- equalizing transmitter 109 when a given symbol is transmitted by the equalizing transmitter 109 , one or more previously transmitted symbols stored in shift register 113 (i.e., the least latent symbols relative to the outgoing symbol driven by primary output driver 101 ) are supplied to equalizing output drivers 111 which operate to pre-shape the outgoing waveform to reduce the dispersion-type ISI observed at the receiver.
- equalizing output drivers 111 which operate to pre-shape the outgoing waveform to reduce the dispersion-type ISI observed at the receiver.
- FIG. 1 illustrates a prior-art signaling system
- FIG. 2 illustrates raw and equalized pulse responses observed in the prior art signaling system of FIG. 1 ;
- FIG. 3 illustrates a signaling system that includes a partial response receiver according to an embodiment of the invention
- FIG. 4 illustrates a relationship between clock and data signals in one embodiment of the signaling system of FIG. 3 ;
- FIG. 5 illustrates the bimodal distribution of a binary signal observed at a signal receiver when the primary source of dispersion-type ISI is the signal transmitted in the immediately preceding symbol time;
- FIG. 6 illustrates the four partial response signal levels depicted in FIG. 5 relative to a common mode level, L CM ;
- FIG. 7 illustrates a partial response receive circuit according to an embodiment of the invention
- FIG. 8 illustrates a double data rate signaling protocol in which two symbols are transmitted in succession during each cycle of a sampling clock signal
- FIG. 9 illustrates a partial response receive circuit for use in a double data rate signaling system
- FIG. 10 illustrates even and odd pipelines of sample values generated within the partial response receive circuit of FIG. 9 ;
- FIG. 11 illustrates the use of embedded scoping to generate a time-based trace of an incoming data signal
- FIG. 12 illustrates a signaling system according to an embodiment of the invention
- FIG. 13 illustrates a waveform trace of a pulse response captured by an embedded scope within the signaling system of FIG. 12 ;
- FIG. 14 illustrates a partial response receiver according to an embodiment of the invention that adaptively generates partial response threshold levels
- FIG. 15 illustrates a embodiment of the adaptive module of FIG. 14 ;
- FIG. 16 illustrates an alternative circuit arrangement that may be used in place of the averaging circuits of FIG. 15 ;
- FIG. 17 illustrates a comparator that may be used within the receiver circuits and level sampling circuits of FIGS. 7, 9 and 14 ;
- FIG. 18 illustrates an embodiment of the current DAC of FIG. 17 ;
- FIG. 19 illustrates an alternative comparator embodiment that may be used within the receiver circuits and level sampling circuits of FIGS. 7, 9 and 14 ;
- FIG. 20 illustrates a partial response receiver according to another alternative embodiment of the invention.
- FIG. 21 illustrates the operation of the adaptive module of FIG. 20 according an embodiment of the invention
- FIG. 22 illustrates an embodiment of a dual mode receiver that may be operated in either a multi-level signaling mode or a partial response mode
- FIG. 23 illustrates a multi-level signaling protocol used within dual mode receiver of FIG. 22 ;
- FIG. 24 illustrates a partial response receiver having a clock data recovery function according to an embodiment of the invention
- FIG. 25 illustrates a number of possible data signal transitions when the incoming data signal has the bimodal distribution shown in FIG. 4 ;
- FIG. 26 illustrates an embodiment of a clock recovery circuit that adjusts the phase of edge clock signal and sampling clock signal based on selected transitions detected in the incoming data signal
- FIG. 27 illustrates a potential source of non-convergence in a system that adaptively generates partial response threshold levels
- FIG. 28 illustrates an embodiment of a dual-mode, partial response receiver with clock data recovery
- FIG. 29 illustrates signal transitions between successive 4-PAM (Pulse Amplitude Modulation) symbols
- FIG. 30 illustrates data signal transitions that may be used for clock recovery when the dual mode receiver of FIG. 28 is operated in a partial response mode
- FIG. 31 illustrates a transition detect circuit and sample select circuit that may be used within the clock recovery circuit of FIG. 28 ;
- FIG. 32 illustrates additional data signal transitions that may be used for clock recovery when the dual mode receiver of FIG. 28 is operated in a partial response mode
- FIG. 33 illustrates a threshold select circuit according to an embodiment of the invention
- FIG. 34 illustrates an embodiment of a dual-mode partial response receiver that operates in generally the same manner as the partial response receiver of FIG. 28 , but with reduced clock recovery circuitry;
- FIG. 35 illustrates a more detailed embodiment of the clock data recovery circuit shown in FIG. 34 ;
- FIG. 36 illustrates embodiments of the transition detect circuit and sample select circuit of FIG. 35 in greater detail
- FIG. 37 illustrates an embodiment of a second-order clock data recovery circuit that includes dual compensation paths to correct both phase and frequency errors
- FIG. 38 illustrates the increased lock range achieved through addition of the frequency-error compensation circuitry within the second-order clock data recovery circuit of FIG. 37 ;
- FIG. 39 illustrates a distribution of signal levels in a system in which the two most recently received symbols are the primary source of residual channel response
- FIG. 40 illustrates a partial response receiver according to an embodiment of the invention that operates in accordance with the partial response states shown in FIG. 39 ;
- FIG. 41 illustrates a partial response receiver according to another embodiment of the invention.
- FIG. 42 illustrates a constellation of possible signal levels in a 4-PAM signaling system
- FIG. 43 illustrates a 4-PAM partial response receiver according to an embodiment of the invention
- FIG. 44 illustrates an input circuit that includes multiple partial response receivers according to an embodiment of the invention
- FIG. 45 illustrates an input circuit according to an alternative embodiment of the invention.
- FIG. 46 illustrates a partial-response signaling system according to an embodiment of the invention
- FIG. 47 illustrates a raw pulse response and a pulse response equalized by the signaling system of FIG. 46 to enable partial-response data reception
- FIG. 48 illustrates residual inter-symbol interference that may be equalized by transmit preemphasis within the signaling system of FIG. 46 .
- circuit elements or circuit blocks may be shown or described as multi-conductor or single conductor signal lines.
- Each of the multi-conductor signal lines may alternatively be single-conductor signal lines, and each of the single-conductor signal lines may alternatively be multi-conductor signal lines.
- Signals and signaling paths shown or described as being single-ended may also be differential, and vice-versa.
- signals described or depicted as having active-high or active-low logic levels may have opposite logic levels in alternative embodiments.
- circuits described or depicted as including metal oxide semiconductor (MOS) transistors may alternatively be implemented using bipolar technology or any other technology in which a signal-controlled current flow may be achieved.
- MOS metal oxide semiconductor
- a signal is said to be “asserted” when the signal is driven to a low or high logic state (or charged to a high logic state or discharged to a low logic state) to indicate a particular condition.
- a signal is said to be “deasserted” to indicate that the signal is driven (or charged or discharged) to a state other than the asserted state (including a high or low logic state, or the floating state that may occur when the signal driving circuit is transitioned to a high impedance condition, such as an open drain or open collector condition).
- a signal driving circuit is said to “output” a signal to a signal receiving circuit when the signal driving circuit asserts (or deasserts, if explicitly stated or indicated by context) the signal on a signal line coupled between the signal driving and signal receiving circuits.
- a signal line is said to be “activated” when a signal is asserted on the signal line, and “deactivated” when the signal is deasserted.
- the prefix symbol “/” attached to signal names indicates that the signal is an active low signal (i.e., the asserted state is a logic low state).
- a line over a signal name e.g., ‘ ⁇ overscore ( ⁇ signal name>) ⁇ ’) is also used to indicate an active low signal.
- the term “exemplary” is used herein to mean an example, not a preference or requirement.
- the signal receiving circuit includes a pair of comparators for comparing an incoming electrical signal against respective threshold levels, with each threshold level being set according to the level of a dispersed component of a previously received signal. More specifically, one of the threshold levels corresponds to the dispersion-type ISI introduced by a previously transmitted signal representative of a first digital state, and the other of the threshold levels corresponds to the dispersion-type ISI introduced when the previously transmitted signal is representative of a second digital state.
- the previously transmitted signal is resolved into one of two states by the receiving circuit, then used to select which of the comparators is to source the sample to be used for selection of the subsequent pair of samples.
- each of the comparators compares the incoming signal against a threshold that is offset from a nominal value according to a respective, anticipated level of ISI, with the comparator having its threshold level offset in the direction that corresponds to the state of the previously received signal ultimately being selected as the sample source. Because samples are captured on the assumption of dispersion-type ISI resulting from both possible states of the previously captured sample (i.e., the least-latent sample), both samples are available for later selection when the state of the previously captured sample is resolved. Thus, by establishing separate threshold levels according to the different possible levels of dispersion-type ISI and comparing the incoming signal against each threshold level, the timing problems associated with generating an equalization signal that includes the least latent sample are avoided. Because the threshold level supplied to each of the comparators includes an offset according to the residual, partial response of the signaling path to the previously transmitted signal, a receive circuit having such offset-threshold comparators is referred to herein as a partial response receiver.
- a multi-level signal receiver i.e., receiver capable of receiving a symbol representative of more than a single binary bit
- a multi-PAM receiver Pulse Amplitude Modulation receiver—a type of multi-level signal receiver
- includes multiple comparators for distinguishing different possible levels e.g., 4 levels in a 4-PAM receiver, 8 levels in an 8-PAM receiver, etc.
- the threshold levels supplied to the comparators are adjusted to match the partial response levels for the least-latent symbol (or set of N least-latent symbols) and the post processing of the comparator outputs is switched from a symbol decoding operation to a sample selection operation.
- methods and circuits for generating partial response threshold levels are disclosed. Also, methods and circuits for transmitting a partial-response data signal that includes a partial response from selected prior-transmitted bits are disclosed. Further, methods and circuits for recovering a clock signal from a partial response data signal are also disclosed.
- FIG. 3 illustrates a signaling system 117 in which embodiments of the present invention may be used.
- the system 117 includes an equalizing transmitter 118 and equalizing receiver 116 coupled to one another via a high-speed signal path 122 , and a controller 141 coupled to the transmitter 118 and the receiver 116 via relatively low-speed signal paths 142 A 142 B, respectively.
- the signal path 122 is formed by component signal paths 122 A, 122 B and 122 C (e.g., transmission lines that introduce respective, nonzero propagation delays and exhibit respective impedance characteristics), each disposed on respective circuit boards that are coupled to one another via circuit board interfaces 125 and 127 (e.g., connectors).
- signal path 122 B is formed on a backplane and signal paths 122 A and 122 C are formed on respective daughterboards (e.g., line cards) that are removably coupled to the backplane via circuit board interfaces 125 and 127 .
- the transmitter 118 and receiver 116 are implemented in respective integrated circuit (IC) devices that are mounted on the daughterboards.
- the controller which may be a general or special purpose processor, state machine or other logic circuit, is implemented within a third integrated circuit device mounted to a yet another circuit board. In the embodiment of FIG.
- signal paths 142 A and 142 B are used to convey configuration information from the controller 141 to the transmitter 118 and receiver 116 , respectively, and may be disposed on the same circuit board (or circuit boards) as signal path 122 or implemented by an alternative structure such as a cable.
- the controller may alternatively be coupled to the transmitter 118 and receiver 116 by a shared signal path such as a multi-drop bus. The operation of the controller 141 is discussed in greater detail below.
- the IC devices containing the transmitter 118 , receiver 116 and controller 141 may be mounted to a common structure with the signaling paths 122 , 142 A and 142 B coupled directly to the IC devices (e.g., all three ICs mounted to a circuit board and coupled to one another via circuit board traces, or all three ICs packaged within a single multi-chip module with signal paths 122 and 142 formed between the ICs by bond wires or other conducting structures).
- the transmitter 118 , receiver 116 and controller 141 or any subset thereof, may be included within the same IC device (e.g., system on chip) and the signaling paths 122 and/or 142 implemented by a metal layer or other conducting structure within the IC device.
- the equalizing transmitter 118 transmits data on the signaling path 122 during successive time intervals, referred to herein as symbol times.
- each symbol time, T S corresponds to a half cycle of a transmit clock signal, TCLK, such that two data values (e.g., values A and B) are transmitted on signaling path 122 per transmit clock cycle.
- the transmitted data signal arrives at the input of the equalizing receiver 116 after propagation time, T P , and is sampled by the receiver 116 in response to edges of a receive clock signal, RCLK.
- the receive clock signal may be received within the receive circuit via an external clock line, or may be a recovered version of a reference clock signal (e.g., recovered by a delay-locked loop or phase locked loop circuit). In other embodiments, discussed below, the receive clock signal may be recovered from the transmitted data signal. Still referring to FIG. 4 , the receive clock signal has a quadrature phase relation to data valid windows (i.e., data eyes) in the incoming data signal such that each sample is captured at the midpoint of a data eye. In alternative embodiments, the sampling instant may be skewed relative to data eye midpoints as necessary to satisfy signal setup and hold time requirements in the receiver 116 . Also, more or fewer symbols may be transmitted per cycle of the transmit clock signal.
- the equalizing transmitter 118 includes a transmit shift register 124 , output driver 121 and transmit equalizer 129 ; the transmit equalizer 129 itself including a shift register 120 and a bank of output drivers 131 .
- the data value at the head (i.e., output) of the transmit shift register 124 referred to herein as the primary data value, is driven onto the signal path 122 by the output driver 121 , and the transmit equalizer 129 simultaneously drives an equalizing signal onto the signal path 122 .
- This type of equalization is referred to herein as transmit preemphasis.
- the signal driven onto the signal path 122 by the output driver 121 is a multi-level signal having one of four possible states (e.g., defined by four distinct signal ranges) and therefore constitutes a symbol representative of two binary bits of information.
- the primary signal may have more or fewer possible states and therefore represent more or fewer than two binary bits.
- the primary signal may be single-ended or differential (an additional signal line is provided to carry the complement signal in the differential case), and may be a voltage or current mode signal.
- Each of the output drivers 131 within the transmit equalizer 129 form either a pre-tap driver or post-tap driver according to whether the source data value has already been transmitted (post-tap data) or is yet to be transmitted (pre-tap data).
- the equalizer includes N post-tap drivers sourced by data values within the shift register 120 and one pre-tap driver sourced by a data value within the transmit shift register 124 . Accordingly, the resultant equalizing signal driven onto the data path 122 will have a signal level according to data values having symbol latencies of ⁇ 1, 1, 2, . . . , N, where the symbol latency of a given data value refers to the number of symbol times by which transmission of the data value precedes the transmission of the primary value.
- Different numbers of post-tap and pre-tap drivers may be provided in alternative embodiments, thereby allowing for equalization based on values having different symbol latencies.
- the equalizing receiver 116 includes a partial-response receive circuit 123 , buffer 132 (e.g., shift register), tap select circuit 128 and tap select logic 139 .
- Data signals are sampled by the partial response receive circuit 123 to generate digitized samples that are stored in the buffer 132 for eventual use by application logic (not shown). Because the buffered data is stored for at least a predetermined time and represents historical data up to a predetermined number of symbol latencies, the buffered data forms a source of post-tap data values that may be selected by the tap select circuit 128 to source equalizer taps in a receive-side equalizer circuit.
- the tap select logic 139 is a configuration circuit that outputs a tap select signal 134 according to a configuration value.
- the configuration value may be automatically generated by system 117 (e.g., at system startup) or may be empirically determined and stored within the configuration circuit or elsewhere within system 117 .
- buffer 132 is formed by a shift register having a dead range component 133 having M storage elements and a selectable-range component 135 having R storage elements, the tap select circuit 128 being coupled to the selectable-range component 135 to select the subset of tap data sources therefrom.
- the dead range component of the buffer 132 may include fewer than M storage elements or even zero storage elements, depending on the time required to receive data and transfer data into the buffer 132 .
- the tap select circuit 128 may be coupled to one or more storage elements within the dead range component 133 to enable the size of the dead range to be programmed according to the configuration of the transmit circuit 118 .
- the buffer 132 may include one or more parallel registers in addition to (or instead of) the shift register formed by components 133 and 135 .
- the receiver 116 includes an output driver 140 (illustrated in dashed outline in FIG. 3 to indicate its optional nature) to drive an equalizing signal onto the signal path 122 (and therefore to the input of the partial response receive circuit 123 ) coincidentally with the symbol time of an incoming signal.
- the partial response receive circuit 123 includes a preamplifier having an equalizing subcircuit.
- FIG. 5 illustrates the bimodal distribution of a binary signal observed at a signal receiver when the primary source of dispersion-type ISI is the signal transmitted in the immediately preceding symbol time. That is, the symbol sampled at time T N ⁇ 1 is the primary source of dispersion-type ISI in the symbol sampled at time T N ; the symbol sampled at time T N is the primary source of dispersion-type ISI in the symbol sampled at time T N+1 ; and so forth.
- the signal levels at time T N it can be seen that if the if the preceding symbol was a logic ‘1’, the partial response to the preceding symbol will raise the signal level at time T N to one of the circled levels ‘11’ or ‘01’ (the second bit of the ‘11’ and ‘01’ bit sequences corresponding to the state of the signal at time T N ⁇ 1 ). If the preceding symbol was a logic ‘0’, the partial response to the preceding symbol will lower the signal level at time T N to one of the square-designated levels ‘10’ or ‘00’.
- the incoming signal is sampled and compared with a reference voltage level at the midpoint between the steady state extremes (i.e., midway between the ‘11..1’ and ‘00..0’ signal levels). Accordingly, the worst case voltage margins (i.e., smallest voltage differences between the signal and reference voltage) occur when the signal transitions from a ‘1’ to a ‘0’ or vice-versa; the ‘10’ and ‘0’ signaling levels becoming indistinguishable when the partial response level (i.e., residual signal level from the preceding symbol transmission) is large.
- the incoming signal and its complement are sampled, for example, by a differential amplifier which amplifies the difference between the complementary signal levels.
- the worst case voltage margins occur when the differential signal transitions from a ‘1’ to a ‘0’ or vice-versa; the ‘10’ and ‘01’ signaling levels becoming indistinguishable when the partial response pushes the ‘10’ and ‘01’ levels to the common mode (i.e., the average of a differential signal pair).
- FIG. 6 illustrates the four partial response signal levels depicted in FIG. 5 relative to a common mode level, L CM .
- the partial response to the preceding symbol may be viewed as increasing or decreasing the differential amplitude (i.e., the amplitude difference between the signals that form the differential signal pair) relative to a nominal differential amplitude.
- the common mode level, L CM becomes zero, and the four possible signal levels become 1+ ⁇ , 1 ⁇ , ⁇ 1+ ⁇ and ⁇ 1 ⁇ , where a represents the magnitude of the partial response to the preceding symbol.
- the incoming symbol, D N is represented by a signal level at either 1 ⁇ or ⁇ 1 ⁇ , depending on whether D N is a ‘1’ or ‘0’.
- the incoming symbol is represented by a signal level at either 1+ ⁇ or ⁇ 1+ ⁇ according to the state of the current symbol.
- the two complementary signal levels, ⁇ 1 ⁇ and 1 ⁇ have a common mode of ⁇ , as shown in box 151 .
- the two complementary signal levels, 1+ ⁇ and ⁇ 1+ ⁇ have a common mode of + ⁇ , as shown in box 153 .
- FIG. 7 illustrates a partial response receive circuit 200 according to an embodiment of the invention that exploits the bi-modal characteristic of the signal levels depicted in FIGS. 5 and 6 .
- the partial response circuitry includes a compare circuit 202 to sample the input data signal, D N , and a decision circuit 204 to generate an output data value (i.e., received data value) based on data samples generated by the compare circuit 202 .
- the compare circuit 202 includes two comparators 201 and 203 having threshold levels that are offset from the common mode threshold by the two possible partial responses to the preceding symbol.
- the threshold level of the comparator 201 is set the + ⁇ level, and the threshold level of the comparator 203 is set to the ⁇ level.
- the comparator 201 will resolve the incoming signal as being a ‘1’ or ‘0’ by determining whether the signal level is above or below the partial response level, + ⁇ .
- D N ⁇ 1 0
- the comparator 203 will resolve the incoming signal as being a ‘1’ or ‘0’ by determining whether the signal is above or below the partial response level, ⁇ .
- the selection of which comparator output represents the state of the symbol may be delayed until the state of the preceding symbol is resolved.
- the sample values output by the comparators 201 and 203 are output to the decision circuit 204 where they are optionally stored in storage elements 208 and 209 (e.g., D flip-flops or other types of storage circuits) and provided to respective input ports of a select circuit 205 (e.g., a multiplexer).
- the sample value selected by the select circuit 205 is stored in a storage circuit 207 in response to a sampling clock signal 210 (or other timing control signal) at which point the sample value becomes the D N ⁇ 1 sample value.
- the D N ⁇ 1 sample value stored within storage circuit 207 is fed back to the select input of the select circuit 205 to select one of the two sample values generated by the comparators 201 and 203 . That is, the D N ⁇ 1 sample value is used to select, via select circuit 205 , which of the comparators 201 and 203 will source the D N sample.
- the output of storage circuit 207 becomes the D N ⁇ 2 sample value and is used to select one of the D N ⁇ 1 sample values output from the storage elements 208 and 209 .
- the signaling margin i.e., difference between signal levels representative of ‘1’ and ‘0’ states
- the signaling margin in the partial response receive circuit 200 of FIG. 7 remains substantially constant at 2, even as a grows.
- the threshold of the comparators 201 and 203 by offsetting the threshold of the comparators 201 and 203 by the partial response levels + ⁇ and ⁇ , respectively, the partial response to the preceding symbol is canceled, making the full response of the incoming symbol available to resolve the symbol state.
- a threshold generator 211 is used to generate the +a thresholds supplied to the comparators 201 and 203 .
- the threshold values ⁇ may be voltage levels applied to reference inputs of the comparators 201 and 203 , respectively, to enable pseudo-differential signal detection (i.e., comparison of the incoming signal level with the threshold voltage level to resolve the digital state of the sample value).
- the threshold values ⁇ may be voltages or currents applied to offset the common modes of the comparators to the ⁇ voltage levels depicted in FIG. 6 .
- the threshold values ⁇ may also be digital values for controlling digital-to-analog converters (DACs) within the comparators 201 and 203 .
- the threshold generator 211 includes circuitry for a one-time or periodic determination of the ⁇ threshold levels, for example in one or more calibration operations.
- the ⁇ threshold levels are adaptively generated based on incoming signal levels produced by selected data patterns. Embodiments of the threshold generator 211 are discussed in further detail below.
- a single symbol is captured during each cycle of the sampling clock signal 210 . That is, a rising (or falling) edge of the sample clock is used to capture samples of the incoming data signal.
- multiple symbols are captured per cycle of the sampling clock signal 210 .
- clock generation circuitry is provided to generate multiple instances of the sampling clock signal 210 that are phase-distributed through a period (1/frequency) of the sampling clock signal.
- FIG. 8 depicts a double data rate signaling protocol in which two symbols are transmitted in succession during each period (i.e., cycle time) of a sampling clock signal.
- sampling clock signal two instances of the sampling clock signal are provided: an even-phase sampling clock signal, SCLK E , to sample even-numbered symbols D N , D N+2 , D N+4 . . . ; and an odd-phase sampling clock signal, SCLK O , to sample odd-numbered symbols D N ⁇ 1 , D N+1 , D N+3 . . . .
- SCLK E even-phase sampling clock signal
- SCLK O odd-phase sampling clock signal
- FIG. 9 illustrates a partial response receive circuit 215 for use in a double data rate signaling system.
- the partial response receive circuit 215 includes an odd-phase receive circuit 216 clocked by an odd-phase sampling clock signal 210 O (SCLK O ), and an even-phase receive circuit 217 clocked by an even-phase sampling clock signal 210 E (SCLK E ).
- the odd- and even-phase receive circuits 216 , 217 are similar to the partial response receive circuit 200 of FIG.
- the select circuit 225 of the odd-phase receive circuit 216 is controlled by a latched instance of a sample selected by the select circuit 239 in the even-phase receive circuit 217 and, conversely, the select circuit 239 of the even-phase receive circuit 217 is controlled by a latched instance of a sample selected by the select circuit 225 in the odd-phase receive circuit 216 .
- Samples D N + /D N ⁇ are generated by comparators 232 and 233 , stored in storage circuits 235 and 237 , and then selected by select circuit 239 to form the even-phase pipeline (EVEN PIPE) illustrated in FIG.
- samples D N+1 +/ D N+1 ⁇ are generated by comparators 218 and 219 , stored in storage circuits 221 and 223 , then selected by the select circuit 225 form the odd-phase pipeline (ODD PIPE) illustrated in FIG. 10 (the output of the select circuit 225 optionally being buffered in storage circuit 227 in response to the odd-phase sampling clock signal 210 O ).
- ODD PIPE odd-phase pipeline
- the D N ⁇ 1 sample is latched within latch element 241 of the even-phase receive circuit (thereby making D N ⁇ 1 available for a full cycle of the even-phase clock signal 210 E ) and thereafter used to select the subsequent even-phase sample D N .
- the selected even phase sample D N is then latched within latch element 228 of the odd-phase receiver and thereafter used to select the subsequent odd-phase sample, D N+1 .
- the number of partial-cycle receive circuits (circuits 216 and 217 each being a half-cycle receive circuit) may be increased according to the data rate.
- a partial-response receiver in a quad data rate system, includes four quarter-cycle receive circuits interconnected such that sample N within a first quarter-phase receive circuit is used to select sample N+1 within a second quarter-phase receive circuit; sample N+1 within the second quarter-phase receive circuit is used to select sample N+2 in a third quarter-phase receive circuit; sample N+2 is used to select sample N+3 in a fourth quarter-phase receive circuit; sample N+3 is used to select sample N+4 in the first quarter phase receiver; and so forth.
- various partial response receive circuit embodiments are described in the context of a single data rate (SDR) signaling system. Each of the embodiments disclosed may be modified as described in reference to FIGS. 8-10 to support multi-data rate signaling.
- SDR single data rate
- a technique referred to herein as embedded scoping is used to determine the ⁇ threshold levels applied within the comparators of the partial response receive circuit.
- Embedded scoping involves iteratively receiving a sequence of symbols in a receiver and comparing the received symbol sequence with a local generation of the sequence to confirm error-free reception. With each receive-and-confirm iteration, a threshold voltage used to distinguish between symbol values in the incoming signal is offset from a calibrated level by a progressively larger amount until a symbol in the sequence no longer matches the expected value.
- the threshold voltage offset at which the failure occurs is referred to herein as a pass/fail offset and represents a measure of the signal level at the sampling instant at which the failure occurred.
- a sample plot for the incoming signal may be developed. Further, by sweeping the receive clock signal through an incremental sequence of phase offsets, and determining the pass/fail offset at each phase offset, a complete trace of the incoming signal may be generated. Also, the granularity and start stop points of the phase offsets and/or threshold voltage steps may be controlled (e.g., by configuring a programmable circuit or register) to enable the waveform trace to be constrained to selected points of interest in the incoming signal (e.g., ⁇ N° from an intended sampling instant, N representing a sweep angle).
- FIG. 11 illustrates the use of embedded scoping to generate a time-based trace 290 of an incoming data signal 286 .
- the range of threshold voltage offsets over which the incoming signal 286 is sampled is indicated by V T
- the range of phase offsets at which the signal is sampled is indicated by ⁇ .
- Each sample point within the sweep is indicated by a respective dot within a grid of sample points 280 .
- the sweep may be obtained by stepping the voltage threshold through the range of V T values for each value of ⁇ , or, alternatively, by stepping the clock phase through the range of ⁇ values for each value of V T .
- reference numeral 288 indicates a pair of samples for which a pass/fail condition is detected.
- a corresponding pass/fail offset is determined according to the difference between the calibrated V T level (V T (CAL)) and the average of the V T offsets between the pass and fail samples, and recorded as a measure of the incoming signal. That is, the pass/fail offset may be used to establish a data point within the trace 290 as shown. After sweeping through all the sample points within the grid 280 (which sweep may be repeated numerous times to obtain an average and to discard statistical outliers), a measure of the incoming signal is obtained as illustrated graphically by the trace 290 .
- Embedded scoping has a number of benefits over traditional signal measurement techniques.
- the technique is non-invasive (i.e., no probe contact)
- the electrical characteristics of the system under test are unaltered, thereby yielding potentially more accurate results.
- the trace is generated from the perspective of the receive circuit itself, meaning that any non-ideal characteristics of the receive circuit are accounted for in the resulting signal trace information.
- embedded scoping may be used to perform numerous run-time analyses in addition to partial response measurement including, without limitation, determining the latency and amplitude of reflections and other distortions within the signaling system.
- FIG. 12 illustrates a signaling system 300 according to an embodiment of the invention.
- the signaling system 300 includes a transmit device 301 and receive device 309 that employ embedded scoping to determine partial response amplitudes.
- the transmit device 301 includes a pattern generator 303 , data selector 305 , equalizing transmitter 307 and application logic 302 .
- the application logic 302 performs the core function of the transmitting device (e.g., signal processing, instruction processing, routing control, or any other function) and provides transmit data (TX DATA) to a first input of the data selector 305 .
- TX DATA transmit data
- the application logic 302 outputs a logic low scope signal 306 (SCOPE) to the data selector 305 to select the transmit data to be passed to the equalizing transmitter 307 for transmission to the receive device 309 via signal path 122 (which may include or be connected to numerous sources of discontinuity such as connectors, vias, stubs, etc.).
- SCOPE logic low scope signal
- the application logic 302 drives the scope signal 306 high to enable a scoping mode of operation within the transmit device 301 .
- the data selector 305 selects a repeating single-symbol pulse sequence (e.g., a test signal such as: 00100 . . . 00100 . . . 00100 . .
- the receive device 309 includes a partial response receiver 310 to receive the incoming data signal, a pattern register 311 to store a local version of the single-symbol pulse sequence, a multiplexer 312 to enable the pattern register 311 to be switched between load and barrel-shifting modes, a XOR gate 313 to compare the received data sequence with the locally generated sequence, and application logic 315 (or other logic) to generate a threshold voltage adjust signal (THRESH ADJ) to step the threshold voltage used within the partial response receive circuit through their scoping ranges.
- TRESH ADJ threshold voltage adjust signal
- the thresholds applied to the multiple comparators of the partial response receive circuit are set to the same nominal starting value and stepped together for purposes of embedded scoping. In an alternative embodiment, only one comparator of the partial response receive circuit is used when scoping mode is enabled.
- the application logic may additionally generate a clock adjust signal (not shown) to step the sampling clock through a sequence of phase offsets within a cycle of the sampling clock signal.
- the application logic 315 additionally builds a trace record (i.e., data indicative of the incoming data sequence) based on the output of XOR gate 313 .
- the multiplexer 312 When the receive device 309 is in a scoping mode of operation, the multiplexer 312 is initially set to load the pattern register 311 with the output of the partial response receiver 310 . After a desired sequence of data (e.g., the single-symbol pulse sequence) is shifted into the pattern register 311 , the multiplexer 312 is set to enable the barrel-shifting mode of the pattern register 311 . That is, the multiplexer 312 selects the output of the pattern register 311 to be fed back to the input of the pattern register 311 so that the contents of the pattern register 311 are continuously rotated through the pattern register 311 (i.e., a barrel shifting operation).
- a desired sequence of data e.g., the single-symbol pulse sequence
- the data sequence loaded into the pattern register 311 is repeatedly output, bit by bit, to a first input of the XOR gate 313 .
- the data sequence received by the partial response receiver 310 is input to a second input of the XOR gate 313 so that the received data sequence is compared, bit by bit, with the data sequence stored within the pattern register 311 .
- the pattern register contents are repeatedly compared with a newly received version of the same data sequence (i.e., putatively the same data sequence).
- Any reception error will result in a mismatch between the received value and the corresponding value within the pattern register and therefore, when compared by XOR gate 313 , will result in an error signal being output from the XOR gate 313 to the application logic 315 .
- the application logic 315 may then record the adjusted threshold voltage (and optionally the clock phase offset) at which the error occurred as a signal level within the waveform trace.
- FIG. 13 illustrates a sample waveform trace 320 of a pulse response captured by an embedded scope within the signaling system of FIG. 12 .
- the waveform starts and ends at a steady-state low level which corresponds to the ⁇ 1 ⁇ level discussed in reference to FIGS. 5 and 6 .
- the partial response of the pulse is received at time T 4 . Due to the preceding zero-valued symbol, the signal level sampled at time T 3 corresponds to the 1 ⁇ level. Similarly, due to the preceding one-valued symbol, the signal level sampled at time T 4 corresponds to the ⁇ 1+ ⁇ level.
- the a level may be applied to the comparators of the partial response receive circuit to enable partial response operation.
- FIG. 14 illustrates a partial response receiver 325 that includes circuitry for adaptively generating the partial response threshold levels ⁇ .
- the partial response receiver 325 includes a partial response receive circuit 200 , a level sampler 327 , and an adaptive module 329 .
- the partial response receive circuit 200 operates generally as described above in reference to FIG. 7 to generate a pair of sample values based on comparisons (in comparators 201 and 203 ) of the incoming signal D N with offset thresholds ⁇ .
- the samples are stored in storage elements 208 and 209 as samples D N ⁇ 1 + and D N ⁇ 1 ⁇ (the ‘ + ’ and ‘ ⁇ ’ designating the samples as corresponding to relatively positive and negative partial responses).
- a select circuit 205 selects one of the D N ⁇ 1 + and D N ⁇ 1 samples to be the selected D N ⁇ 1 sample based on the state of the D N ⁇ 2 sample stored in storage circuit 207 .
- the D N ⁇ 2 sample may be supplied by a counterpart partial response receive circuit clocked by a phase shifted version of the sampling clock signal 210 .
- two or more time-adjacent sample values are supplied to (or buffered within) the adaptive module 329 .
- sample values D N ⁇ 2 and D N ⁇ 1 are supplied to the adaptive module 329 , though higher or lower latency samples may be provided in alternative embodiments.
- the level sampler 327 includes four comparators 331 1 - 331 4 for comparing the signal level of the incoming symbol, D N , with each of the four signal levels that correspond to the bimodal signal distribution of FIG. 5 . That is, comparator 331 4 compares the incoming signal with a threshold level at 1+ ⁇ and generates a corresponding error sample E 11 according to whether the incoming signal is above or below the 1+ ⁇ level. Similarly, comparators 331 3 , 331 2 and 331 1 compare the D N signal level with threshold levels at 1 ⁇ , ⁇ 1+ ⁇ and ⁇ 1 ⁇ , respectively, and generate corresponding error samples E 10 , E 01 and E 00 .
- Each of the error samples is buffered in a respective storage circuit 335 1 - 335 4 before being provided to the adaptive module 329 .
- the error samples arrive at the adaptive module 329 with the same latency as the D N ⁇ 1 sample generated by the partial response receive circuit 200 .
- the adaptive module similarly updates the 1 ⁇ , ⁇ 1+ ⁇ , and ⁇ 1 ⁇ thresholds based on error samples E 10 , E 01 and E 00 when the data samples indicate the 10, 01 and 00 states, respectively.
- the ⁇ levels may be derived from the 1+ ⁇ , 1 ⁇ , ⁇ 1+ ⁇ and ⁇ 1 ⁇ threshold levels, or a subset thereof.
- FIG. 15 illustrates an embodiment of the adaptive module 329 of FIG. 14 .
- the adaptive module includes a 2:4 decoder 353 , up/down counters 357 1 - 357 4 , averaging circuits 361 365 , digital-to-analog converters (DACs) 359 1 -359 6 , and, optionally, a filter circuit 351 .
- the 2:4 decoder 353 activates one of four enable signal lines 354 1 -354 4 (i.e., asserts an enable signal on the signal line) according to the state of the input data samples D N ⁇ 1 and D N ⁇ 2 (also expressed herein as D[N ⁇ 1:N ⁇ 2]).
- Each of the counters 357 has an up/down input (U/D) coupled to receive a respective one of the four error samples (i.e., E 00 , E 01 , E 10 and E 11 ), a count enable input (CEN) coupled to a respective one of the enable signal lines 354 , and a strobe input coupled to receive the sample clock signal 210 .
- U/D up/down input
- CEN count enable input
- strobe input coupled to receive the sample clock signal 210 .
- counter 357 4 is incremented if error sample E 11 indicates that the incoming signal level is above the 1+ ⁇ threshold level, and decremented if E 11 indicates that the incoming signal level is below the 1+ ⁇ threshold level.
- the count values maintained within counters 357 3 , 357 2 and 357 1 are similarly incremented and decremented according to error samples E 10 , E 01 and E 00 , respectively, when enabled by their respective enable signal lines 354 .
- the filter circuit 351 is used to filter the incoming error samples, for example, by requiring a predetermined number of same-state error samples to be received within a given time before the corresponding count value is adjusted. Other types of error sample filtering may be applied in alternative embodiments. Also, the filter 351 may be omitted altogether.
- the count values maintained within the counters 357 1 - 357 4 are output as control values to respective DACs 359 1 - 359 4 to generate the 1+ ⁇ , 1 ⁇ , ⁇ 1+ ⁇ and ⁇ 1 ⁇ levels.
- the adaptive module 329 operates to selectively update the 1+ ⁇ , 1 ⁇ , ⁇ 1+ ⁇ and ⁇ 1 ⁇ threshold levels according to the state of the received data values D[N ⁇ 1:N ⁇ 2].
- the averaging circuits 361 and 365 generate the ⁇ threshold levels by averaging the control values output from counters 357 1 - 357 4 .
- Averaging circuit 361 similarly includes a summing circuit 362 to sum the count values C ⁇ and C ⁇ 1 ⁇ from counters 357 3 and 357 1 , and a divide-by-2 element 363 to generate control value C ⁇ .
- each of the control values generated by the counters 357 and the averaging circuits 361 , 365 are input to respective DACs 359 1 -359 6 to generate the threshold levels used within the comparators of the partial response receive circuit 200 and level sampler 327 of FIG. 14 .
- each of the comparators within the partial response receive circuit 200 and level sampler 327 include internal DACs and receive respective threshold values in the form of the control values themselves (i.e., C ⁇ , C ⁇ , C 1+ ⁇ , C 1 ⁇ , C ⁇ 1+ ⁇ , C ⁇ 1 ⁇ ).
- the C + ⁇ and C ⁇ 1+ ⁇ values may be complements of one another so that one of the averaging circuits 361 or 365 may be replaced by a multi-bit inverter.
- the C 1+ ⁇ and C ⁇ 1 ⁇ values may be complements, and the C 1 ⁇ and C ⁇ 1+ ⁇ values may be complements such that two of the comparators within the level sampler 327 of FIG. 14 and two of the counters 357 within the adaptive module 329 (and two of the DACs 359 , if used) may be omitted.
- FIG. 16 illustrates an alternative circuit arrangement 375 that may be used in place of the averaging circuits 361 and 365 of FIG. 15 .
- the C ⁇ value is generated by halving the difference between the C ⁇ 1 ⁇ and the C ⁇ 1+ ⁇ control values.
- 16 includes a difference circuit 376 to generate 2 ⁇ by subtracting the C 1 ⁇ control value from the C 1+ ⁇ control value, and a divide-by-2 element 377 (which may be a implemented by dropping the least significant bit of the difference) to generate C ⁇ by halving the 2 ⁇ value.
- Difference circuit 379 and divide-by-2 element 380 are used in a similar manner to generate C ⁇ from count values C ⁇ 1+ ⁇ and C ⁇ 1 ⁇ in a corresponding manner.
- FIG. 17 illustrates a comparator 400 that may be used within the receiver circuits and level sampling circuits of FIGS. 7, 9 and 14 .
- the comparator 400 includes a preamplifier 401 and a sampling circuit 425 .
- the preamplifier 401 includes a pair of differential amplifiers 402 and 403 each biased by a respective current DAC (IDAC) 411 and 413 , and each having first and second output nodes 418 and 419 coupled to a supply voltage via a respective resistive element, R.
- the resistive elements may be implemented, for example, using diode-configured transistors, biased transistors, resistors, or any other active or passive circuitry for establishing a resistance.
- Transistors 405 and 404 within differential amplifier 402 have widths W 1 and W 2 , respectively, with W 1 being greater than W 2 .
- Transistors 408 and 407 within differential amplifier 403 also have respective widths W 1 and W 2 .
- a differential input signal composed of signal components D and /D is coupled to each of the differential amplifiers 402 , 403 such that D is coupled to transistors 404 and 408 and /D is coupled to transistors 405 and 407 .
- the differential amplifiers 402 and 403 are substantially balanced, operating in effect as a single differential amplifier having component transistors of width W 1 +W 2 .
- D is greater than /D
- transistors 404 and 408 will collectively sink more current than transistors 405 and 407 , thereby causing the voltage on output node 418 to be pulled down (i.e., via the resistive element, R, coupled to the output node 418 ) more than the voltage on output node 419 .
- the voltages on the preamplifier output nodes 418 and 419 are substantially equal when D and /D are at the common mode potential (i.e., as when D and /D cross one another in transition).
- the effective threshold of the preamplifier 401 and therefore the comparator 400 as a whole, occurs at the common mode of D and /D.
- the sampling circuit 425 includes a differential amplifier 426 formed by transistors 423 and 424 , a sense amplifier 427 formed by back-to-back coupled inverters 428 and 429 , and a storage circuit 436 formed by a set-reset flip-flop.
- the differential amplifier 426 includes control inputs coupled to the output nodes 418 and 419 , respectively, of the preamplifier 401 , and output nodes 431 and 433 coupled to source terminals of the inverters 428 and 429 , respectively.
- a biasing transistor 430 switchably controlled by the sampling clock signal 210 (or other sample control signal), is coupled between the differential amplifier 426 and a ground reference (or other low voltage reference).
- the sampling clock signal 210 is additionally coupled to control inputs of positively-doped MOS (PMOS) transistors 434 and 435 which are coupled between a supply voltage (e.g., V DD ) and output nodes of the inverters 428 and 429 .
- PMOS positively-doped MOS
- transistors 434 and 435 are switched on to pre-charge the output nodes of the inverters 428 and 429 to the supply voltage.
- the output nodes of the inverters 428 and 429 are coupled to active-low set and reset inputs, respectively, of the storage circuit 436 , so that the content of the storage circuit 436 is maintained through the low half-cycle of the sample clock signal 210 .
- biasing transistor 430 When the sample clock signal 210 goes high, biasing transistor 430 is switched on and draws current through the two transistors 424 and 423 of the differential amplifier 426 in proportion to the voltages developed on the output nodes 418 and 419 of the preamplifier 401 . Thus, if the voltage developed on node 419 is higher than the voltage on node 418 , the current drawn by biasing transistor 430 will flow primarily through transistor 423 . Conversely, if the voltage developed on node 418 is higher than the voltage on 419 , the current drawn by biasing transistor will flow primarily through transistor 423 .
- Transistors 434 and 435 are switched off in response to the high-going sample clock signal 210 , so that the pre-charged outputs of the inverters 428 and 429 are discharged by currents flowing through transistors 423 and 424 .
- the incoming signal (D) exceeds the common mode voltage, ((D+/D) divided by 2), by more than the + ⁇ threshold level (i.e., the incoming signal exceeds the + ⁇ threshold level)
- the current drawn by biasing transistor 430 will flow primarily through transistor 423 .
- the output node of inverter 429 will be discharged more rapidly than the output node of inverter 428 , driving the output of inverter 429 low and driving the output of inverter 428 high (i.e., the PMOS transistor within inverter 428 is switched on and the NMOS transistor within inverter 428 is switched off).
- the low output of inverter 429 is applied to the active-low set input of the storage circuit 436 , causing the storage circuit 436 to store a logic ‘1’ sampled data value.
- biasing transistor 430 will flow primarily through transistor 424 , thereby driving inverter 428 low (and driving inverter 429 high) to store a logic ‘0’ sampled data value within storage circuit 436 .
- FIG. 18 illustrates an embodiment of the current DAC 411 of FIG. 17 .
- the current DAC 411 includes control transistors 437 0 - 437 N ⁇ 1 and biasing transistors 439 0 - 439 N ⁇ 1 Each of the control transistors 437 0 - 437 N ⁇ 1 is coupled in series (e.g., source to drain) with a corresponding one of the biasing transistors 439 0 - 439 N ⁇ 1 to form a transistor pair that is coupled between a reference voltage (ground in this example) and an output node 438 (i.e., the node to be connected to the source terminals of the transistors which form the differential amplifier 402 ).
- a reference voltage ground in this example
- an output node 438 i.e., the node to be connected to the source terminals of the transistors which form the differential amplifier 402 .
- Gate terminals of the control transistors 437 0 - 437 N ⁇ 1 are coupled to receive respective component signals, C ⁇ [0] ⁇ C ⁇ [N ⁇ 1], of a multi-bit control value, C ⁇ (or, control value/C ⁇ ).
- Each of the control transistors 437 0 - 437 N ⁇ 1 has a binary weighted gain such that a current of I REF x2 i (where i represents the i th transistor in the positions 0, 1, 2, . . . , N ⁇ 1) flows through control transistor 437 i when the corresponding control signal component is high.
- control transistors 437 0 - 437 N ⁇ 1 are designated x1, x2. . . , x2 N ⁇ 1 transistors, respectively.
- the control value C ⁇ [N ⁇ 1:0] may be set to any of 2N values to select bias currents that range from 0 to I REF x2 N ⁇ 1 in increments of I REF .
- the biasing transistors 439 0 - 439 N ⁇ 1 have gate terminals coupled to receive a bias voltage, VBIAS, that is adjusted as necessary (e.g., by a biasing circuit) to establish or maintain a desired I REF .
- the relative gains (i.e., transconductance values) of the various transistors used to implement the current DAC 411 (and therefore drive strengths of the sub-drivers) are established by adjusting the width-length ratio (i.e., W/L) of individual control transistors 437 and/or biasing transistors 439 .
- W/L width-length ratio
- the width-length ratio of the x2 control transistor 437 1 is twice the width-length ratio of the x1 control transistor 437 0
- the width-length ratio of the x4 control transistor 437 2 is twice the width-length ratio of the x2 control transistor 437 1 , and so forth.
- the biasing transistors 439 may have similar gain ratios relative to one another (e.g., x1, x2, x4, x2 N ⁇ 1 as shown in FIG. 18 ). Other techniques for adjusting the relative gains of the control transistors 437 and biasing transistors 439 may be used in alternative embodiments. Also, weightings other than binary weightings may be used. For example, in one embodiment, each of the control transistors 437 has an equal gain to each of the other control transistors 437 such that the current drawn by the current DAC 411 is proportional to the number of logic ‘1’ bits in the control value, C ⁇ .
- FIG. 19 illustrates an alternative embodiment of a differential comparator 450 that may be used to implement the comparators depicted in FIGS. 7, 9 and 14 .
- the comparator 450 includes a sampling circuit 452 and an offset control circuit 440 .
- the sampling circuit 452 is implemented in generally the same manner as the sampling circuit 425 of FIG. 17 (and includes differential amplifier 426 , sense amplifier 427 , biasing transistor 430 , and storage circuit 436 ), except that the input signal lines carrying D and /D are coupled directly to the control terminals of transistors 423 and 424 , respectively.
- the offset control circuit 440 includes a differential amplifier 446 having output nodes coupled to nodes 431 and 433 of the sampling circuit 452 .
- Control terminals of the transistors 447 and 449 of the differential amplifier 446 are biased by respective voltage DACs (e.g., implemented by current DACs 443 and 445 coupled to respective resistive pull-up elements 451 and 453 ) controlled by C ⁇ and /C ⁇ , respectively.
- voltage DACs e.g., implemented by current DACs 443 and 445 coupled to respective resistive pull-up elements 451 and 453
- C ⁇ and /C ⁇ respectively.
- the effective threshold of the sampling circuit may be set to the partial response level, ⁇ . That is, a logic ‘1’ is output as the sampled data value if the difference between the D exceeds the common mode voltage, V CM by more than ⁇ , and a logic ‘0’ is output otherwise.
- a counterpart comparator having a ⁇ threshold may be provided by switching the C ⁇ and /C ⁇ inputs to the DACs 443 and 445 .
- FIG. 20 illustrates a partial response receiver 500 according to another alternative embodiment.
- the partial response receiver 500 includes a partial response receive circuit 200 that operates generally as described in reference to FIGS. 7 and 14 , a level sampler 501 , and an adaptive module 503 .
- the level sampler 501 includes a single comparator 507 that generates an error sample, E DLEV , according to whether the incoming signal exceeds or is below a data level threshold generated by the adaptive module 503 .
- the data level threshold is established by a multi-bit control value, C DLEV , generated by the adaptive module.
- the data level threshold may be established by an analog voltage or current generated by the adaptive module 503 .
- the error sample may be buffered in one or more storage circuits 509 before being forwarded to the adaptive module 503 , thereby aligning the latency of the error sample with data samples generated by the partial response receive circuit 200 .
- the adaptive module 503 receives the error sample from the level sampler 501 and data samples D N ⁇ 1 and D N ⁇ 2 from the partial response receive circuit 200 and, in response, generates control values, C ⁇ and /C ⁇ , to establish the ⁇ levels within the partial response receive circuit 200 , and the control value, C DLEV , to establish the data level threshold within the level sampler 501 .
- the adaptive module 503 updates the C DLEV value in response to the 1 ⁇ data pattern (10) until the D LEV threshold matches the 1 ⁇ data level.
- the control value, C ⁇ may be generated, for example, by halving the difference between the two C DLEV values (i.e., C 1+ ⁇ and C 1 ⁇ ), and the /C ⁇ control value may be generated by complementing the C ⁇ value.
- FIG. 21 illustrates the operation of the adaptive module 503 of FIG. 20 according one embodiment.
- the control values, C ⁇ and C DLEV , and an internally maintained control value, C 2 ⁇ are each set to a nominal zero value.
- the nominal zero value corresponds to a DAC midpoint value.
- a midpoint value of 1000 0000b (the ‘b’ indicating binary notation) or 128 decimal may be used as the nominal zero value.
- the C ⁇ value may be generated by subtracting the C ⁇ value from the full-scale DAC value.
- a history of increment and decrement operations applied to C DLEV value is evaluated to determine whether the threshold level that corresponds to the 1+ ⁇ signal level has been reached (i.e., UPPER DLEV FOUND). In one embodiment, if, over the last N updates to the C DLEV value, the difference between the number of increment operations and the number of decrement operations is less than a predetermined value, the data level threshold is deemed to be dithering about the 1+ ⁇ signal level and the upper data level threshold is therefore considered found.
- the sample values generated by the partial response receive circuit are evaluated in decision block 525 to determine whether a signal level at the 1+ ⁇ level has been received. If so, the error sample generated by the level sampler, E DLEV , is evaluated in decision block 527 to determine whether the incoming signal level is greater than or less than the threshold level established by the present value of C DLEV . If the error sample is a ‘1’, the incoming signal level is greater than the threshold level, and the C DLEV value is incremented at 529 to increase the data level threshold.
- the error sample is a ‘0’
- the signal level is less than the data level threshold and the C DLEV value is decremented at 531 to decrease the data level threshold.
- some level of filtering may be applied before incrementing or decrementing the C DLEV value.
- the C DLEV increment/decrement history is evaluated again at decision block 523 to determine whether the upper data level threshold has been found.
- the adaptive module selectively updates the C DLEV value, and therefore the data level threshold according to the state of the data samples generated by the partial response receive circuit (i.e., updates the C DLEV value in response to detection of the 1+ ⁇ sample pattern).
- the history of increment and decrement operations is cleared and a second level adapting loop is begun at decision block 535 .
- the history of increment and decrement operations is evaluated to determine whether a data level threshold corresponding to the 1 ⁇ data level has been found (i.e., LOWER DLEV FOUND). In one embodiment, if, over the last N updates to the C DLEV value, the difference between the number of increment operations and the number of decrement operations is less than a predetermined value, the data level threshold is deemed to be dithering about the 1 ⁇ signal level and the lower data level threshold is therefore considered found.
- the sample values generated by the partial response receive circuit, D[N ⁇ 1:N ⁇ 2], are evaluated in decision block 537 to determine whether a signal level at the 1 ⁇ level has been received. If not, decision block 537 is repeatedly entered for subsequent sample value pairs until a signal level at the 1 ⁇ level has been received.
- the error sample generated by the level sampling circuit, E DLEV is evaluated at decision block 539 to determine whether the incoming signal level is above or below the data threshold level established by the present value of C DLEV .
- the error sample is a ‘O’, as it will be initially, the signal level is below the data threshold level, and the C DLEV value is decremented at 543 to decrease the D LEV threshold level, and the C 2 ⁇ control value is incremented to track the difference between the upper and lower data level thresholds. If the error sample is determined to be a ‘1’ at decision block 537 , then C DLEV is incremented and C 2 ⁇ decremented at block 541 . By this arrangement, when the data level threshold reaches the 1 ⁇ data level, the control value, C 2 ⁇ , will be representative of twice the + ⁇ threshold level.
- the C ⁇ value is generated by dividing C 2 ⁇ by 2 (e.g., by right shifting or otherwise dropping the least significant bit of C 2 ⁇ ).
- the C ⁇ value may be generated by complementing the C ⁇ value. Thereafter, the process is repeated starting at decision block 523 .
- an updated C 2 ⁇ value may be generated by counting the return increments from the lower data level threshold to the upper data level threshold, and another updated value of C 2 ⁇ generated on a subsequent return to the lower data level threshold, and so forth.
- the C ⁇ value may be updated after each regeneration of the C 2 ⁇ ⁇ value.
- the 1+ ⁇ and ⁇ 1+ ⁇ data levels may be determined, and the corresponding data level control values averaged to generate the C ⁇ value.
- FIG. 22 illustrates an embodiment of a dual mode receiver 550 that may be operated in either a multi-level signaling mode or a partial response mode.
- a mode select signal 572 MSEL
- a first state e.g., a logic low state
- a two-bit per symbol, multi-level signaling mode is selected.
- the signal level of each incoming symbol falls into one of four voltage ranges distinguished by three threshold levels. The four voltage ranges are designated 10, 11, 01 and 00 in FIG. 23 according to the pair of data bits represented at each level.
- the incoming multi-level signal is referred to herein as a 4-PAM (Pulse Amplitude Modulation) signal.
- PAM Pulse Amplitude Modulation
- Different PAM levels e.g., 8-PAM, 10-PAM, etc. may be used in alternative embodiments.
- comparator 557 compares the incoming signal with a midlevel threshold (referred to herein as the zero threshold) to determine the state of the most significant bit (MSB) of the symbol.
- MSB most significant bit
- the MSB is resolved to be a ‘1’ if the signal level exceeds the zero threshold, and a ‘O’ if the signal level does not exceed the zero threshold.
- Comparators 553 and 555 compare the incoming signal with threshold levels + ⁇ and ⁇ , respectively.
- the + ⁇ threshold level is set to the steady-state low level plus 5 ⁇ 6 of the difference between the steady-state high and low levels
- the a threshold is set to the steady-state low level plus 1 ⁇ 6 of the difference between the steady-state high and low levels.
- the LSB may be generated by exclusive ORing the sample values generated by the comparators 553 and 555 .
- exclusive OR gate 561 is coupled to receive the sample values generated by the comparators 553 and 555 (i.e., after the sample values are buffered in storage circuits 554 and 556 ), and outputs the LSB to a first port of select circuit 565 .
- the mode select signal selects the 4-PAM mode of the dual-mode receiver
- the LSB is selected to be passed to next stage storage circuits 567 and 578 , and ultimately is selected by select circuit 579 to be provided to the adaptive module 581 .
- the adaptive module 581 receives an LSB and MSB (the MSB bit being stored in succession in storage circuits 558 , 571 and 573 for latency alignment with the LSB) for each set of sample values generated by the comparators 553 , 555 , and 557 .
- threshold levels and data signal levels described in reference to FIG. 23 may be used in both differential and single-ended signaling systems.
- the voltage levels of the thresholds and data signals are expressed as an offset from a common, substantially fixed reference voltage, such as a ground reference.
- the data signals and thresholds are each represented by differential signal pair, with the voltage level of the data signal or threshold being the voltage difference between the two differential signals (e.g., subtracting the voltage level of one signal from the other).
- the comparator 551 generates an error sample E DLEV that is buffered within storage circuits 552 and 570 , then provided to the adaptive module 581 .
- the C + ⁇ value is offset from the 00 signal level by two-thirds of the difference between the 11 and 00 signal levels
- C 0 is set to the midpoint between the 11 and 00 signal levels
- C ⁇ is offset from the 00 signal level by one-third of the difference between the 11 and 00 signal levels.
- the error sample generated by the comparator 551 may be filtered to obtain the steady state 11 signal level and the steady state 00 signal level.
- the dual mode receiver 550 is switched to the partial response mode.
- the comparators 553 and 55 are used to compare the incoming data signal against the partial response threshold levels + ⁇ and ⁇ , respectively.
- the samples values generated by the comparators 553 and 555 are buffered in storage circuits 554 and 556 , respectively, then provided to select circuit 563 which selects one of the samples according to the state of the previously received sample. That is, one of the D N ⁇ 1 samples stored in storage circuits 554 and 556 is selected to be stored in storage circuit 567 according to the D N ⁇ 2 sample previously stored in the storage circuit 567 .
- the D N ⁇ 2 sample is stored in the storage circuit 578 to generate the D N ⁇ 3 sample value.
- both the D N ⁇ 2 and D N ⁇ 3 samples are provided to the adaptive module 581 via select circuits 579 and 575 , respectively.
- the adaptive module 581 receives the MSB/LSB pair for each incoming 4-PAM symbol, and in partial response mode, the adaptive module 581 receives the D[N ⁇ 2:N ⁇ 3] sample values that represent one of the four states of the bimodal signal illustrated in FIG. 4 .
- the comparator 551 and adaptive module 581 operate to generate the + ⁇ and ⁇ levels in the manner described in reference to FIGS. 20 and 21 .
- the comparator 557 may be used to determine the level of the 1 ⁇ partial response state, thereby enabling both the 1+ ⁇ and 1 ⁇ signal levels to be determined simultaneously.
- the MSB comparator may be used to determine the ⁇ 1+ ⁇ signal level, thereby enabling ⁇ to be determined by averaging the 1+ ⁇ and ⁇ 1+ ⁇ signal levels.
- the error signal generated by the MSB comparator, E 10 (or E 01 ) is illustrated by dashed line 574 to indicate its optional nature.
- the mode select signal 572 may be provided from an external source or from a configuration control circuit within the integrated device that includes the dual mode receiver 550 .
- the configuration control circuit is a configuration register that may be programmed by one or more other integrated circuits within a system (e.g., a host processor or similar control device) to establish the mode of the dual mode receiver 550 .
- the configuration control circuit may also be a non-volatile control circuit such as a non-volatile memory, fusible circuit or similar circuit that may be programmed with a mode select value.
- the configuration control circuit may dynamically change the state of the mode select signal in response to detecting selected system conditions (e.g., detection of threshold error rate when in one operating mode or the other).
- FIG. 24 illustrates an embodiment of a partial response receiver 600 that performs a clock data recovery (CDR) function. That is, the partial response receiver 600 recovers both data and clocking information from the incoming data signal, DN.
- the partial response receiver 600 includes a data receive and level sampling circuit 601 , adaptive module 603 , clock recovery circuit 605 , edge-sampling comparator 607 , and one or more storage circuits 609 .
- the data receive and level sampling circuit 601 operates as described above in reference to FIGS. 14 and 20 to generate one or more error samples, E DLEV , and data samples D[N ⁇ 1:N ⁇ 2].
- the data receive and level sampling circuit 601 may also be operable in a multi-PAM mode as described in reference to FIG. 22 .
- the adaptive module 603 generates one or more threshold control values that are supplied to the data receive and level sampling circuit 601 , including one or more data level control values, C DLEV , and partial response control values, C + ⁇ and C ⁇ .
- the control values are used to establish threshold values in the partial response compare circuits (i.e., the ⁇ comparators) and one or more level adapting comparators as discussed above.
- the clock recovery circuit 605 generates a sampling clock signal 210 (SCLK) and edge clock signal 610 (ECLK) in response to a transition sample, T N ⁇ 1 , generated by the edge-sampling comparator 607 and the data and error samples generated by the data receive and level sampling circuit 601 (i.e., E DLEV and D[N ⁇ 1:N ⁇ 2]).
- the sampling clock signal 210 is used to time the operation of comparators and storage circuits within the data receive and level sampling circuit 601 and, at least in one embodiment, is phase aligned with midpoints in the incoming data eyes (i.e., midpoint of data valid intervals in the incoming data signal, D N ).
- the sampling clock signal 210 may be offset from the midpoints in the incoming data eyes, for example, to accommodate asymmetric setup and hold time requirements in the comparators or other circuitry in the data receive and level sampling circuit 601 .
- multiple sampling clocks may be generated by the clock recovery circuit to enable receipt of multi-data rate signals.
- the clock recovery circuit may generate SCLK and /SCLK to enable capture of data and signal level samples in both odd and even phases of the sampling clock signal 210 .
- the clock recovery circuit 605 adjusts the phase of the edge clock signal 610 to maintain phase alignment between the edge clock signal 610 and transition points between incoming data eyes (i.e., the edge clock signal 610 is edge aligned with data valid intervals in the incoming data signal).
- the edge clock signal 610 is supplied to the edge-sampling comparator 607 where it is used to time the sampling of transitions in the incoming data signal, and to one or more storage circuits 609 provided to latency-align the transition sample, T N ⁇ 1 , with the data sample, D N ⁇ 1 .
- a logic ‘0’ transition sample indicates that the edge clock transition occurred prior to the low-to-high data signal transition and therefore that the edge clock signal 610 leads the data signal transition.
- the transition samples from edge-sampling comparator 607 and data samples from the data receive and level sampling circuit 601 are used within the clock recovery circuit 605 to adjust the phase of the edge clock signal 610 as necessary to maintain alignment between the edge clock signal 610 and transitions in the incoming data signal.
- the sampling clock signal 210 is maintained at a substantially constant phase offset from the edge clock signal 610 such that phase alignment between the edge clock signal 610 and data signal transitions yields a desired phase alignment between the sampling clock signal 210 and midpoints in the incoming data eyes.
- each of these transitions crosses the midpoint threshold (i.e., zero threshold level) at a time, T 1 , midway between the centers of the data eyes 628 and 630 . That is, if the edge clock signal 610 is phase aligned to the transitions in the incoming data signal, the 10-to-01 and 01-to-10 data signal transitions cross the midpoint threshold coincidentally (i.e., in phase alignment) with the edge clock transition. Accordingly, the 10-to-01 and 01-to-10 transitions may be compared with the zero threshold level (designated ‘0’ in FIG. 25 ) to generate transition samples for adjusting the phase of the edge clock signal.
- the zero threshold level designated ‘0’ in FIG. 25
- transitions in the incoming data signal are selected according to their zero-crossing characteristics, with the selected transitions being used to adjust the phase of the edge and sampling clock signals 610 and 210 .
- FIG. 26 illustrates an embodiment of a clock recovery circuit 650 that adjusts the phase of edge clock signal 610 and sampling clock signal 210 based on selected transitions detected in the incoming data signal.
- the clock recovery circuit 650 includes a transition detect circuit 651 , early/late detector 661 , early/late counter 663 , majority detector 665 , interpolator 667 and reference loop 669 .
- the transition detect circuit 651 asserts a transition detect signal 652 (TDET) upon detecting a 01-to-10 or a 10-to-01 transition in the incoming data signal.
- TDET transition detect signal 652
- incoming data samples D N ⁇ 1 and D N ⁇ 2 are compared in exclusive-OR gate 653 to determine whether a transition has occurred, and signals D N and D N ⁇ 2 are compared in exclusive-NOR gate 657 to determine whether the D N state matches the D N ⁇ 2 state.
- the outputs of the exclusive OR and exclusive-NOR gates 653 , 657 are supplied to AND gate 659 which generates the transition detect signal 652 .
- the transition detect signal 652 is applied to a count enable input (CEN) of the early/late counter 663 to enable an early/late count value to be incremented or decremented according to the output of the early/late detector 661 .
- the early late detector 661 is implemented by an exclusive OR gate, and therefore asserts an early signal 654 (e.g., a logic high signal) if the transition sample, T N , does not match data sample D N , and a late signal (e.g., logic low signal 654 ) if the T N matches D N .
- the transition sample if the transition sample is captured after the transition from D N ⁇ 1 to D N , the transition sample will match the D N sample and thereby indicate that the edge clock signal transition is late relative to the data signal transition. Conversely, if the transition sample is captured before the transition from D N ⁇ 1 to D N , the transition sample will not match the D N sample and thereby indicate that the edge clock signal transition is early relative to the data signal transition.
- the early/late counter 663 is initialized to a zero level, and is then incremented in response to an early signal (i.e., from the early/late detector 661 ) and decremented in response to a late signal.
- the sign bit e.g., the MSB
- the MSB the sign bit of the early/late count maintained within the early/late counter 663 indicates whether more early signals than late signals, or more late than early signals have been received from the early/late detector (i.e., the count value will underflow to a negative value if more late signals than early signals are detected).
- the majority detector 665 evaluates the sign of the early/late count and asserts an up/down signal 668 to the interpolator accordingly.
- the early/late count value may then be reset to zero in order to count a subsequent set of early/late signal assertions.
- the interpolator 667 maintains a digital control word that is incremented in response to a logic high up/down signal 668 and decremented in response to a logic low up/down signal 668 .
- the most significant bits of the digital control word are used to select a pair of phase vectors from the set of N phase vectors 672 generated by the reference loop 669 , and the least significant bits of the digital control word are used to interpolate between the selected pair of phase vectors.
- the interpolation is incrementally shifted from a leading one of the phase vectors to a lagging one of the phase vectors, thereby incrementally retarding the phase of the edge and sampling clock signals 610 , 210 .
- the interpolation is incrementally shifted toward the leading one of the selected phase vectors, thereby incrementally advancing the phase of the edge and sampling clock signals 610 , 210 .
- the reference loop 669 is formed by a delay locked loop (DLL) that receives a reference clock signal 670 and, in response, generates a plurality of phase vectors 672 that are phase distributed within a cycle time of the reference clock signal 670 .
- the reference loop 669 may be a phase locked loop (PLL) that multiplies the reference clock frequency to generate a plurality of phase vectors 672 having a higher frequency than the reference clock frequency.
- the reference loop 669 may include an internal timing reference generator (e.g., a ring oscillator or other clock generating circuit) so that no reference clock signal 670 is required.
- the interpolator 667 may generate any number of sampling clock and edge clock signals.
- the interpolator in a double data rate system, the interpolator generates an edge clock signal and complement edge clock signal, and a sampling clock signal and complement sampling clock signal, the sampling clock signal being offset from the edge clock signal by a quarter cycle (90 degrees) of the edge clock signal.
- the quarter cycle offset may be achieved, for example, by a second interpolator that maintains a control word having a 90 degree digital offset from the control word used to generate the edge clock signal.
- Other techniques may be used to generate the edge clock-to-sample clock offset in alternative embodiments.
- the interpolator In a quad data rate system, the interpolator generates four edge clock signals and four sampling clock signals, the combined set of eight clock signals being distributed in phase through a cycle time of the edge clock signal (i.e., 45 degree increments between successive clock edges). This approach may be extended to support virtually any data rate.
- the up/down signal is a two-bit signal in which the 00 state indicates a hold condition in which control word maintained within the interpolator is not adjusted.
- the majority detector may receive the entire early/late count from the early/late counter, and output the up/down signal in the 00 state if the count value indicates a balanced reception of early and late detections (e.g., the early/late count is zero).
- the majority detector may be omitted altogether and the sign of the early/late count value output directly to the interpolator to control the phase adjustment of the edge and sampling clock signals.
- the 11-to-01 transition occurs between the 1+ ⁇ and ⁇ 1+ ⁇ signal levels, and therefore crosses the midpoint between the centers of data eyes 628 and 630 (i.e., time T 1 ) at the + ⁇ threshold level. That is, the 11-to-01 transition crosses the + ⁇ threshold coincidentally with the desired transition time of the edge clock signal 610 . Similarly, the 00-to-10 transition crosses the ⁇ threshold coincidentally with the desired transition time of the edge clock signal 610 . Moreover, the 11-to-01 and 00-to-10 transitions have a faster slew rate than the 10-to-01 and 01-to-10 transitions and therefore tend to yield more accurate timing edges.
- additional edge comparators are provided to generate transition samples at the + ⁇ and/or ⁇ thresholds.
- Additional circuitry is also provided within the clock recovery circuit 650 of FIG. 26 to detect the 11-to-01 and/or 00-to-10 transitions and, in response, to update the early/late counter according to the corresponding transition samples.
- the ⁇ levels may initially be incorrect (e.g., started at 0) so that edge comparison based on the ⁇ levels may be undesirable.
- a zero-threshold edge comparator e.g., edge-sampling comparator 607 of FIG. 24
- a non-convergence of the ⁇ threshold levels may occur in certain situations.
- the sampling clock phase moves left (i.e., in the increasingly lagging direction)
- the difference between signal levels 682 and 684 increases.
- the increased difference between signal levels 682 and 684 yields larger magnitudes for the ⁇ threshold levels which, as can be seen in the diagram of FIG. 25 , shifts the phase of the edge and sampling clock signals further in the lagging direction (i.e., further to the left), thereby further increasing the clock phase error. If the clock phase error becomes too large, accurate data and edge samples are no longer received by the partial response receiver so that the ⁇ threshold levels will not converge to the desired setpoints.
- FIG. 28 illustrates an embodiment of a dual-mode, partial response receiver 700 with clock data recovery.
- the partial response receiver 700 includes a dual-mode data receive/level sampling circuit 701 , adaptive module 703 , edge comparators 707 , 708 , 709 , and clock recovery circuit 705 .
- the dual-mode data receive/level sampling circuit 701 and the adaptive module 703 operate in generally the same manner as the circuitry described in reference to FIG. 22 .
- the data receive and level sampling circuit samples incoming 4-PAM signals to generate an MSB and LSB per captured sample, and generates a data level error sample (E DLEV ) that allows the adaptive module to determine the full scale difference between steady-state high and low signal levels.
- E DLEV data level error sample
- the data receive and level sampling circuit 701 When the mode select signal selects a 2-PAM mode of operation, the data receive and level sampling circuit 701 generates data samples by selecting between partial-response comparators (i.e., the comparators receiving the ⁇ threshold levels) and supplies the selected samples to the adaptive module 703 in pairs to enable determination of which of partial response state is reflected by the error sample, E DLEV , generated by data level comparator (or data level comparators). The adaptive module 703 then adjusts the ⁇ threshold levels and the zero threshold level according to the incoming data signal levels determined by the data level comparator.
- partial-response comparators i.e., the comparators receiving the ⁇ threshold levels
- E DLEV error sample
- the adaptive module 703 then adjusts the ⁇ threshold levels and the zero threshold level according to the incoming data signal levels determined by the data level comparator.
- the edge comparators 707 , 708 and 709 capture transition samples T N ⁇ 2 (+ ⁇ ), T N ⁇ 2 ( ⁇ ) and T N ⁇ 2 (0), respectively, of the incoming data signal in response to transitions of an edge clock signal, ECLK, and provide the transition samples to the clock data recovery circuit 705 .
- the 4-PAM/partial response data samples captured by the data receive and level sampling circuit 701 i.e., MSB/LSB in 4-PAM mode, D[N ⁇ 2:N ⁇ 3] in partial response mode
- the clock data recovery circuit selectively adjusts the phases of the edge clock signal 610 and sampling clock signal 210 based on the transition samples and data samples.
- FIG. 29 illustrates the possible signal transitions between successive 4-PAM symbols.
- the incoming data signal may transition to any of three other signal levels.
- a signal level above +a (corresponding to data state 10) may transition to a signal level between + ⁇ and 0 (data state 11); a signal level between 0 and ⁇ (data state 01); and a signal level below ⁇ (data state 00).
- any transitions that cross all three threshold levels will cross the zero threshold level at the timing center, T 1 , between the desired data sampling instants.
- transitions that cross a single threshold level will cross either the zero threshold level, the + ⁇ threshold level or the ⁇ threshold level at T 1 .
- type (1) transitions are those in which the LSB remains unchanged at either ‘1’ or ‘0’, while the MSB changes state (i.e., (MSB N xor MSB N ⁇ 1 ) & (LSB N xnor LSB N ⁇ 1 )); type (2) transitions are those in which the MSB remains high while the LSB changes state (i.e., MSB N & MSB N ⁇ 1 & (LSB N xor LSB N ⁇ 1 )); and type (3) transitions are those in which the MSB remains low, while the LSB changes state (i.e., /MSB N & /MSB N ⁇ 1 & (LSB N xor LSB N ⁇ 1 )
- the clock recovery circuit adjusts the phase of the edge clock signal and sampling clock signal in response to the data samples generated by the data receive and level sampling circuit 701 and the transition samples generated by comparators 707 , 708 , 709 in accordance with the following table: TABLE 1 Center Time Crossing Early/Late D N-1 (4P) D N (4P) At: T N (+ ⁇ ) T N ( ⁇ ) T N (0) Count Adj.
- the transitions of interest are as shown in FIG. 30 . That is, a partial-response state transition from 10-to-01 or 10-to-01 crosses the zero threshold level at the desired edge clock transition time, T 1 ; a state transition 11-to-01 crosses the + ⁇ threshold level at T 1 ; and a state transition from 00-to-10 crosses the ⁇ threshold level at T 1 .
- type (1) transitions are those in which the current data sample, D N , does not match the immediately preceding data sample, D N ⁇ 1 , which, in turn, does not match the twice-removed data sample, D N ⁇ 2 (i.e., (D N xor D N ⁇ 1 ) & (D N xor D N ⁇ 2 ));
- type (2) transitions are those in which the current data sample, D N , is low, and the two immediately preceding data samples, D N ⁇ 1 and D N ⁇ 2 , are high (i.e., /D N & D N ⁇ 1 & D N ⁇ 2 ); and type three (3) transitions are those in which the current data sample, D N , is high, and the two immediately preceding data samples, D N ⁇ 1 and D N ⁇ 2 , are low (i.e., D N & /D N ⁇ 1
- the clock recovery circuit 705 adjusts the phase of the edge clock and sampling clock signals 610 , 210 in response to the data and transition samples generated by circuit 701 and comparators 707 , 708 , 709 in accordance with the following table: TABLE 2 Center Early/ Time Late Crossing Count D[N-1:N-2] D[N:N-1] At: T N (+ ⁇ ) T N ( ⁇ ) T N (0) Adj.
- the edge clock alignment will initially converge to a point that is phase delayed relative to the desired edge sampling point, T 1 .
- the edge clock phase alignment will converge to the desired sampling point, T 1 .
- FIG. 31 illustrates a transition detect circuit 725 and sample select circuit 740 that may be used within the clock recovery circuit 705 of FIG. 28 .
- the transition detect circuit receives the data sample pair generated by the data receive and level sampling circuit 701 and generates a transition detect signal 732 (TDET) in accordance with the states of successive data sample pairs, the mode select signal 712 (MSEL) and a transition select signal 728 (TS[ 3 : 1 ]).
- the transition detect circuit additionally generates component transition detect signals 733 1 , 733 2 and 733 3 (i.e., TDET(0), TDET(+ ⁇ ) and TDET( ⁇ ), respectively) which are output to the transition select circuit 740 .
- the transition select circuit includes AND gates 741 1 , 741 2 , and 741 3 to gate the transition samples TN(0), TN(+ ⁇ ) and TN( ⁇ ), according to the state of the corresponding transition select signals 733 1 - 733 3 .
- the outputs of the AND gates 741 are input to OR gate 743 to generate an early signal 734 .
- the transition detect signal 732 is itself generated by a logic OR combination of the component transition detect signals 733 in OR gate 733 . By this arrangement, if any of the component transition detect signals 733 is asserted (e.g., to a logic high state), the transition detect signal 732 is asserted, and the state of the corresponding transition sample T N is output as the early signal 734 .
- the transition detect circuit 725 includes a set of combinatorial logic circuits 727 1 , 727 2 and 727 3 that generate type (1), type (2) and type (3) transition detect signals 730 for both 4-PAM and partial response data states in accordance with the type (1), type (2) and type (3) transition types described in reference to FIGS. 29 and 30 .
- combinatorial logic circuit 727 1 generates a 4-PAM type (1) transition detect signal 730 1A and a 2-PAM, partial response type (1) transition detect signal 730 1B as follows:
- Select circuits 729 1 , 729 2 and 729 3 each have a first input port coupled to receive a respective one of the 4-PAM type (1), type (2) and type (3) transitions detect signals 730 1A , 730 2A and 730 3A , respectively, and a second input port coupled to receive a respective one of the 2-PAM, partial response type (1), type (2) and type (3) transition detect signals 730 1B , 730 2B and 730 3B , respectively.
- the mode select signal 712 is coupled to a select input of each of the select circuits 729 so that, when the mode select signal 712 is low to select a 4-PAM mode of operation, the 4-PAM transition detect signals 730 1A , 730 2A and 730 3A are supplied to inputs of respective AND gates 731 1 , 731 2 and 731 3 , respectively.
- the 2-PAM, partial response transition detect signals 730 1B , 730 2B and 730 3B are supplied to respective inputs of the AND gates 731 .
- the transition select signal 728 includes three component signals, TS[ 1 ], TS[ 2 ] and TS[ 3 ], that are input to AND gates 731 1 , 731 2 and 731 3 , respectively, to gate the generation of the component transition detect signals 733 1 , 733 2 , and 733 3 .
- the transition select signal is generated according to a transition select value stored in a configuration circuit that may be run-time programmed (e.g., by a host processor or other system control component).
- the transition select value may alternatively be programmed into a non-volatile storage circuit (e.g., at production time) or similar hardware configurable circuit (e.g., fuse-blowing to establish desired configuration).
- the transition detect signal 732 and early signal 734 generated by the transition detect circuit 725 and transition select circuit 740 may be used to control the phase of one or more sampling clock signals and one or more edge clock signals in the manner above in reference to FIG. 26 .
- the transition detect signal 732 is applied to the count enable input of an early/late counter, and the early signal 734 is applied to the up/down input.
- the transition detect signal 732 and early signal 734 may alternatively be supplied to other logic circuitry that determines whether detected transitions occur early or late relative to an edge clock signal.
- transition detect circuit 725 and transition select circuit 740 may be omitted if the data signal transitions to be used for clock recovery is a subset of the three transition types shown in FIGS. 29 and 30 .
- one or more component signals of the transition select signal (and corresponding components of the combinatorial logic 727 , select circuitry 729 and gating circuitry 731 , 741 ) may be omitted.
- the transition types are fixed for a given application (e.g., all three types of the transitions depicted in FIGS. 29 and 30 , or any subset or single one thereof), the transition select signal may be omitted altogether along with the combinatorial logic and gating circuitry for any unused types of transitions.
- FIG. 32 illustrates the full set of transitions that may be detected when the partial response receiver 700 of FIG. 28 is operated in the partial response mode.
- transitions 750 and 751 i.e., transitions from 10-to-11 and from 01-to-00
- type (4) and type (5) transitions respectively
- T 1 the nominal 1 and ⁇ 1 threshold levels
- the input signal slews substantially faster than in the 01-to-10 and 10-to-01 transitions and therefore is a potentially more accurate (and/or more jitter-free) source of clock phase information.
- additional edge comparators are provided in the circuit of FIG.
- FIG. 33 illustrates an embodiment of a threshold select circuit 760 that is used to select between control values C 0 and C 1 for the zero and unity threshold levels, respectively.
- a threshold select signal 762 (LSEL) is supplied in a first state to multiplexer 761 (or other select circuit) to select the C 0 control value to be provided to edge comparator 709 , thereby enabling the 10-to-01 and 01-to-10 transitions to be used for clock recovery purposes as the ⁇ levels are adapted.
- the threshold select signal 762 is switched to an alternate state to select the C 1 control value to be used for generation of edge samples.
- the C 1 control value may be generated by the adaptive module 703 of FIG. 28 using the techniques discussed above in reference to FIG. 22 .
- the C 0 and/or C 1 control values may be buffered in registers 763 and 765 as shown in FIG. 33 (or other storage circuits), or provided directly to the multiplexer 761 from the adaptive module.
- the receiver may alternatively be a single-mode 4-PAM circuit having the clock recovery function described above in reference to FIGS. 28, 29 and 31 (i.e., omitting the combinatorial circuitry and mode select circuitry used to enable the partial response mode).
- the 4-PAM circuit may include data receive circuitry for capturing a sequence of 2-bit data samples (or more bits per data sample in the case of M-PAM, M>4), and clock recovery circuitry that captures transition samples at one or more of the 0, + ⁇ and ⁇ threshold levels, and that selectively uses the transition samples to recover a sampling clock signal and edge clock signal according to the state of successive data samples.
- circuitry necessary to enable the 4-PAM mode of operation may be omitted to provide a partial-response receiver with clock recovery circuitry that captures transition samples at one or more of the 0, + ⁇ and ⁇ threshold levels, and that selectively uses the transition samples to recover a sampling clock signal and edge clock signal according to the state of successive data samples.
- the partial response receiver 700 of FIG. 28 may include a third, non-partial-response operating mode in which binary signal reception and clock recovery are performed without regard to partial response. That is, the + ⁇ and ⁇ comparators within the data sampling circuit and edge sampling circuit may be disabled, and the zero-threshold comparators within the data and edge sampling circuits being used to sample data and edges in the incoming signal. Alternatively, in the non-partial-response mode, the ⁇ threshold levels may be set to zero such that all the comparators within the data and edge sampling circuits perform a zero-threshold comparison. In yet other embodiments, the partial response receiver 700 of FIG.
- the partial response receiver 700 may be operated in either a binary non-partial response mode; a binary partial response mode; a 4-PAM non-partial response mode; or a 4-PAM partial response mode.
- the number of least-latent data samples included in the partial response may be extended to any number. More generally, the receive circuit 700 may be operated in PAM modes ranging from M-PAM to (M ⁇ X)-PAM (where M is any integer and X is any integer less than M ⁇ 1), and may be operated with or without regard to partial response in each PAM mode. Circuitry to support extended-bit partial response operation, and 4-PAM partial response operation is discussed below in greater detail.
- circuitry otherwise provided to recover phase error information from the unused transitions may be omitted, including one or more of edge comparators 707 , 708 and 709 and corresponding logic circuitry within the clock data recovery circuit 705 .
- edge comparators 707 , 708 and 709 represents additional input capacitance and signal reception hardware
- a deliberate determination to omit one or more of the edge comparators, and thus forego the phase error information provided by the comparator(s) effects a tradeoff between reduced signal path loading (and signal reception hardware) and transition detection rate.
- a reduced transition detection rate may be tolerated if the resulting reduced phase error correction rate is sufficient to compensate for phase drift between the sampling clock signal and desired sampling instant.
- a plesiochronous system clock or timing domains having a frequency difference up to a specified tolerance value expressed, for example, as a part-per-million (ppm) ratio to the frequency of one of the domains
- reduced transition detection rate may be tolerated if the resulting reduced phase error correction rate is sufficient to compensate for a frequency difference up to the specified tolerance value.
- the zero-threshold comparator 709 of FIG. 28 has particularly high utility in terms of transitions detected per hardware footprint (or gate count) as the type (1) transitions detected by comparator 709 include both rising-edge and falling-edge transitions.
- the ⁇ -threshold comparators 707 and 708 each detect transitions in only one direction and thus have lower utility. Accordingly, if one or more of the comparators 707 , 708 , 709 are to be omitted, one (or both) of the a-threshold comparators 707 , 708 is a more likely candidate than the zero-threshold comparator 709 .
- all low-going (i.e., 1-to-0) data-state transitions i.e., changes in the state of the conveyed data value
- all low-going transitions may be detected by a combination of the zero-threshold detector 709 and the + ⁇ comparator 707 .
- low-going transitions constitute half of all data-state transitions in a binary signaling system, even without the ⁇ comparator 708 , at least 50% of all data-state transitions will be detected and may be used for timing updates.
- all high-going transitions may be detected by a combination of the zero-threshold detector 709 and the ⁇ comparator 708 , at least 50% of all data-state transitions may be detected and used for timing updates even without the +a comparator 707 .
- more than 50% of the data-state transitions will be detected in a system lacking ⁇ comparator 708 if at least some of the high-going transitions are type (1) transitions and, likewise, that more than 50% of the data-state transitions will be detected in a system lacking + ⁇ comparator 707 if at least some of the low-going transitions are type (1) transitions.
- FIG. 34 illustrates an embodiment of a dual-mode partial response receiver 767 that operates in generally the same manner as the partial response receiver 700 of FIG. 28 , except that the a comparator 708 is omitted, and the clock data recovery circuit 770 has been modified relative to counterpart 705 of FIG. 28 by omitting circuitry for processing the ⁇ transitions.
- the partial response receiver 767 includes a dual-mode data receive/level sampling circuit 701 and adaptive module 703 that operate in generally the same manner as like-numbered circuits described in reference to FIG. 28 .
- the data receive and level sampling circuit 701 samples incoming 4-PAM signals in response to a sampling clock signal 210 (SCLK) to generate an MSB and LSB per captured sample, and generates a data level error sample (E DLEV ) that allows the adaptive module to determine the full scale difference between steady-state high and low signal levels.
- the data receive and level sampling circuit 701 When the mode select signal 712 selects a 2-PAM mode of operation, the data receive and level sampling circuit 701 generates data samples in response to the sampling clock signal 210 by selecting between partial-response comparators (i.e., the comparators receiving the ⁇ threshold levels) and supplies the selected samples to the adaptive module 703 in pairs to enable determination of which of partial response state is reflected by the error sample, E DLEV , generated by data level comparator (or data level comparators). The adaptive module 703 then adjusts the ⁇ threshold levels and the zero threshold level according to the incoming data signal levels determined by the data level comparator.
- partial-response comparators i.e., the comparators receiving the ⁇ threshold levels
- the edge comparators 707 and 709 capture transition samples T N ⁇ 2 (+ ⁇ ) and T N ⁇ 2 (0), respectively, from the incoming data signal, D N , in response to transitions of an edge clock signal 610 (ECLK) and provide the transition samples to the clock data recovery circuit 770 .
- the 4-PAM/partial response data samples captured by the data receive and level sampling circuit 701 i.e., MSB/LSB in 4-PAM mode, D[N ⁇ 2:N ⁇ 3] in partial response mode
- the clock data recovery circuit 770 are also provided to the clock data recovery circuit 770 .
- the clock data recovery circuit 770 selectively adjusts the phases of the edge clock signal 610 and sampling clock signal 210 based on the transition samples and data samples generally as described in reference to FIGS. 28, 29 and 30 , except that type (3) transitions (i.e., transitions that cross the ⁇ threshold at timing center T 1 as shown in FIGS. 29 and 30 ) are not detected and thus not used to generate timing updates.
- type (3) transitions i.e., transitions that cross the ⁇ threshold at timing center T 1 as shown in FIGS. 29 and 30 .
- FIG. 35 illustrates an embodiment of the clock data recovery circuit 770 of FIG. 34 in greater detail.
- the clock data recovery circuit 770 includes a phase detector 771 , accumulator 775 (ACCUM), interpolator 779 (INTERP) and reference loop 669 (REF LOOP) that operate generally as described in reference to FIGS. 26 and 28 to generate a sampling clock signal 210 and edge clock signal 610 .
- the phase detector 771 includes a transition detect circuit 772 (TD) to detect selected data-state transitions (i.e., type (1) transitions and type (2) transitions) and assert transition detect signal 732 in response, and a sample select circuit 773 (SS) to generate early signal 734 according to the states of transition samples that correspond to the detected data-state transitions.
- TD transition detect circuit 772
- SS sample select circuit 773
- the early signal 734 is a phase error signal that indicates whether the edge clock signal transitioned early or late relative to a transition in the incoming data signal and therefore whether the sampling clock signal is early or late relative to a desired sampling time.
- the transition detect signal 732 and early signal 734 are supplied to count-enable and up/down inputs, respectively, of counter logic 774 which, in one embodiment, operates in generally the same manner as the early/late counter 663 and majority detector 665 of FIG.
- phase error count i.e., count of early/late indications
- a signed two-bit update signal 776 in which a magnitude bit (e.g., least significant bit) indicates whether a phase control value 778 (PCntl) maintained within accumulator 775 is to be adjusted and a sign bit that indicates whether the adjustment, if any, is to be an increment or decrement.
- a magnitude bit e.g., least significant bit
- the accumulator 775 is implemented by a counter that receives the least significant bit of the update signal 776 at a count-enable input, and the most significant bit at an up/down input.
- the phase control value 778 i.e., count value
- the accumulator is adjusted up or down or held steady according to the update signal 776 .
- the phase control value 778 is supplied to the interpolator 779 which, in response, interpolates between a selected pair of phase vectors 672 (i.e., provided by reference loop 669 in response to a reference clock signal 670 ) to generate sampling clock signal 210 and edge clock signal 610 .
- the accumulator 775 and interpolator 779 function in generally the manner described above in reference to interpolator 667 of FIG. 26 . That is, accumulator 775 corresponds to logic within interpolator 667 for maintaining and adjusting a digital control word (i.e., shown as phase control value 778 in FIG. 35 ), and interpolator 779 corresponds the phase vector selection and interpolation logic within the interpolator 667 .
- the + ⁇ comparator 707 and corresponding circuitry within clock data recovery circuit 705 may be omitted instead of the -a comparator 708 and corresponding circuitry.
- type (1) and type (3) transitions are detected instead of type (1) and type (2) transitions.
- circuitry for supporting one or the other mode may be omitted in an alternative embodiment, thus establishing a dedicated partial-response receiver or dedicated 4-PAM receiver.
- the partial response receiver may additionally or alternatively support a binary signaling (2-PAM) mode of operation in which a single decision threshold is used to distinguish between logic ‘1’ and logic ‘0’ data, and in which the partial-response circuitry (and/or 4-PAM circuitry, if present) is bypassed or disabled.
- 2-PAM binary signaling
- FIG. 36 illustrates embodiments of the transition detect circuit 772 and sample select circuit 773 of FIG. 35 in greater detail.
- the transition detect circuit 772 includes combinatorial logic circuit 727 1 , to generate type (1) 4-PAM and partial-response transition detect signals 730 1A and 730 1B , and combinatorial logic circuit 727 2 to generate type (2) 4-PAM and partial-response transition detect signals 730 2A and 730 2B , but, due to the above-described omission of the ⁇ comparator, does not include a combinatorial logic circuit to generate type (3) transition detect signals.
- the transition detect circuit 772 includes combinatorial logic circuit 727 1 , to generate type (1) 4-PAM and partial-response transition detect signals 730 1A and 730 1B , and combinatorial logic circuit 727 2 to generate type (2) 4-PAM and partial-response transition detect signals 730 2A and 730 2B , but, due to the above-described omission of the ⁇ comparat
- the data samples supplied to the combinatorial logic circuits 727 1 and 727 2 are depicted as having latency N, N ⁇ 1 and N ⁇ 2 (the N ⁇ 2 sample may be obtained through an additional buffering stage, not shown), but may have any latency necessary to match the latency of the data samples output from the data receive and level sampling circuit 701 of FIG. 34 .
- Select circuits 729 1 and 729 2 are coupled to combinatorial logic circuits 727 1 and 727 2 , respectively, and operate as described in reference to FIG. 31 to pass, as transition detect signals 733 1 and 733 2 , either the 4-PAM transition detect signals 730 1A , 730 2A or partial-response transition detect signals 730 1B , 730 2B .
- the transition detect signals 733 1 and 733 2 are logically ORed in OR gate 736 to produce output transition detect signal 732 , and are also supplied to AND gates 741 1 and 741 2 , respectively, within sample select logic 773 to gate the zero-threshold transition sample, T N (0) and + ⁇ -threshold transition sample, T N (+ ⁇ ).
- transition detect signal 733 1 is asserted to enable AND gate 741 1 to output the zero-threshold transition sample
- transition detect signal 733 2 is asserted to enable AND gate 741 2 to output the + ⁇ -threshold transition sample.
- the outputs of AND gates 741 1 and 741 2 are supplied to OR gate 744 which outputs an early/late signal 734 to accompany the transition detect signal 732 .
- the reduced phase error correction rate that results from omission of the ⁇ comparator or + ⁇ comparator and corresponding clock recovery logic is generally tolerable in mesochronous systems, so long as the phase error correction rate is sufficient to compensate for phase drift between the sampling clock signal and desired sampling instant.
- phase error correction rate In high-speed signaling systems in which phase drift occurs gradually (e.g., due to changes in temperature or supply voltage), even a worst-case 50% phase error correction rate (i.e., 50% of the total available data-state transitions are used to generate timing updates) is sufficient to maintain phase lock.
- a worst-case 50% phase error correction rate i.e., 50% of the total available data-state transitions are used to generate timing updates
- the reduction in phase error correction rate translates directly to a reduced frequency lock range.
- the phase error correction rate establishes a ceiling for the frequency deviation that may be compensated by the clock data recovery circuit 770 so that omission of circuitry for detecting some data-state transitions generally reduces the frequency lock range.
- the partial response receiver 767 of FIG. 34 (or above-described variants thereof) may be applied without change.
- the clock data recovery circuit 770 may, at least in a worst case, be unable to update the sampling clock phase quickly enough to track the phase drift caused by the frequency deviation. In one embodiment, this shortcoming is addressed by modifying the clock data recovery circuit 770 to include both phase and frequency error compensation circuitry.
- FIG. 37 illustrates an embodiment of a second-order clock data recovery circuit 780 that includes dual compensation paths to correct both phase and frequency errors.
- the clock data recovery circuit 780 includes a phase detector 771 that operates generally as described in reference to FIGS. 35 and 36 to generate an update signal 776 that indicates whether to advance, leave unchanged or retard ( ⁇ 1, 0, +1) the phase of a sampling clock signal.
- the update signal 776 is supplied to a phase-error compensation path formed by feed-forward gain circuit 781 to generate a phase-error compensation signal 782 , and is also supplied to a frequency-error compensation path formed by an integration gain circuit 783 and a frequency-error accumulator 785 that cooperate to generate a frequency-error compensation signal 786 (i.e., a frequency difference value that indicates an estimation or measure of a difference in frequency between the reference clock signal (e.g., signal 670 of FIG. 35 ) and a signal used to time transmission of the incoming data signal, D N ).
- a frequency-error compensation signal 786 i.e., a frequency difference value that indicates an estimation or measure of a difference in frequency between the reference clock signal (e.g., signal 670 of FIG. 35 ) and a signal used to time transmission of the incoming data signal, D N ).
- one or both of the feed-forward gain and integration gain applied by the feed-forward gain circuit 781 and integration gain circuit 783 , respectively, are established by configuration register settings (e.g., established through run-time or production-time programming of volatile or non-volatile storage elements), with the integration gain generally being substantially smaller than the feed-forward gain.
- the feed-forward gain circuit 781 is a digital multiplier that scales the update signal 776 by a power-of-two scaling factor that ranges from 20 to 27 (i.e., 1 to 128, though a larger or smaller range of scaling factors may be used in alternative embodiments) and outputs a signed eight-bit value as the phase-error compensation signal 782 .
- +1 (0000 0001b, where ‘b’ denotes binary notation) is scaled to +4 (0000 0100b), and ⁇ 1 (1111 1111b) is scaled to ⁇ 4 (1111 1100b).
- the integration gain circuit 783 is implemented by a digital multiplier that scales the update signal 776 by a fixed-point power-of-two scaling factor that ranges from 2 ⁇ 6 to 2 1 (i.e., 1/64 to 2, though a larger or smaller range of scaling factors may be used) and outputs a signed eight-bit fixed-point frequency error update signal 784 .
- a digital multiplier that scales the update signal 776 by a fixed-point power-of-two scaling factor that ranges from 2 ⁇ 6 to 2 1 (i.e., 1/64 to 2, though a larger or smaller range of scaling factors may be used) and outputs a signed eight-bit fixed-point frequency error update signal 784 .
- +1 (0000 0001b) is scaled to +1 ⁇ 8 (00.001000b)
- ⁇ 1 (1111 1111b) is scaled to ⁇ 1 ⁇ 8 (11.111000b).
- the frequency-error accumulator 785 is triggered by a transition detect signal (e.g., signal 732 of FIG. 36 or a signal derived therefrom) to increment, decrement or leave unchanged, according to frequency-error update signal 784 , an accumulated value that constitutes the frequency-error compensation signal 786 .
- a transition detect signal e.g., signal 732 of FIG. 36 or a signal derived therefrom
- the resulting sequence of predominantly same-sign update signals 776 (i.e., predominantly positive or predominantly negative according to the lead/lag relationship between the two clock signals) will accumulate within phase error accumulator 785 until such time as the resulting frequency-error compensation signal 786 reaches a value sufficient to compensate for the frequency deviation, as discussed below
- the frequency-error compensation signal 786 and phase-error compensation signal are summed in summing circuit 787 to generate a composite compensation signal 788 that is provided, in turn, to accumulator 789 to update the phase control value 778 .
- the summing circuit 787 performs a fixed-point summing operation to generate a fixed-point sum having sufficient precision to include the integer field of signal 782 and the fractional field of signal 784 , then truncates the fractional field (e.g., by not outputting some number of the least significant bits of the sum) to generate a final N-bit composite compensation signal 788 .
- the composite compensation signal 788 is an eight-bit value, though a higher or lower resolution value may be generated in alternative embodiments.
- phase errors that result from a frequency deviation between the clock signal used to time data signal transmission and the reference clock signal (or frequency multiple thereof) used to generate phase vectors that are mixed to generate the edge and sample clock signals will result in accumulation of a countervailing frequency error compensation value within accumulator 785 , while transient phase errors are compensated by the relatively high-gain phase error compensation path.
- the feed-forward gain and integration gain are programmed (or hardwired) to effect a x4 scaling factor ( ⁇ 4, 0, +4) and x1 ⁇ 8 scaling factor ( ⁇ 1 ⁇ 8, 0, +1 ⁇ 8), respectively, as shown in FIG.
- phase detector 771 will generate a sequence of update signals 776 (i.e., +1) predominantly indicating that the phase of the edge clock signal (and therefore the sampling clock signal) leads the desired sampling instant and thus that the phase control value 778 should be adjusted to delay the phase of the sampling clock signal and edge clock signal (note that the phase control value 778 may be provided, as shown in FIG. 35 , to an interpolator 779 that responds by selecting a pair of phase vectors 672 from a reference loop 669 ).
- the x1 ⁇ 8 scale factor applied by the integration gain circuit 783 will result in relatively gradual accumulation of a frequency-error compensation value 786 until the frequency error compensation value rises to a point that corresponds to the frequency error. At that point, the frequency error compensation component of the updates to the phase control value should substantially match the phase updates needed to track the steady-state frequency error, with the higher-gain phase error compensation component (i.e., 782 ) of the composite compensation signal 788 being applied to compensate for more transient phase errors.
- gain settings and/or ranges of gain settings may be used within the feed-forward gain circuit 781 and integration gain circuit 783 in different applications or embodiments, and higher or lower resolution values may be used to convey the phase-error compensation signal 782 , frequency-error compensation signal 784 , and composite compensation signal 788 .
- FIG. 38 illustrates the increased lock range achieved through addition of the frequency-error compensation circuitry within the second-order clock data recovery circuit 780 of FIG. 37 . That is, without the frequency-error compensation circuitry, frequency error correction is limited by the maximum phase error correction rate (i.e., product of rate at which update signal 776 is generated and scaling factor applied by gain circuit 781 ) to a first-order frequency-locking range 790 (i.e., from +FreqA/2 to ⁇ FreqA/2). By contrast, the addition of the frequency-error compensation circuitry generally will enable a wider, second-order frequency locking range 792 (i.e., from +FreqB/2 to ⁇ FreqB/2).
- the maximum phase error correction rate i.e., product of rate at which update signal 776 is generated and scaling factor applied by gain circuit 781
- a first-order frequency-locking range 790 i.e., from +FreqA/2 to ⁇ FreqA/2
- an increased frequency locking range may be present regardless of the percentage of the data-state transitions that are used as timing updates so that, even in a signal receiver having hardware to detect type (1), type (2) and type (3) data-state transitions (e.g., as in FIG. 28 ), or even non-data-state transitions as in the ‘1’-crossing and ‘ ⁇ 1’-crossing transitions described in reference to FIG. 32 , the second-order clock data recovery circuit 770 of FIG. 37 may be applied to increase the range of frequencies over which phase lock may be maintained.
- the frequency-error compensation circuitry may enable phase locking up to range 792 even when the percentage of edges that become timing updates is relatively low, so long as at least a threshold level of updates is received.
- FIG. 39 illustrates a distribution 795 of data-plus-partial-response signal levels in a system in which the two most recently received symbols are the primary source of residual channel response (i.e., the channel memory includes a partial response, ⁇ , to the immediately preceding symbol, D N ⁇ 1 , and a partial response, ⁇ , to the twice-removed preceding symbol, D N ⁇ 2 ).
- the constellation may be viewed as defining four signal ranges 797 1 - 797 4 , each range being centered about one of the four possible partial response levels, ⁇ + ⁇ , ⁇ , ⁇ + ⁇ , and ⁇ .
- FIG. 40 illustrates a partial response receiver 800 that operates in accordance with the partial response states shown in FIG. 39 .
- Four comparators 801 1 , 801 2 , 801 3 and 801 4 are provided to compare the signal level of an incoming symbol, D N , against the four partial response threshold levels ⁇ + ⁇ , ⁇ , ⁇ + ⁇ and ⁇ , respectively.
- each of the comparators 801 are stored in a first stage of storage circuits 802 1 - 802 4 (e.g., in response to a sampling clock signal, not shown), with the sample values that correspond to the + ⁇ threshold levels (i.e., D N ⁇ 1 ( ⁇ + ⁇ ) and D N ⁇ 1 ( ⁇ )) being supplied to a first select circuit 810 and the sample values that correspond to the ⁇ threshold levels (i.e., D N ⁇ 1 ( ⁇ + ⁇ ) and D N ⁇ 1 ( ⁇ )) being supplied to a second select circuit 812 .
- Each of the first and second select circuits 810 and 812 selects between its respective pair of input samples according to the state of a previously resolved sample value, D N ⁇ 3 , stored in storage circuit 820 .
- the resolve sample value, D N ⁇ 3 is a ‘1’
- ⁇ the partial response to D N ⁇ 3
- the select circuits 810 and 812 select the sample values D N ⁇ 1 ( ⁇ + ⁇ ) and D N ⁇ 1 ( ⁇ + ⁇ ), respectively, that correspond to the positive P state.
- ⁇ is a negative value and the select circuits 810 and 812 select the sample values D N ⁇ 1 ( ⁇ ) and D N ⁇ 1 ( ⁇ ) that correspond to the negative ⁇ state.
- the D N ⁇ 1 sample values selected by the select circuits 810 and 812 correspond to the + ⁇ and ⁇ partial response states, respectively, and are stored in storage circuits 814 and 816 to provide D N ⁇ 2 sample values D N ⁇ 2 ( ⁇ ) and D N ⁇ 2 ( ⁇ a).
- the D N ⁇ 2 ( ⁇ ) and D N ⁇ 2 ( ⁇ ) samples are output from the storage circuits 814 and 816 to respective inputs of select circuit 818 .
- the D N ⁇ 3 sample value is supplied to a select input of select circuit 818 to select either D N ⁇ 2 (+ ⁇ ) or D N ⁇ 2 ( ⁇ ).
- the partial response receiver 800 of FIG. 40 simultaneously compares the incoming data signal against four different partial response thresholds, then selects one of the four sample values to be the output sample value (D N ⁇ 3 ) based on the previously resolved state of the ⁇ and ⁇ partial response components. Partial response components from more than two previously received symbols may be accommodated in a similar manner by increasing the number of comparators to match the number of partial response levels to be resolved, and then selecting the desired partial response sample on the basis of the partial response components indicated by a previously resolved sample value.
- FIG. 41 illustrates a partial response receiver 840 according to another embodiment of the invention.
- the partial response receiver 840 includes a partial response receive circuit 800 , level sampler 841 and adaptive module 850 .
- the partial response receive circuit 800 operates generally as described in reference to FIG. 40 to generate sample value D N ⁇ 3 , which is supplied to the adaptive module 850 .
- the level sampler 841 operates in generally the same manner as the level sampling circuit of FIG. 14 , except that eight comparators 842 1 - 842 8 are provided to error samples for each of the eight possible partial response levels depicted in FIG. 39 (i.e., E 000 , E 001 , . . . , E 110 , E 111 ).
- the level sampler additionally includes storage circuits 844 to latency-align the error samples generated by comparators 842 with the data sample D[N ⁇ 3] generated by the partial response receive circuit 800 .
- the adaptive module 850 operates similarly to the adaptive module described in reference to FIGS. 14-16 , except that control values for each of the eight partial response threshold levels applied within comparators 842 are updated in response to reception of a corresponding one of the eight possible data patterns for sample values D[N ⁇ 3 N ⁇ 5] (note that data samples D N ⁇ 4 and D N ⁇ 5 may be generated by buffering data samples received from the partial response receive circuit 800 within the adaptive module 850 ).
- each of the four threshold control values supplied to the partial response receive circuit 800 (i.e., C ⁇ + ⁇ , C ⁇ , C ⁇ + ⁇ and C ⁇ ) are generated by averaging respective pairs of the control values output to the level sampler 841 . That is:
- FIG. 42 illustrates a constellation of possible signal levels in a 4-PAM signaling system. More specifically, assuming that a given data symbol has one of the four levels +3, +1, ⁇ 1 or ⁇ 3 centered about a nominal zero value, and that the primary partial response is due to the immediately preceding symbol, then sixteen partial response states become possible. That is, a symbol nominally transmitted at level +3 may have any of the states 3+3 ⁇ , 3+ ⁇ , 3 ⁇ , or 3 ⁇ 3 ⁇ when observed at the receiver, depending on whether the signal level for the preceding symbol was +3, +1, ⁇ 1 or ⁇ 3.
- a symbol nominally transmitted at levels +1, ⁇ 1 or ⁇ 3 may have any of the four states that correspond to the additive or subtractive effect of the preceding symbol level.
- FIG. 43 illustrates a 4-PAM partial response receiver 875 according to an embodiment of the invention.
- the receiver 875 includes four 4-PAM receive circuits 877 1 - 877 4 (i.e., each capable of resolving the signal level of an incoming symbol into one of four possible two-bit combinations) each having a threshold level that is offset according to one of the four partial response levels (3 ⁇ , ⁇ , ⁇ , or ⁇ 3 ⁇ ).
- receive circuit 877 4 for example, the 3 ⁇ offset (corresponding to a prior symbol level of 10) is applied to each of the internal levels generated to resolve the 4-PAM signal.
- the incoming signal is compared with ⁇ 2+3 ⁇ , 3 ⁇ and 2+3a (i.e., the threshold values between the 3+3 ⁇ , 1+3 ⁇ , ⁇ 1+3 ⁇ , ⁇ 3+3 ⁇ constellation depicted in FIG. 42 ).
- 4-PAM receive circuit 877 3 compares the incoming signal with thresholds offset by ⁇ (i.e., ⁇ 2+ ⁇ , ⁇ and 2+ ⁇ )
- comparator 877 2 compares the incoming signal with thresholds offset by ⁇ (i.e., ⁇ 2 ⁇ , ⁇ , and 2 ⁇ )
- comparator 877 1 compares the incoming signal with thresholds offset by ⁇ 3 ⁇ (i.e., ⁇ 2 ⁇ 3 ⁇ , ⁇ 3 ⁇ and 2 ⁇ 3 ⁇ ).
- the incoming signal is resolved into four 2-bit sample values according to each of the four possible partial responses to the preceding symbol.
- PAM levels e.g., 8-PAM, 10-PAM, etc.
- FIG. 44 illustrates an input circuit 885 that includes multiple partial response receivers 887 1 - 887 M according to an embodiment of the invention.
- Each of the partial response receivers 887 1 - 887 M is coupled to a respective one of signal lines 883 1 - 883 M to receive a corresponding one of data signals D 1 -D M .
- each of the data signals D 1 -D M is a serial stream of data values (e.g., data eyes) that is sampled within the corresponding partial response receiver 887 to generate a corresponding one of sample values, S 1 -S M .
- the sampled values S 1 -S M are delayed relative to the corresponding data values by one or more symbol times, i, according to the latency introduced by the partial response receiver 887 .
- Partial response receivers 887 1 - 887 M ⁇ 1 similarly output respective sample values S 1 [N ⁇ i]-S M ⁇ 1 [N ⁇ i] during the symbol times in which data values D 1 [N]-D M ⁇ 1 [N] are valid.
- each of the signal lines 893 1 - 893 M forms a unidirectional or bidirectional point-to-point signaling link between a first IC device that includes input circuit 885 and a second IC device.
- the first IC device may additionally include transmit circuitry coupled to the signal lines 893
- the second IC device may include a counterpart input/output circuitry having an input circuit similar to input circuit 885 .
- the first and second IC devices may be in separate IC packages coupled to a common substrate (e.g., circuit board) or coupled to different substrates (e.g., coupled to respective daughterboards with signal paths 893 1 - 893 M formed in part by signal traces on the daughterboards and on a backplane, or the first IC device coupled to a daughterboard and the second IC device coupled to a motherboard).
- the first and second IC devices may be included within the same IC package (e.g., a multi-chip module, chip-stack package, paper-thin package or combination of integrated circuit dice within a package).
- each of the signal lines 893 1 - 893 M forms a unidirectional or bidirectional multi-drop signaling link coupled to three or more IC devices, with the IC devices or any subset thereof being disposed on the same or different substrates, and within the same or different IC packages.
- the signal lines 893 1 - 893 M may constitute a parallel signaling path 894 for transmission of multi-bit data values.
- each of the sample values S 1 -S M for a given symbol time i.e., corresponding to data values D 1 -D M recovered from path 894
- may represent a unified digital value in which S M is a most significant bit (MSB) and sample S 1 is a least significant bit (LSB), M being any integer value greater than one.
- subsets of bits within the sample values S 1 -S M may constitute respective unified digital values (e.g., S 1 -S X being a first value ordered from LSB to MSB, S X+1 -S Y being a second data value ordered from LSB to MSB, and so forth to S Z+1 to S M which constitute a last data value ordered from LSB to MSB).
- any number of successively received samples i.e., corresponding to a packetized transmission of values
- S 1 [N ⁇ i ⁇ 1]-S M [N ⁇ i ⁇ 1] . . .
- S 1 [N ⁇ i ⁇ Q]-S M [N ⁇ i ⁇ Q] may form a unified digital value having a total of Q ⁇ M bits (Q being any integer value greater than one) in which one bit is an LSB and one bit is an MSB.
- a set of successively received samples may form multiple unified digitized values, as when bits of a first digitized value are generated in successive symbol times by partial response receivers 887 1 - 887 X , bits of a second digitized value are generated in successive symbol times by partial response receivers 887 X+1 - 887 Y , and so forth.
- each partial response receiver 887 includes a partial response receive circuit 888 , level sampler 889 , adaptive module 890 , edge sampler 891 and clock data recovery circuit 892 .
- the partial response receive circuit 888 may be a multi-mode receive circuit as described above (i.e., capable of being switched between a multi-level signaling mode and a partial-response mode), or may be dedicated to partial-response operation.
- the partial response receive circuit may operate on incoming binary or multi-level signals (e.g., 2-PAM, 4-PAM, 8-PAM, 10-PAM, etc.) having any data rate (e.g., single data rate, double data rate, quad data rate, octal data rate, decade data rate, etc.).
- the partial response receive circuit 888 may be implemented by any of the partial response receive circuit embodiments described herein.
- the level sampler 889 and adaptive module 890 may be implemented by any of the level sampler and adaptive module embodiments described herein.
- the level sampler 889 may output multiple error samples to the adaptive module 890 , and the adaptive module 890 may output any number of control values to the level sampler 889 , partial response receive circuit 888 and edge sampler 891 (e.g., as shown in FIGS. 14, 28 and 36 ) in addition to or instead of C DLEV , C ⁇ , /C ⁇ and C 0 .
- the edge sampler 891 and clock data recovery circuit 892 may recover any number of clock signals as described above in reference to FIGS.
- the edge sampler 891 and clock data recovery circuit 892 may recover phase information (i.e., for adjusting the phase of the recovered clock signals) from any or all transitions of the incoming data signal 893 as described above.
- the edge sampler 891 and clock data recovery circuit 892 may be omitted from the partial response receiver 887 in an embodiment in which clock signals, strobe signals or other timing signals are provided by another source, such as an external or internal clock generator, or separate clock recovery circuit.
- FIG. 45 illustrates an input circuit 895 according to an alternative embodiment of the invention.
- the input circuit 895 is similar to the input circuit 885 of FIG. 44 (and may be implemented in all the alternative embodiments described in reference to FIG. 44 ), except that the circuitry used to generate partial response thresholds (or representative control values) and sampling clock signals is shared among multiple partial response receive circuits 888 1 - 888 M .
- a single level sampler 889 and corresponding adaptive module 890 are used to generate control values C ⁇ , /C ⁇ and C 0 (and additional or different threshold control values in multi-level signaling embodiments and embodiments that do not include clock recovery circuitry) that are supplied to each of the partial response receive circuits 888 1 - 888 M
- a single edge sampler 891 and corresponding clock data recovery circuit 892 are used to generate the sampling clock signal (SCLK) that is supplied to each of the partial response receive circuits 888 1 - 888 M .
- SCLK sampling clock signal
- Multiple sampling clock signals may be generated and shared among the partial response receive circuits 888 1 - 888 M in multi-data rate embodiments.
- the amount of circuitry within the input circuit 895 is substantially reduced relative to input circuit 885 , reducing production and operational cost of the host integrated circuit device (i.e., due to reduced die area consumption, layout complexity, test and verification time, power consumption, etc.).
- the sampling clock signal is provided by circuitry other than clock data recovery circuitry (e.g., external clock source, internal clock generated)
- the edge sampler 891 and clock data recovery circuit 892 may be omitted.
- programmable selection of the clock source may be used to select either the recovered sampling clock (i.e., recovered by operation of the edge sampler 891 and clock data recovery circuit 892 ) or another clock source to provide a sampling clock signal to the partial response receive circuits 888 1 - 888 M .
- the recovered sampling clock i.e., recovered by operation of the edge sampler 891 and clock data recovery circuit 892
- another clock source to provide a sampling clock signal to the partial response receive circuits 888 1 - 888 M .
- the signal lines 893 1 - 893 M may be used to deliver distinct serial transmissions, or transmission of related groups of bits (e.g., the M bits received during a given symbol time representing one or more multi-bit digital values) as, for example, in the case of a parallel bus or any other signaling system in which the threshold control values and/or timing control signals are expected to be substantially similar (e.g., substantially same thresholds and/or clock phases) across multiple signaling paths.
- a single level sampler 889 and corresponding adaptive module 890 are depicted in FIG.
- threshold control values C ⁇ , /C ⁇ and C 0 for each of the partial response receive circuits 888 1 - 888 M
- multiple level sampler/adaptive module pairs may be used to generate threshold control values for respective subsets of the partial response receive circuits 888 1 - 888 M
- Respective edge sampler/clock data recovery circuit pairs may similarly be used to generate sampling clock signals for corresponding subsets of partial response receive circuits 888 1 - 888 M .
- the partial response receive circuits 888 1 - 888 M may be implemented by any of the embodiments described herein including, without limitation, the embodiments described as described in reference to FIGS. 17-19 . Also, in embodiments in which a preamplifier (e.g., preamplifier 401 of FIG. 17 ) or offset control circuit (e.g., offset control circuit 440 of FIG.
- a preamplifier e.g., preamplifier 401 of FIG. 17
- offset control circuit e.g., offset control circuit 440 of FIG.
- preamplifier or offset control circuit may be shared among multiple partial response receive circuits 888 , thereby reducing the circuitry within the partial response receive circuits 888 1 - 888 M to that of a sampling circuit (e.g., sampler 425 of FIG. 17 or sampler 452 o FIG. 19 ).
- Respective preamplifiers may also be shared among subsets of the partial response receive circuits 888 1 - 888 M .
- FIG. 46 illustrates a signaling system 950 having a transmit device 951 and receive device 953 coupled to one another via a signaling path 122 .
- the transmit device 951 includes an equalizing transmit circuit 957 and tap control logic 955
- the receive device 953 includes a partial response receive circuit (which may, for example, be a multi-mode circuit or any other of the partial response receive circuits disclosed herein), level sampler 973 and adaptive module 975 .
- Both the transmit device 951 and receive device 953 may include numerous other circuits not shown in FIG. 46 (e.g., application logic, additional transmit circuits and/or receive circuits, etc.).
- the equalizing transmit circuit 957 includes a number of output drivers 961 0 - 961 N ⁇ 1 to drive a symbol onto signaling path 122 in response to a transmit timing signal (not shown) and in accordance with a set of weighting values W 0 -W N ⁇ 1 and the state of data values D 0 -D N ⁇ 1 .
- Each of the data values D 0 -D ⁇ (N ⁇ 1) is stored within a shift register 959 (or similar storage circuit) and includes a number of constituent bits in accordance to the number of bits encoded into each symbol transmission on the signaling path 102 .
- each of the data values, D 0 -D (N ⁇ 1) includes two constituent bits.
- each of the data values includes log 2 (M) constituent bits.
- the contents of the shift register 959 are shifted forward so that a new data value is shifted into position D 0 , and the data value at position D ⁇ (N ⁇ 1) is overwritten by the data value previously at position D ⁇ (N ⁇ 2) .
- the weighting values W 0 -W N ⁇ 1 are generated by the tap control logic 955 and are used to establish the signal drive strength of each of the output drivers 961 .
- the output driver 961 0 drives the symbol to be transmitted during a given symbol time in accordance with weighting value W 0
- the output drivers 961 1 - 961 N ⁇ 1 constitute a set of post-tap drivers for equalizing the output signal according to the post-tap data values stored within positions D ⁇ 1 ⁇ D ⁇ (N ⁇ 1) of the shift register 959 and the weighting values W 1 -W N ⁇ 1 . Though not shown in FIG.
- pre-tap output drivers may also be provided to equalize the output signal according to pre-tap data values (and pre-tap weighting values), and yet other output drivers may be provided to cancel cross-talk from neighboring signal lines.
- one or more of the output drivers 961 may be dynamically or statically allocated between pre-tap equalization, post-tap equalization and cross-talk cancellation functions, for example, through configuration register settings or externally received configuration control signals.
- C PR K partial response threshold levels
- the tap control logic 955 of transmit device 951 generates the weighting values W 0 -W N ⁇ 1 in accordance with the number of symbols desired to contribute to the partial response observed at the receive device 953 .
- the tap control logic 955 generates weighting values W 0 -W N ⁇ 1 to equalize the dispersion-type ISI produced by symbol transmissions after D ⁇ 1 and prior to D 0 . That is, referring to the raw pulse response shown in FIG.
- the partial response of the signaling path 122 to symbols D +1 , and D ⁇ 2 to D ⁇ (N ⁇ 1) is equalized by appropriate settings of the weighting values applied to a pre-tap output driver (not shown in FIG. 46 ) and post-tap output drivers 961 2 - 961 N ⁇ 1 .
- the equalized signal observed by the receive device 953 i.e., equalized for partial response as depicted in FIG. 47
- the equalized signal observed by the receive device 953 includes a contribution from the symbol to be received, D 0 , and a partial response to the immediately preceding symbol, D ⁇ 1 , with the partial response to all other transmissions being attenuated (e.g., to a negligible or substantially reduced level).
- the tap control logic 955 may enable partial response to one or more additional symbols to remain in the signal observed by the receive device 953 depending on the desired number of partial response contributors. Also, in a multi-mode circuit in which a partial response receive circuit may optionally be operated in a non-partial response mode, the tap control logic 955 may generate weighting values W 0 -W N ⁇ 1 as necessary to cancel (or reduce) the partial response to post-tap and pre-tap data values.
- the level sampler 973 within the receive device 953 operates generally as described above (e.g., in reference to the various embodiments described in reference to FIGS. 14-15 and 20 - 21 ) to compare the incoming signal with a data level threshold and generate error samples (E DLEV ) that are used to adjust the data level threshold(s), C DLEV , and the partial response thresholds, C PR .
- E DLEV error samples
- the data level threshold and/or the partial response thresholds, C PR may be digital values that are used to establish the desired threshold levels within compare circuits of the partial response receive circuit 971 and the level sampler 973 , or any other types of control values (e.g., analog voltage and/or current levels that are themselves the threshold levels).
- the adaptive module may include filtering circuitry to filter the error samples generated by the level sampler 973 such that the threshold levels generated by the adaptive module are updated based on multiple error samples, rather than on a sample-by-sample basis.
- the adaptive module includes a finite impulse response (FIR) filter to update the threshold levels based on a succession of error samples applied to the filter.
- the adaptive module may include an infinite impulse response filter (IIR) or any other type of filter for filtering the error samples.
- the data level error samples, E DLEV , generated by the level sampler 973 are returned to the transmit device 951 via a back channel 968 (e.g., out-of-band signaling, passage via an intermediary device such as the controller 141 of FIG. 3 , or other communication path that does not consume otherwise usable bandwidth on the signaling path 122 ).
- the error samples are received within the tap control logic 955 and used to adjust the tap weights, W 0 -W N ⁇ 1 , as necessary to reduce ISI (or other sources of distortion) resulting from transmission of symbols other than symbols desired to contribute to the partial response. Referring to FIG.
- the tap control logic may increase and decrease the weights of the post-tap output drivers and/or pre-tap output drivers as necessary to reduce the residual ISI.
- updates to the tap weights themselves may be determined within the receive device (or another device such as controller 141 of FIG.
- one or more replacement tap weights may be determined within the receive device (or other device such as controller 141 of FIG. 3 ) and provided to the transmit device for application in place of corresponding tap weights W 0 -W N ⁇ 1 .
- circuits disclosed herein may be described using computer aided design tools and expressed (or represented), as data and/or instructions embodied in various computer-readable media, in terms of their behavioral, register transfer, logic component, transistor, layout geometries, and/or other characteristics. Formats of files and other objects in which such circuit expressions may be implemented include, but are not limited to, formats supporting behavioral languages such as C, Verilog, and HLDL, formats supporting register level description languages like RTL, and formats supporting geometry description languages such as GDSII, GDSIII, GDSIV, CIF, MEBES and any other suitable formats and languages.
- Computer-readable media in which such formatted data and/or instructions may be embodied include, but are not limited to, non-volatile storage media in various forms (e.g., optical, magnetic or semiconductor storage media) and carrier waves that may be used to transfer such formatted data and/or instructions through wireless, optical, or wired signaling media or any combination thereof.
- Examples of transfers of such formatted data and/or instructions by carrier waves include, but are not limited to, transfers (uploads, downloads, e-mail, etc.) over the Internet and/or other computer networks via one or more data transfer protocols (e.g., HTTP, FTP, SMTP, etc.).
- Such data and/or instruction-based expressions of the above described circuits may be processed by a processing entity (e.g., one or more processors) within the computer system in conjunction with execution of one or more other computer programs including, without limitation, net-list generation programs, place and route programs and the like, to generate a representation or image of a physical manifestation of such circuits.
- a processing entity e.g., one or more processors
- Such representation or image may thereafter be used in device fabrication, for example, by enabling generation of one or more masks that are used to form various components of the circuits in a device fabrication process.
- circuit elements or circuit blocks may be shown or described as multi-conductor or single conductor signal lines.
- Each of the multi-conductor signal lines may alternatively be single-conductor signal lines, and each of the single-conductor signal lines may alternatively be multi-conductor signal lines.
- Signals and signaling paths shown or described as being single-ended may also be differential, and vice-versa.
- signals described or depicted as having active-high or active-low logic levels may have opposite logic levels in alternative embodiments.
- circuits described or depicted as including metal oxide semiconductor (MOS) transistors may alternatively be implemented using bipolar technology or any other technology in which a signal-controlled current flow may be achieved.
- MOS metal oxide semiconductor
- a signal is said to be “asserted” when the signal is driven to a low or high logic state (or charged to a high logic state or discharged to a low logic state) to indicate a particular condition.
- a signal is said to be “deasserted” to indicate that the signal is driven (or charged or discharged) to a state other than the asserted state (including a high or low logic state, or the floating state that may occur when the signal driving circuit is transitioned to a high impedance condition, such as an open drain or open collector condition).
- a signal driving circuit is said to “output” a signal to a signal receiving circuit when the signal driving circuit asserts (or deasserts, if explicitly stated or indicated by context) the signal on a signal line coupled between the signal driving and signal receiving circuits.
- a signal line is said to be “activated” when a signal is asserted on the signal line, and “deactivated” when the signal is deasserted.
- the prefix symbol “/” attached to signal names indicates that the signal is an active low signal (i.e., the asserted state is a logic low state).
- a line over a signal name e.g., ‘ ⁇ overscore ( ⁇ signal name>) ⁇ ’
- the term “coupled” is used herein to express a direct connection as well as a connection through one or more intervening circuits or structures.
- the term “exemplary” is used to express an example, not a preference or requirement.
- a method of operation within an integrated circuit device comprising:
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Dc Digital Transmission (AREA)
- Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
- Medicines Containing Material From Animals Or Micro-Organisms (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Radio Transmission System (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Transition And Organic Metals Composition Catalysts For Addition Polymerization (AREA)
- Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
- Surgical Instruments (AREA)
Abstract
Description
- This application is a continuation-in-part of U.S. patent application Ser. No. 10/662,872, filed Sep. 16, 2003, which claims priority from U.S. Provisional Application No. 60/461,729, filed Apr. 9, 2003. U.S. patent application Ser. No. 10/662,872 and U.S. Provisional Application No. 60/461,729 are hereby incorporated by reference.
- The present invention relates generally to the field of communications, and more particularly to high speed electronic signaling within and between integrated circuit devices.
- Electrical pulses transmitted on a band-limited signaling path disperse in time as they travel from source to destination. In systems in which data is transmitted as a sequence of level-encoded electrical pulses, such time-domain dispersion results in a blending of neighboring pulses; an effect known as dispersion-type inter-symbol interference (ISI). Dispersion-type ISI becomes more pronounced at faster signaling rates, ultimately degrading the signal quality to the point at which distinctions between originally transmitted signal levels may be lost.
-
FIG. 1 illustrates a prior-art signaling system having an equalizingtransmitter 109 and an equalizingreceiver 103 to mitigate dispersion-type ISI resulting from signal transmission on asignaling path 102. Thereceiver 103 includes asampling circuit 105 to generatedigitized samples 106 of the incoming signal, a shift register 107 to store some number (N) of the most recently received samples, and anequalizer 112 to generate anequalization signal 114 based on samples stored in the shift register 107. Ideally, theequalization signal 114 represents the residual signal level onpath 102 of the N prior received samples in the incoming signal so that, by subtracting theequalization signal 114 from the incoming signal indifference circuit 115, the dispersion-type ISI resulting from the prior transmissions is canceled. Because the prior decisions of thesampling circuit 105 are fed back to the sampling circuit input in the form of theequalization signal 114, thereceiver 103 is commonly referred to as a decision feedback equalizer (DFE). - One major limitation of the DFE 103 is that the time delay in the overall feedback path from
sampling circuit 105 todifference circuit 115 makes it difficult to generate theequalization feedback signal 114 in time to equalize the signal level of the immediately following data value if the least latent sample (i.e., the most recently captured sample 106) is included in theequalization feedback signal 114. Including the least latent sample in the equalization signal is particularly challenging in modern high-speed signaling systems in which incoming symbols are present on thesignal path 102 for extremely brief intervals (e.g., less than a nanosecond for signal rates above one Gigabit per second). One solution to the least-latent sample problem is to omit one or more of the least-latent samples from contributing to generation of the decision-feedback equalization signal. Unfortunately, the least latent sample, being nearest in time to the incoming symbol, tends to be the largest contributor to dispersion-type ISI and therefore a primary objective of cancellation by the DFE. Consequently, in signaling systems in which the least-latent sample is omitted from contribution to decision-feedback equalization, transmit-side pre-emphasis is often used to decrease the dispersion-type ISI caused by the least-latent symbol. That is, when a given symbol is transmitted by the equalizingtransmitter 109, one or more previously transmitted symbols stored in shift register 113 (i.e., the least latent symbols relative to the outgoing symbol driven by primary output driver 101) are supplied to equalizingoutput drivers 111 which operate to pre-shape the outgoing waveform to reduce the dispersion-type ISI observed at the receiver. Unfortunately, as can be seen in the raw and equalized pulse responses depicted inFIG. 2 , forcing the least-latent sample, DN−1, to zero (or near zero) results in significant attenuation of the overall signal level, thereby reducing signaling margins and ultimately limiting the data rate of the signaling system. - The present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:
-
FIG. 1 illustrates a prior-art signaling system; -
FIG. 2 illustrates raw and equalized pulse responses observed in the prior art signaling system ofFIG. 1 ; -
FIG. 3 illustrates a signaling system that includes a partial response receiver according to an embodiment of the invention; -
FIG. 4 illustrates a relationship between clock and data signals in one embodiment of the signaling system ofFIG. 3 ; -
FIG. 5 illustrates the bimodal distribution of a binary signal observed at a signal receiver when the primary source of dispersion-type ISI is the signal transmitted in the immediately preceding symbol time; -
FIG. 6 illustrates the four partial response signal levels depicted inFIG. 5 relative to a common mode level, LCM; -
FIG. 7 illustrates a partial response receive circuit according to an embodiment of the invention; -
FIG. 8 illustrates a double data rate signaling protocol in which two symbols are transmitted in succession during each cycle of a sampling clock signal; -
FIG. 9 illustrates a partial response receive circuit for use in a double data rate signaling system; -
FIG. 10 illustrates even and odd pipelines of sample values generated within the partial response receive circuit ofFIG. 9 ; -
FIG. 11 illustrates the use of embedded scoping to generate a time-based trace of an incoming data signal; -
FIG. 12 illustrates a signaling system according to an embodiment of the invention; -
FIG. 13 illustrates a waveform trace of a pulse response captured by an embedded scope within the signaling system ofFIG. 12 ; -
FIG. 14 illustrates a partial response receiver according to an embodiment of the invention that adaptively generates partial response threshold levels; -
FIG. 15 illustrates a embodiment of the adaptive module ofFIG. 14 ; -
FIG. 16 illustrates an alternative circuit arrangement that may be used in place of the averaging circuits ofFIG. 15 ; -
FIG. 17 illustrates a comparator that may be used within the receiver circuits and level sampling circuits ofFIGS. 7, 9 and 14; -
FIG. 18 illustrates an embodiment of the current DAC ofFIG. 17 ; -
FIG. 19 illustrates an alternative comparator embodiment that may be used within the receiver circuits and level sampling circuits ofFIGS. 7, 9 and 14; -
FIG. 20 illustrates a partial response receiver according to another alternative embodiment of the invention; -
FIG. 21 illustrates the operation of the adaptive module ofFIG. 20 according an embodiment of the invention; -
FIG. 22 illustrates an embodiment of a dual mode receiver that may be operated in either a multi-level signaling mode or a partial response mode; -
FIG. 23 illustrates a multi-level signaling protocol used within dual mode receiver ofFIG. 22 ; -
FIG. 24 illustrates a partial response receiver having a clock data recovery function according to an embodiment of the invention; -
FIG. 25 illustrates a number of possible data signal transitions when the incoming data signal has the bimodal distribution shown inFIG. 4 ; -
FIG. 26 illustrates an embodiment of a clock recovery circuit that adjusts the phase of edge clock signal and sampling clock signal based on selected transitions detected in the incoming data signal; -
FIG. 27 illustrates a potential source of non-convergence in a system that adaptively generates partial response threshold levels; -
FIG. 28 illustrates an embodiment of a dual-mode, partial response receiver with clock data recovery; -
FIG. 29 illustrates signal transitions between successive 4-PAM (Pulse Amplitude Modulation) symbols; -
FIG. 30 illustrates data signal transitions that may be used for clock recovery when the dual mode receiver ofFIG. 28 is operated in a partial response mode; -
FIG. 31 illustrates a transition detect circuit and sample select circuit that may be used within the clock recovery circuit ofFIG. 28 ; -
FIG. 32 illustrates additional data signal transitions that may be used for clock recovery when the dual mode receiver ofFIG. 28 is operated in a partial response mode; -
FIG. 33 illustrates a threshold select circuit according to an embodiment of the invention; -
FIG. 34 illustrates an embodiment of a dual-mode partial response receiver that operates in generally the same manner as the partial response receiver ofFIG. 28 , but with reduced clock recovery circuitry; -
FIG. 35 illustrates a more detailed embodiment of the clock data recovery circuit shown inFIG. 34 ; -
FIG. 36 illustrates embodiments of the transition detect circuit and sample select circuit ofFIG. 35 in greater detail; -
FIG. 37 illustrates an embodiment of a second-order clock data recovery circuit that includes dual compensation paths to correct both phase and frequency errors; -
FIG. 38 illustrates the increased lock range achieved through addition of the frequency-error compensation circuitry within the second-order clock data recovery circuit ofFIG. 37 ; -
FIG. 39 illustrates a distribution of signal levels in a system in which the two most recently received symbols are the primary source of residual channel response; -
FIG. 40 illustrates a partial response receiver according to an embodiment of the invention that operates in accordance with the partial response states shown inFIG. 39 ; -
FIG. 41 illustrates a partial response receiver according to another embodiment of the invention; -
FIG. 42 illustrates a constellation of possible signal levels in a 4-PAM signaling system; -
FIG. 43 illustrates a 4-PAM partial response receiver according to an embodiment of the invention; -
FIG. 44 illustrates an input circuit that includes multiple partial response receivers according to an embodiment of the invention; -
FIG. 45 illustrates an input circuit according to an alternative embodiment of the invention; -
FIG. 46 illustrates a partial-response signaling system according to an embodiment of the invention; -
FIG. 47 illustrates a raw pulse response and a pulse response equalized by the signaling system ofFIG. 46 to enable partial-response data reception; and -
FIG. 48 illustrates residual inter-symbol interference that may be equalized by transmit preemphasis within the signaling system ofFIG. 46 . - In the following description and in the accompanying drawings, specific terminology and drawing symbols are set forth to provide a thorough understanding of the present invention. In some instances, the terminology and symbols may imply specific details that are not required to practice the invention. For example, the interconnection between circuit elements or circuit blocks may be shown or described as multi-conductor or single conductor signal lines. Each of the multi-conductor signal lines may alternatively be single-conductor signal lines, and each of the single-conductor signal lines may alternatively be multi-conductor signal lines. Signals and signaling paths shown or described as being single-ended may also be differential, and vice-versa. Similarly, signals described or depicted as having active-high or active-low logic levels may have opposite logic levels in alternative embodiments. As another example, circuits described or depicted as including metal oxide semiconductor (MOS) transistors may alternatively be implemented using bipolar technology or any other technology in which a signal-controlled current flow may be achieved. With respect to terminology, a signal is said to be “asserted” when the signal is driven to a low or high logic state (or charged to a high logic state or discharged to a low logic state) to indicate a particular condition. Conversely, a signal is said to be “deasserted” to indicate that the signal is driven (or charged or discharged) to a state other than the asserted state (including a high or low logic state, or the floating state that may occur when the signal driving circuit is transitioned to a high impedance condition, such as an open drain or open collector condition). A signal driving circuit is said to “output” a signal to a signal receiving circuit when the signal driving circuit asserts (or deasserts, if explicitly stated or indicated by context) the signal on a signal line coupled between the signal driving and signal receiving circuits. A signal line is said to be “activated” when a signal is asserted on the signal line, and “deactivated” when the signal is deasserted. Additionally, the prefix symbol “/” attached to signal names indicates that the signal is an active low signal (i.e., the asserted state is a logic low state). A line over a signal name (e.g., ‘{overscore (<signal name>)}’) is also used to indicate an active low signal. The term “exemplary” is used herein to mean an example, not a preference or requirement.
- A novel signal receiving circuit for use in electrical signaling systems is disclosed in various embodiments. In one embodiment, the signal receiving circuit includes a pair of comparators for comparing an incoming electrical signal against respective threshold levels, with each threshold level being set according to the level of a dispersed component of a previously received signal. More specifically, one of the threshold levels corresponds to the dispersion-type ISI introduced by a previously transmitted signal representative of a first digital state, and the other of the threshold levels corresponds to the dispersion-type ISI introduced when the previously transmitted signal is representative of a second digital state. In the case of a binary signaling system, the previously transmitted signal is resolved into one of two states by the receiving circuit, then used to select which of the comparators is to source the sample to be used for selection of the subsequent pair of samples. By this arrangement, each of the comparators compares the incoming signal against a threshold that is offset from a nominal value according to a respective, anticipated level of ISI, with the comparator having its threshold level offset in the direction that corresponds to the state of the previously received signal ultimately being selected as the sample source. Because samples are captured on the assumption of dispersion-type ISI resulting from both possible states of the previously captured sample (i.e., the least-latent sample), both samples are available for later selection when the state of the previously captured sample is resolved. Thus, by establishing separate threshold levels according to the different possible levels of dispersion-type ISI and comparing the incoming signal against each threshold level, the timing problems associated with generating an equalization signal that includes the least latent sample are avoided. Because the threshold level supplied to each of the comparators includes an offset according to the residual, partial response of the signaling path to the previously transmitted signal, a receive circuit having such offset-threshold comparators is referred to herein as a partial response receiver.
- In another embodiment of the invention, a multi-level signal receiver (i.e., receiver capable of receiving a symbol representative of more than a single binary bit), may be switched to a binary signaling, partial response mode. In one implementation, a multi-PAM receiver (Pulse Amplitude Modulation receiver—a type of multi-level signal receiver) includes multiple comparators for distinguishing different possible levels (e.g., 4 levels in a 4-PAM receiver, 8 levels in an 8-PAM receiver, etc.) such that no additional comparators are necessary to support partial response operation. Instead, when the partial response mode is enabled, the threshold levels supplied to the comparators are adjusted to match the partial response levels for the least-latent symbol (or set of N least-latent symbols) and the post processing of the comparator outputs is switched from a symbol decoding operation to a sample selection operation.
- In other embodiments of the invention, methods and circuits for generating partial response threshold levels are disclosed. Also, methods and circuits for transmitting a partial-response data signal that includes a partial response from selected prior-transmitted bits are disclosed. Further, methods and circuits for recovering a clock signal from a partial response data signal are also disclosed.
- Signaling System Overview
-
FIG. 3 illustrates asignaling system 117 in which embodiments of the present invention may be used. Thesystem 117 includes an equalizingtransmitter 118 and equalizingreceiver 116 coupled to one another via a high-speed signal path 122, and acontroller 141 coupled to thetransmitter 118 and thereceiver 116 via relatively low-speed 142B, respectively. In one embodiment, thesignal paths 142Asignal path 122 is formed bycomponent signal paths signal path 122B is formed on a backplane andsignal paths transmitter 118 andreceiver 116 are implemented in respective integrated circuit (IC) devices that are mounted on the daughterboards. The controller, which may be a general or special purpose processor, state machine or other logic circuit, is implemented within a third integrated circuit device mounted to a yet another circuit board. In the embodiment ofFIG. 3 ,signal paths controller 141 to thetransmitter 118 andreceiver 116, respectively, and may be disposed on the same circuit board (or circuit boards) assignal path 122 or implemented by an alternative structure such as a cable. The controller may alternatively be coupled to thetransmitter 118 andreceiver 116 by a shared signal path such as a multi-drop bus. The operation of thecontroller 141 is discussed in greater detail below. In alternative embodiments, the IC devices containing thetransmitter 118,receiver 116 andcontroller 141 may be mounted to a common structure with the signalingpaths signal paths 122 and 142 formed between the ICs by bond wires or other conducting structures). Also, thetransmitter 118,receiver 116 andcontroller 141, or any subset thereof, may be included within the same IC device (e.g., system on chip) and the signalingpaths 122 and/or 142 implemented by a metal layer or other conducting structure within the IC device. - The equalizing
transmitter 118 transmits data on thesignaling path 122 during successive time intervals, referred to herein as symbol times. In one embodiment, illustrated by the timing diagram ofFIG. 4 , each symbol time, TS, corresponds to a half cycle of a transmit clock signal, TCLK, such that two data values (e.g., values A and B) are transmitted on signalingpath 122 per transmit clock cycle. The transmitted data signal arrives at the input of the equalizingreceiver 116 after propagation time, TP, and is sampled by thereceiver 116 in response to edges of a receive clock signal, RCLK. The receive clock signal may be received within the receive circuit via an external clock line, or may be a recovered version of a reference clock signal (e.g., recovered by a delay-locked loop or phase locked loop circuit). In other embodiments, discussed below, the receive clock signal may be recovered from the transmitted data signal. Still referring toFIG. 4 , the receive clock signal has a quadrature phase relation to data valid windows (i.e., data eyes) in the incoming data signal such that each sample is captured at the midpoint of a data eye. In alternative embodiments, the sampling instant may be skewed relative to data eye midpoints as necessary to satisfy signal setup and hold time requirements in thereceiver 116. Also, more or fewer symbols may be transmitted per cycle of the transmit clock signal. - The equalizing
transmitter 118 includes a transmitshift register 124,output driver 121 and transmitequalizer 129; the transmitequalizer 129 itself including ashift register 120 and a bank ofoutput drivers 131. At the start of each symbol time, the data value at the head (i.e., output) of the transmitshift register 124, referred to herein as the primary data value, is driven onto thesignal path 122 by theoutput driver 121, and the transmitequalizer 129 simultaneously drives an equalizing signal onto thesignal path 122. This type of equalization is referred to herein as transmit preemphasis. In one embodiment, the signal driven onto thesignal path 122 by the output driver 121 (referred to herein as the primary signal) is a multi-level signal having one of four possible states (e.g., defined by four distinct signal ranges) and therefore constitutes a symbol representative of two binary bits of information. In alternative embodiments, the primary signal may have more or fewer possible states and therefore represent more or fewer than two binary bits. Also, the primary signal may be single-ended or differential (an additional signal line is provided to carry the complement signal in the differential case), and may be a voltage or current mode signal. - Each of the
output drivers 131 within the transmitequalizer 129 form either a pre-tap driver or post-tap driver according to whether the source data value has already been transmitted (post-tap data) or is yet to be transmitted (pre-tap data). In the specific embodiment ofFIG. 3 , the equalizer includes N post-tap drivers sourced by data values within theshift register 120 and one pre-tap driver sourced by a data value within the transmitshift register 124. Accordingly, the resultant equalizing signal driven onto thedata path 122 will have a signal level according to data values having symbol latencies of −1, 1, 2, . . . , N, where the symbol latency of a given data value refers to the number of symbol times by which transmission of the data value precedes the transmission of the primary value. Different numbers of post-tap and pre-tap drivers may be provided in alternative embodiments, thereby allowing for equalization based on values having different symbol latencies. - Still referring to
FIG. 3 , the equalizingreceiver 116 includes a partial-response receive circuit 123, buffer 132 (e.g., shift register), tapselect circuit 128 and tapselect logic 139. Data signals are sampled by the partial response receive circuit 123 to generate digitized samples that are stored in thebuffer 132 for eventual use by application logic (not shown). Because the buffered data is stored for at least a predetermined time and represents historical data up to a predetermined number of symbol latencies, the buffered data forms a source of post-tap data values that may be selected by the tapselect circuit 128 to source equalizer taps in a receive-side equalizer circuit. Because a subset of buffered data values may be selected according to the precise symbol latencies of reflections and other high-latency distortions, a relatively small number of buffered data values may be selected to form receive-side equalization taps having latencies that match the latencies of the distortions. By this arrangement, high latency distortions may be reduced by receive-side equalization without dramatically increasing the parasitic capacitance of the receiver (i.e., as would result from a large number of receive-side equalization taps). In one embodiment, the tapselect logic 139 is a configuration circuit that outputs a tapselect signal 134 according to a configuration value. The configuration value may be automatically generated by system 117 (e.g., at system startup) or may be empirically determined and stored within the configuration circuit or elsewhere withinsystem 117. - In the embodiment of
FIG. 3 ,buffer 132 is formed by a shift register having adead range component 133 having M storage elements and a selectable-range component 135 having R storage elements, the tapselect circuit 128 being coupled to the selectable-range component 135 to select the subset of tap data sources therefrom. In alternative embodiments, the dead range component of thebuffer 132 may include fewer than M storage elements or even zero storage elements, depending on the time required to receive data and transfer data into thebuffer 132. Also, the tapselect circuit 128 may be coupled to one or more storage elements within thedead range component 133 to enable the size of the dead range to be programmed according to the configuration of the transmitcircuit 118. Finally, as discussed below, thebuffer 132 may include one or more parallel registers in addition to (or instead of) the shift register formed bycomponents - Still referring to
FIG. 3 , numerous alternative types of equalization circuits may be used within thereceiver 116. For example, in one embodiment, thereceiver 116 includes an output driver 140 (illustrated in dashed outline inFIG. 3 to indicate its optional nature) to drive an equalizing signal onto the signal path 122 (and therefore to the input of the partial response receive circuit 123) coincidentally with the symbol time of an incoming signal. In another embodiment, the partial response receive circuit 123 includes a preamplifier having an equalizing subcircuit. - Multi-Modal Signal Distribution—Partial Response
-
FIG. 5 illustrates the bimodal distribution of a binary signal observed at a signal receiver when the primary source of dispersion-type ISI is the signal transmitted in the immediately preceding symbol time. That is, the symbol sampled at time TN−1 is the primary source of dispersion-type ISI in the symbol sampled at time TN; the symbol sampled at time TN is the primary source of dispersion-type ISI in the symbol sampled at time TN+1; and so forth. Referring to the signal levels at time TN, it can be seen that if the if the preceding symbol was a logic ‘1’, the partial response to the preceding symbol will raise the signal level at time TN to one of the circled levels ‘11’ or ‘01’ (the second bit of the ‘11’ and ‘01’ bit sequences corresponding to the state of the signal at time TN−1). If the preceding symbol was a logic ‘0’, the partial response to the preceding symbol will lower the signal level at time TN to one of the square-designated levels ‘10’ or ‘00’. In a single-ended signaling system, the incoming signal is sampled and compared with a reference voltage level at the midpoint between the steady state extremes (i.e., midway between the ‘11..1’ and ‘00..0’ signal levels). Accordingly, the worst case voltage margins (i.e., smallest voltage differences between the signal and reference voltage) occur when the signal transitions from a ‘1’ to a ‘0’ or vice-versa; the ‘10’ and ‘0’ signaling levels becoming indistinguishable when the partial response level (i.e., residual signal level from the preceding symbol transmission) is large. In a differential signaling system, the incoming signal and its complement are sampled, for example, by a differential amplifier which amplifies the difference between the complementary signal levels. As in the single-ended case, the worst case voltage margins occur when the differential signal transitions from a ‘1’ to a ‘0’ or vice-versa; the ‘10’ and ‘01’ signaling levels becoming indistinguishable when the partial response pushes the ‘10’ and ‘01’ levels to the common mode (i.e., the average of a differential signal pair). -
FIG. 6 illustrates the four partial response signal levels depicted inFIG. 5 relative to a common mode level, LCM. In the case of a differential signaling system, the partial response to the preceding symbol may be viewed as increasing or decreasing the differential amplitude (i.e., the amplitude difference between the signals that form the differential signal pair) relative to a nominal differential amplitude. Normalizing the positive and negative signal levels for the nominal differential amplitude to 1 and −1, respectively, the common mode level, LCM, becomes zero, and the four possible signal levels become 1+α, 1α, −1+α and −1−α, where a represents the magnitude of the partial response to the preceding symbol. Thus, when the preceding symbol, DN−1, is a ‘0’, the incoming symbol, DN, is represented by a signal level at either 1−α or −1−α, depending on whether DN is a ‘1’ or ‘0’. Similarly, when DN−1=1, the incoming symbol is represented by a signal level at either 1+α or −1+α according to the state of the current symbol. In the former case (i.e., when DN−1=0), the two complementary signal levels, −1−α and 1−α, have a common mode of −α, as shown inbox 151. In the latter case (i.e., when DN−1=1), the two complementary signal levels, 1+α and −1+α, have a common mode of +α, as shown inbox 153. - Partial Response Receiver
-
FIG. 7 illustrates a partial response receivecircuit 200 according to an embodiment of the invention that exploits the bi-modal characteristic of the signal levels depicted inFIGS. 5 and 6 . The partial response circuitry includes a comparecircuit 202 to sample the input data signal, DN, and adecision circuit 204 to generate an output data value (i.e., received data value) based on data samples generated by the comparecircuit 202. Rather than a single comparator that distinguishes between binary signaling levels based on whether the sampled signal is above or below a common mode threshold, the comparecircuit 202 includes twocomparators comparator 201 is set the +α level, and the threshold level of thecomparator 203 is set to the −α level. By this arrangement, if the preceding symbol was a ‘1’ (i.e., DN−1=1), thecomparator 201 will resolve the incoming signal as being a ‘1’ or ‘0’ by determining whether the signal level is above or below the partial response level, +α. Conversely, if DN−1=0, thecomparator 203 will resolve the incoming signal as being a ‘1’ or ‘0’ by determining whether the signal is above or below the partial response level, −α. Because both comparisons are performed for each incoming symbol, the selection of which comparator output represents the state of the symbol may be delayed until the state of the preceding symbol is resolved. In the partial response receivecircuit 200, for example, the sample values output by thecomparators decision circuit 204 where they are optionally stored instorage elements 208 and 209 (e.g., D flip-flops or other types of storage circuits) and provided to respective input ports of a select circuit 205 (e.g., a multiplexer). The sample value selected by theselect circuit 205 is stored in astorage circuit 207 in response to a sampling clock signal 210 (or other timing control signal) at which point the sample value becomes the DN−1 sample value. The DN−1 sample value stored withinstorage circuit 207 is fed back to the select input of theselect circuit 205 to select one of the two sample values generated by thecomparators select circuit 205, which of thecomparators storage elements storage circuit 207 becomes the DN−2 sample value and is used to select one of the DN−1 sample values output from thestorage elements - Reflecting on the operation of the partial response receive
circuit 200 ofFIG. 7 in reference to the signal distribution shown inFIG. 6 , it can be seen that the signaling margin (i.e., difference between signal levels representative of ‘1’ and ‘0’ states) within either of thecomparators circuit 200 ofFIG. 7 remains substantially constant at 2, even as a grows. In effect, by offsetting the threshold of thecomparators - Still referring to
FIG. 7 , athreshold generator 211 is used to generate the +a thresholds supplied to thecomparators comparators FIG. 6 . The threshold values ±α may also be digital values for controlling digital-to-analog converters (DACs) within thecomparators threshold generator 211 includes circuitry for a one-time or periodic determination of the ±α threshold levels, for example in one or more calibration operations. In other embodiments, the ±α threshold levels are adaptively generated based on incoming signal levels produced by selected data patterns. Embodiments of thethreshold generator 211 are discussed in further detail below. - Multi-Data-Rate Signaling
- In the partial response receive
circuit 200 ofFIG. 7 , a single symbol is captured during each cycle of thesampling clock signal 210. That is, a rising (or falling) edge of the sample clock is used to capture samples of the incoming data signal. In a multi-data rate system, multiple symbols are captured per cycle of thesampling clock signal 210. In such systems, clock generation circuitry is provided to generate multiple instances of thesampling clock signal 210 that are phase-distributed through a period (1/frequency) of the sampling clock signal.FIG. 8 , for example, depicts a double data rate signaling protocol in which two symbols are transmitted in succession during each period (i.e., cycle time) of a sampling clock signal. Accordingly, two instances of the sampling clock signal are provided: an even-phase sampling clock signal, SCLKE, to sample even-numbered symbols DN, DN+2, DN+4 . . . ; and an odd-phase sampling clock signal, SCLKO, to sample odd-numbered symbols DN−1, DN+1, DN+3 . . . . This technique may be extended to achieve virtually any data rate, including quad data rate (4 symbols per sampling clock cycle), octal data rate (8 symbols per sampling clock cycle), decade data rate (10 symbols per sampling clock cycle), and so forth. -
FIG. 9 illustrates a partial response receivecircuit 215 for use in a double data rate signaling system. The partial response receivecircuit 215 includes an odd-phase receivecircuit 216 clocked by an odd-phase sampling clock signal 210 O (SCLKO), and an even-phase receivecircuit 217 clocked by an even-phase sampling clock signal 210 E (SCLKE). The odd- and even-phase receivecircuits circuit 200 ofFIG. 7 , except that, due to the interleaved nature of the samples they generate, theselect circuit 225 of the odd-phase receivecircuit 216 is controlled by a latched instance of a sample selected by theselect circuit 239 in the even-phase receivecircuit 217 and, conversely, theselect circuit 239 of the even-phase receivecircuit 217 is controlled by a latched instance of a sample selected by theselect circuit 225 in the odd-phase receivecircuit 216. Samples DN +/DN − are generated bycomparators storage circuits 235 and 237, and then selected byselect circuit 239 to form the even-phase pipeline (EVEN PIPE) illustrated inFIG. 10 (the output of theselect circuit 239 optionally being buffered instorage circuit 243 in response to the even-phase sampling clock signal 210 E). Similarly, samples DN+1 +/DN+1 − are generated bycomparators storage circuits select circuit 225 form the odd-phase pipeline (ODD PIPE) illustrated inFIG. 10 (the output of theselect circuit 225 optionally being buffered instorage circuit 227 in response to the odd-phase sampling clock signal 210 O). Thus, when an odd phase sample DN−1 is selected byselect circuit 225, the DN−1 sample is latched withinlatch element 241 of the even-phase receive circuit (thereby making DN−1 available for a full cycle of the even-phase clock signal 210 E) and thereafter used to select the subsequent even-phase sample DN. The selected even phase sample DN is then latched withinlatch element 228 of the odd-phase receiver and thereafter used to select the subsequent odd-phase sample, DN+1. For higher data rates, the number of partial-cycle receive circuits (circuits FIGS. 8-10 to support multi-data rate signaling. - Threshold Level Generation
- In one embodiment of the invention, a technique referred to herein as embedded scoping is used to determine the ±α threshold levels applied within the comparators of the partial response receive circuit. Embedded scoping involves iteratively receiving a sequence of symbols in a receiver and comparing the received symbol sequence with a local generation of the sequence to confirm error-free reception. With each receive-and-confirm iteration, a threshold voltage used to distinguish between symbol values in the incoming signal is offset from a calibrated level by a progressively larger amount until a symbol in the sequence no longer matches the expected value. The threshold voltage offset at which the failure occurs is referred to herein as a pass/fail offset and represents a measure of the signal level at the sampling instant at which the failure occurred. Thus, by sweeping the threshold voltage through a range of threshold voltages until the pass/fail offsets for each symbol in the symbol sequence have been detected, a sample plot for the incoming signal may be developed. Further, by sweeping the receive clock signal through an incremental sequence of phase offsets, and determining the pass/fail offset at each phase offset, a complete trace of the incoming signal may be generated. Also, the granularity and start stop points of the phase offsets and/or threshold voltage steps may be controlled (e.g., by configuring a programmable circuit or register) to enable the waveform trace to be constrained to selected points of interest in the incoming signal (e.g., ±N° from an intended sampling instant, N representing a sweep angle).
-
FIG. 11 illustrates the use of embedded scoping to generate a time-basedtrace 290 of an incoming data signal 286. The range of threshold voltage offsets over which theincoming signal 286 is sampled is indicated by VT, and the range of phase offsets at which the signal is sampled is indicated by φ. Each sample point within the sweep is indicated by a respective dot within a grid of sample points 280. Note that the sweep may be obtained by stepping the voltage threshold through the range of VT values for each value of φ, or, alternatively, by stepping the clock phase through the range of φ values for each value of VT. - Still referring to
FIG. 11 ,reference numeral 288 indicates a pair of samples for which a pass/fail condition is detected. A corresponding pass/fail offset (PFO) is determined according to the difference between the calibrated VT level (VT(CAL)) and the average of the VT offsets between the pass and fail samples, and recorded as a measure of the incoming signal. That is, the pass/fail offset may be used to establish a data point within thetrace 290 as shown. After sweeping through all the sample points within the grid 280 (which sweep may be repeated numerous times to obtain an average and to discard statistical outliers), a measure of the incoming signal is obtained as illustrated graphically by thetrace 290. - Embedded scoping has a number of benefits over traditional signal measurement techniques. First, because the technique is non-invasive (i.e., no probe contact), the electrical characteristics of the system under test are unaltered, thereby yielding potentially more accurate results. Also, the trace is generated from the perspective of the receive circuit itself, meaning that any non-ideal characteristics of the receive circuit are accounted for in the resulting signal trace information. Finally, because all components needed for embedded scoping may be included within a finished signaling system, embedded scoping may be used to perform numerous run-time analyses in addition to partial response measurement including, without limitation, determining the latency and amplitude of reflections and other distortions within the signaling system.
-
FIG. 12 illustrates asignaling system 300 according to an embodiment of the invention. Thesignaling system 300 includes a transmitdevice 301 and receivedevice 309 that employ embedded scoping to determine partial response amplitudes. The transmitdevice 301 includes apattern generator 303,data selector 305, equalizingtransmitter 307 andapplication logic 302. Theapplication logic 302 performs the core function of the transmitting device (e.g., signal processing, instruction processing, routing control, or any other function) and provides transmit data (TX DATA) to a first input of thedata selector 305. During normal operation, theapplication logic 302 outputs a logic low scope signal 306 (SCOPE) to thedata selector 305 to select the transmit data to be passed to the equalizingtransmitter 307 for transmission to the receivedevice 309 via signal path 122 (which may include or be connected to numerous sources of discontinuity such as connectors, vias, stubs, etc.). During a scoping mode of operation, theapplication logic 302 drives thescope signal 306 high to enable a scoping mode of operation within the transmitdevice 301. In the scoping mode, thedata selector 305 selects a repeating single-symbol pulse sequence (e.g., a test signal such as: 00100 . . . 00100 . . . 00100 . . . ) generated by thepattern generator 303 to be transmitted to the receivedevice 309. The receivedevice 309 includes apartial response receiver 310 to receive the incoming data signal, apattern register 311 to store a local version of the single-symbol pulse sequence, amultiplexer 312 to enable the pattern register 311 to be switched between load and barrel-shifting modes, aXOR gate 313 to compare the received data sequence with the locally generated sequence, and application logic 315 (or other logic) to generate a threshold voltage adjust signal (THRESH ADJ) to step the threshold voltage used within the partial response receive circuit through their scoping ranges. In on embodiment, the thresholds applied to the multiple comparators of the partial response receive circuit are set to the same nominal starting value and stepped together for purposes of embedded scoping. In an alternative embodiment, only one comparator of the partial response receive circuit is used when scoping mode is enabled. The application logic may additionally generate a clock adjust signal (not shown) to step the sampling clock through a sequence of phase offsets within a cycle of the sampling clock signal. Theapplication logic 315 additionally builds a trace record (i.e., data indicative of the incoming data sequence) based on the output ofXOR gate 313. - When the receive
device 309 is in a scoping mode of operation, themultiplexer 312 is initially set to load the pattern register 311 with the output of thepartial response receiver 310. After a desired sequence of data (e.g., the single-symbol pulse sequence) is shifted into the pattern register 311, themultiplexer 312 is set to enable the barrel-shifting mode of thepattern register 311. That is, themultiplexer 312 selects the output of the pattern register 311 to be fed back to the input of the pattern register 311 so that the contents of the pattern register 311 are continuously rotated through the pattern register 311 (i.e., a barrel shifting operation). By this arrangement, the data sequence loaded into the pattern register 311 is repeatedly output, bit by bit, to a first input of theXOR gate 313. The data sequence received by thepartial response receiver 310 is input to a second input of theXOR gate 313 so that the received data sequence is compared, bit by bit, with the data sequence stored within thepattern register 311. By selecting the length of the repeatedly transmitted data sequence to match the storage size of the pattern register 311, the pattern register contents are repeatedly compared with a newly received version of the same data sequence (i.e., putatively the same data sequence). Any reception error will result in a mismatch between the received value and the corresponding value within the pattern register and therefore, when compared byXOR gate 313, will result in an error signal being output from theXOR gate 313 to theapplication logic 315. Theapplication logic 315 may then record the adjusted threshold voltage (and optionally the clock phase offset) at which the error occurred as a signal level within the waveform trace. -
FIG. 13 illustrates asample waveform trace 320 of a pulse response captured by an embedded scope within the signaling system ofFIG. 12 . As shown, the waveform starts and ends at a steady-state low level which corresponds to the −1−α level discussed in reference toFIGS. 5 and 6 . A pulse (i.e., D=1) is received at time T3, and the partial response of the pulse is received at time T4. Due to the preceding zero-valued symbol, the signal level sampled at time T3 corresponds to the 1−α level. Similarly, due to the preceding one-valued symbol, the signal level sampled at time T4 corresponds to the −1+α level. The difference between the −1+α level and the −1−αlevel may be determined by theapplication logic 315 ofFIG. 12 (or other circuitry) and used to determine ±α. That is, α=((−1+α)−(−1−α))/2. The normalized signal level, 1, may be used in certain clock recovery operations (discussed below) and may be determined from the pulse level and the steady-state low level (i.e., 1=((1−α)−(−1−α))/2). Once determined, the a level may be applied to the comparators of the partial response receive circuit to enable partial response operation. -
FIG. 14 illustrates apartial response receiver 325 that includes circuitry for adaptively generating the partial response threshold levels ±α. Thepartial response receiver 325 includes a partial response receivecircuit 200, alevel sampler 327, and anadaptive module 329. The partial response receivecircuit 200 operates generally as described above in reference toFIG. 7 to generate a pair of sample values based on comparisons (incomparators 201 and 203) of the incoming signal DN with offset thresholds ±α. The samples are stored instorage elements select circuit 205 selects one of the DN−1 + and DN−1 samples to be the selected DN−1 sample based on the state of the DN−2 sample stored instorage circuit 207. As discussed above, in a multi-data rate system, the DN−2 sample may be supplied by a counterpart partial response receive circuit clocked by a phase shifted version of thesampling clock signal 210. In either case, single- or multi-data rate, two or more time-adjacent sample values are supplied to (or buffered within) theadaptive module 329. In the embodiment ofFIG. 14 , sample values DN−2 and DN−1 are supplied to theadaptive module 329, though higher or lower latency samples may be provided in alternative embodiments. - The
level sampler 327 includes four comparators 331 1-331 4 for comparing the signal level of the incoming symbol, DN, with each of the four signal levels that correspond to the bimodal signal distribution ofFIG. 5 . That is,comparator 331 4 compares the incoming signal with a threshold level at 1+α and generates a corresponding error sample E11 according to whether the incoming signal is above or below the 1+α level. Similarly,comparators adaptive module 329. By this arrangement, the error samples arrive at theadaptive module 329 with the same latency as the DN−1 sample generated by the partial response receivecircuit 200. - The
adaptive module 329 responds to the data samples from the partial response receivecircuit 200 and the error samples from thelevel sampler 327 by selectively updating the threshold values supplied to thecomparators circuit 200 and comparators 331 1-331 4 within thelevel sampler 327. For example, when the data samples indicate a 11 state (i.e., D[N−1:N−2]=11), theadaptive module 329 increases or decreases the 1+α threshold level according to whether the incoming signal level is indicated by error sample E11 to be above or below the 1+α threshold level. The adaptive module similarly updates the 1−α, −1+α, and −1−α thresholds based on error samples E10, E01 and E00 when the data samples indicate the 10, 01 and 00 states, respectively. As discussed below, the ±α levels may be derived from the 1+α, 1−α, −1+α and −1−α threshold levels, or a subset thereof. -
FIG. 15 illustrates an embodiment of theadaptive module 329 ofFIG. 14 . The adaptive module includes a 2:4decoder 353, up/down counters 357 1-357 4, averagingcircuits 361 365, digital-to-analog converters (DACs) 359 1-3596, and, optionally, afilter circuit 351. The 2:4decoder 353 activates one of four enable signal lines 354 1-3544 (i.e., asserts an enable signal on the signal line) according to the state of the input data samples DN−1 and DN−2 (also expressed herein as D[N−1:N−2]). Each of the counters 357 has an up/down input (U/D) coupled to receive a respective one of the four error samples (i.e., E00, E01, E10 and E11), a count enable input (CEN) coupled to a respective one of theenable signal lines 354, and a strobe input coupled to receive thesample clock signal 210. By this arrangement, during each cycle of thesample clock signal 210, the counter 357 coupled to the activated enablesignal line 354 is incremented or decremented according to the state of the corresponding error sample. Thus, when D[N−2:N−1]=11, counter 357 4 is incremented if error sample E11 indicates that the incoming signal level is above the 1+α threshold level, and decremented if E11 indicates that the incoming signal level is below the 1+α threshold level. The count values maintained within counters 357 3, 357 2 and 357 1 are similarly incremented and decremented according to error samples E10, E01 and E00, respectively, when enabled by their respective enablesignal lines 354. In one embodiment, thefilter circuit 351 is used to filter the incoming error samples, for example, by requiring a predetermined number of same-state error samples to be received within a given time before the corresponding count value is adjusted. Other types of error sample filtering may be applied in alternative embodiments. Also, thefilter 351 may be omitted altogether. - The count values maintained within the counters 357 1-357 4 are output as control values to respective DACs 359 1-359 4 to generate the 1+α, 1−α, −1+α and −1−α levels. Thus, the
adaptive module 329 operates to selectively update the 1+α, 1−α, −1+α and −1−α threshold levels according to the state of the received data values D[N−1:N−2]. - The averaging
circuits circuit 365, for example, includes a summingcircuit 366 to sum the C1+α and C1+α control values from counters 357 4 and 357 2, respectively, and a divide-by-2 element 367 (which may be achieved without active circuitry by dropping the least significant bit of the sum) to generate a control value Cα that corresponds to the desired a threshold level (i.e., (C1+α+C−+α)/2=Cα). Averagingcircuit 361 similarly includes a summingcircuit 362 to sum the count values C−α and C −1−α from counters 357 3 and 3571, and a divide-by-2element 363 to generate control value C−α. In one embodiment, each of the control values generated by the counters 357 and the averagingcircuits circuit 200 andlevel sampler 327 ofFIG. 14 . In an alternative embodiment, each of the comparators within the partial response receivecircuit 200 andlevel sampler 327 include internal DACs and receive respective threshold values in the form of the control values themselves (i.e., Cα, C−α, C1+α, C1−α, C−1+α, C−1−α). Also, in a differential embodiment (and in certain single-ended embodiments), the C+α and C−1+α values may be complements of one another so that one of the averagingcircuits level sampler 327 ofFIG. 14 and two of the counters 357 within the adaptive module 329 (and two of the DACs 359, if used) may be omitted. -
FIG. 16 illustrates analternative circuit arrangement 375 that may be used in place of the averagingcircuits FIG. 15 . Instead of averaging the C+α and C−1+α count values to generate the C+α value, C+α is generated by halving the difference between the C1+α and the C−α control values (i.e., Cα=((C +α)−(C1−α))/2). Similarly, the C−α value is generated by halving the difference between the C−1−α and the C−1+α control values. Thus, the circuit ofFIG. 16 includes adifference circuit 376 to generate 2α by subtracting the C1−α control value from the C1+α control value, and a divide-by-2 element 377 (which may be a implemented by dropping the least significant bit of the difference) to generate Cα by halving the 2α value.Difference circuit 379 and divide-by-2element 380 are used in a similar manner to generate C−α from count values C−1+α and C−1−α in a corresponding manner. - Differential Comparator
-
FIG. 17 illustrates a comparator 400 that may be used within the receiver circuits and level sampling circuits ofFIGS. 7, 9 and 14. The comparator 400 includes apreamplifier 401 and asampling circuit 425. Thepreamplifier 401 includes a pair ofdifferential amplifiers second output nodes Transistors differential amplifier 402 have widths W1 and W2, respectively, with W1 being greater than W2.Transistors 408 and 407 withindifferential amplifier 403 also have respective widths W1 and W2. A differential input signal composed of signal components D and /D is coupled to each of thedifferential amplifiers transistors 404 and 408 and /D is coupled totransistors differential amplifiers transistors 404 and 408 will collectively sink more current thantransistors output node 418 to be pulled down (i.e., via the resistive element, R, coupled to the output node 418) more than the voltage onoutput node 419. - When the
preamplifier 401 is balanced (i.e., Cα substantially equal to /Cα), the voltages on thepreamplifier output nodes preamplifier 401, and therefore the comparator 400 as a whole, occurs at the common mode of D and /D. By contrast, when the preamplifier is imbalanced by increasing Cα relative to /Cα, equal values of D and /D result inoutput node 419 being pulled lower thanoutput node 418, due to the fact thattransistor 405 is wider than transistor 404 (and therefore has a greater gain), and that the compensating (balancing) effect ofdifferential amplifier 403 is diminished by the reduced control value /Cα. Thus, increasing Cα relative to /Cα increases the effective threshold of the preamplifier above the common mode. By increasing Cα to the point at which the threshold between ‘0’ and ‘1’ signal levels is set to α, a differential comparator having a threshold level at α is achieved. By reversing the connections of the Cα and /Cα values to the current DACs of a counterpart comparator (not shown), a differential comparator having a threshold level at −α is achieved. - The
sampling circuit 425 includes adifferential amplifier 426 formed bytransistors sense amplifier 427 formed by back-to-back coupledinverters storage circuit 436 formed by a set-reset flip-flop. Thedifferential amplifier 426 includes control inputs coupled to theoutput nodes preamplifier 401, andoutput nodes inverters transistor 430, switchably controlled by the sampling clock signal 210 (or other sample control signal), is coupled between thedifferential amplifier 426 and a ground reference (or other low voltage reference). Thesampling clock signal 210 is additionally coupled to control inputs of positively-doped MOS (PMOS)transistors 434 and 435 which are coupled between a supply voltage (e.g., VDD) and output nodes of theinverters sample clock signal 210 is low,transistor 430 is switched off, andtransistors 434 and 435 are switched on to pre-charge the output nodes of theinverters inverters storage circuit 436, so that the content of thestorage circuit 436 is maintained through the low half-cycle of thesample clock signal 210. When thesample clock signal 210 goes high, biasingtransistor 430 is switched on and draws current through the twotransistors differential amplifier 426 in proportion to the voltages developed on theoutput nodes preamplifier 401. Thus, if the voltage developed onnode 419 is higher than the voltage onnode 418, the current drawn by biasingtransistor 430 will flow primarily throughtransistor 423. Conversely, if the voltage developed onnode 418 is higher than the voltage on 419, the current drawn by biasing transistor will flow primarily throughtransistor 423.Transistors 434 and 435 are switched off in response to the high-goingsample clock signal 210, so that the pre-charged outputs of theinverters transistors transistor 430 will flow primarily throughtransistor 423. Consequently, the output node ofinverter 429 will be discharged more rapidly than the output node ofinverter 428, driving the output ofinverter 429 low and driving the output ofinverter 428 high (i.e., the PMOS transistor withininverter 428 is switched on and the NMOS transistor withininverter 428 is switched off). The low output ofinverter 429 is applied to the active-low set input of thestorage circuit 436, causing thestorage circuit 436 to store a logic ‘1’ sampled data value. By contrast, if the incoming signal level does not exceed the +α threshold level, the current drawn by biasingtransistor 430 will flow primarily throughtransistor 424, thereby drivinginverter 428 low (and drivinginverter 429 high) to store a logic ‘0’ sampled data value withinstorage circuit 436. -
FIG. 18 illustrates an embodiment of thecurrent DAC 411 ofFIG. 17 . Thecurrent DAC 411 includes control transistors 437 0-437 N−1 and biasing transistors 439 0-439 N−1 Each of the control transistors 437 0-437 N−1 is coupled in series (e.g., source to drain) with a corresponding one of the biasing transistors 439 0-439 N−1 to form a transistor pair that is coupled between a reference voltage (ground in this example) and an output node 438 (i.e., the node to be connected to the source terminals of the transistors which form the differential amplifier 402). Gate terminals of the control transistors 437 0-437 N−1 are coupled to receive respective component signals, Cα[0]−Cα[N−1], of a multi-bit control value, Cα (or, control value/Cα). Each of the control transistors 437 0-437 N−1 has a binary weighted gain such that a current of IREFx2i (where i represents the ith transistor in thepositions control transistor 437 i when the corresponding control signal component is high. Thus, if all the constituent bits of the control value Cα [N−1:0] are high, then IREF flows throughcontrol transistor 437 0, IREFx2 flows throughtransistor 437 1, IREFx4 flows throughcontrol transistor 437 2, and so forth to controltransistor 437 N−1 which conducts IREFx2N−1. Accordingly, control transistors 437 0-437 N−1 are designated x1, x2. . . , x2N−1 transistors, respectively. By this arrangement, the control value Cα [N−1:0] may be set to any of 2N values to select bias currents that range from 0 to IREFx2N−1 in increments of IREF. The biasing transistors 439 0-439 N−1 have gate terminals coupled to receive a bias voltage, VBIAS, that is adjusted as necessary (e.g., by a biasing circuit) to establish or maintain a desired IREF. - In one embodiment, the relative gains (i.e., transconductance values) of the various transistors used to implement the current DAC 411 (and therefore drive strengths of the sub-drivers) are established by adjusting the width-length ratio (i.e., W/L) of
individual control transistors 437 and/or biasingtransistors 439. For example, the width-length ratio of thex2 control transistor 437 1 is twice the width-length ratio of thex1 control transistor 437 0, the width-length ratio of thex4 control transistor 437 2 is twice the width-length ratio of thex2 control transistor 437 1, and so forth. The biasingtransistors 439 may have similar gain ratios relative to one another (e.g., x1, x2, x4, x2N−1 as shown inFIG. 18 ). Other techniques for adjusting the relative gains of thecontrol transistors 437 and biasingtransistors 439 may be used in alternative embodiments. Also, weightings other than binary weightings may be used. For example, in one embodiment, each of thecontrol transistors 437 has an equal gain to each of theother control transistors 437 such that the current drawn by thecurrent DAC 411 is proportional to the number of logic ‘1’ bits in the control value, Cα. -
FIG. 19 illustrates an alternative embodiment of adifferential comparator 450 that may be used to implement the comparators depicted inFIGS. 7, 9 and 14. Thecomparator 450 includes asampling circuit 452 and an offsetcontrol circuit 440. Thesampling circuit 452 is implemented in generally the same manner as thesampling circuit 425 ofFIG. 17 (and includesdifferential amplifier 426,sense amplifier 427, biasingtransistor 430, and storage circuit 436), except that the input signal lines carrying D and /D are coupled directly to the control terminals oftransistors control circuit 440 includes adifferential amplifier 446 having output nodes coupled tonodes sampling circuit 452. Control terminals of thetransistors differential amplifier 446 are biased by respective voltage DACs (e.g., implemented bycurrent DACs 443 and 445 coupled to respective resistive pull-upelements 451 and 453) controlled by Cα and /Cα, respectively. By this arrangement, when the sample clock signal goes high the current throughoutput node 433 of thesampling circuit 452 is a sum of the currents drawn bytransistor 423 of thesampling circuit 452 andtransistor 447 of the offsetcontrol circuit 440. Similarly, the current throughnode 431 of thesampling circuit 452 is a sum of the currents drawn bytransistor 424 of thesampling circuit 452 andtransistor 449 of the offsetcontrol circuit 440. As discussed above in reference toFIG. 17 , when the current throughnode 431 exceeds the current throughnode 433, a logic ‘1’ is stored withinstorage circuit 436 and, conversely, when the current throughnode 433 exceeds the current throughnode 431, a logic ‘0’ is stored withinstorage circuit 436. - When the DAC control values Cα and /Cα are substantially the same, the
comparator 450 is balanced and the effective threshold occurs at the common mode of the D and /D signal levels. That is, if D exceeds the common mode voltage, VCM=((D+/D) divided by 2), the current throughnode 433 exceeds the current throughnode 431, causing a logic ‘1’ to be captured as the sampled data value. As Cα is increased and /Cα decreased, the effective threshold of the differential amplifier is increased such that D must be higher than /D by an amount necessary to overcome the additional current drawn bytransistor 449 of the offset control circuit. Thus, by increasing Cα and decreasing /Cα, the effective threshold of the sampling circuit may be set to the partial response level, α. That is, a logic ‘1’ is output as the sampled data value if the difference between the D exceeds the common mode voltage, VCM by more than α, and a logic ‘0’ is output otherwise. A counterpart comparator having a −α threshold may be provided by switching the Cα and /Cα inputs to theDACs 443 and 445. - Threshold Level Generator with Single Level-Adapting Comparator
-
FIG. 20 illustrates apartial response receiver 500 according to another alternative embodiment. Thepartial response receiver 500 includes a partial response receivecircuit 200 that operates generally as described in reference toFIGS. 7 and 14 , alevel sampler 501, and anadaptive module 503. In contrast to thelevel sampler 327 ofFIG. 14 , thelevel sampler 501 includes asingle comparator 507 that generates an error sample, EDLEV, according to whether the incoming signal exceeds or is below a data level threshold generated by theadaptive module 503. In the embodiment ofFIG. 20 , the data level threshold is established by a multi-bit control value, CDLEV, generated by the adaptive module. In alternative embodiments, the data level threshold may be established by an analog voltage or current generated by theadaptive module 503. The error sample may be buffered in one ormore storage circuits 509 before being forwarded to theadaptive module 503, thereby aligning the latency of the error sample with data samples generated by the partial response receivecircuit 200. - The
adaptive module 503 receives the error sample from thelevel sampler 501 and data samples DN−1 and DN−2 from the partial response receivecircuit 200 and, in response, generates control values, Cα and /Cα, to establish the ±α levels within the partial response receivecircuit 200, and the control value, CDLEV, to establish the data level threshold within thelevel sampler 501. In one embodiment, theadaptive module 503 initially updates the CDLEV value upon detecting reception of the 1+α data pattern (i.e., D[N−1:N−2]=11) until thecomparator 507 indicates that the data level threshold matches the 1+α data level. Thereafter, theadaptive module 503 updates the CDLEV value in response to the 1−α data pattern (10) until the DLEV threshold matches the 1−α data level. The control value, Cα, may be generated, for example, by halving the difference between the two CDLEV values (i.e., C1+α and C1−α), and the /Cα control value may be generated by complementing the Cα value. -
FIG. 21 illustrates the operation of theadaptive module 503 ofFIG. 20 according one embodiment. Initially, atblock 521, the control values, Cα and CDLEV, and an internally maintained control value, C2α, are each set to a nominal zero value. In one embodiment, the nominal zero value corresponds to a DAC midpoint value. For example, in an 8-bit DAC, a midpoint value of 1000 0000b (the ‘b’ indicating binary notation) or 128 decimal may be used as the nominal zero value. The C−α value may be generated by subtracting the Cα value from the full-scale DAC value. Thus, in the eight-bit example, when C+α=128, C−α=(28−1)−128=127. It will be appreciated that this result may be obtained by complementing Cα (i.e., /Cα=C−α). - At
decision block 523, a history of increment and decrement operations applied to CDLEV value is evaluated to determine whether the threshold level that corresponds to the 1+α signal level has been reached (i.e., UPPER DLEV FOUND). In one embodiment, if, over the last N updates to the CDLEV value, the difference between the number of increment operations and the number of decrement operations is less than a predetermined value, the data level threshold is deemed to be dithering about the 1+α signal level and the upper data level threshold is therefore considered found. If the upper data level threshold has not been found, then the sample values generated by the partial response receive circuit (D[N−1:N−2]) are evaluated indecision block 525 to determine whether a signal level at the 1+α level has been received. If so, the error sample generated by the level sampler, EDLEV, is evaluated indecision block 527 to determine whether the incoming signal level is greater than or less than the threshold level established by the present value of CDLEV. If the error sample is a ‘1’, the incoming signal level is greater than the threshold level, and the CDLEV value is incremented at 529 to increase the data level threshold. If the error sample is a ‘0’, the signal level is less than the data level threshold and the CDLEV value is decremented at 531 to decrease the data level threshold. As discussed above in reference toFIG. 15 , some level of filtering may be applied before incrementing or decrementing the CDLEV value. After the CDLEV value has been incremented or decremented (i.e., inblock 529 or 531), the CDLEV increment/decrement history is evaluated again atdecision block 523 to determine whether the upper data level threshold has been found. - Returning to decision block 525, if D[N−1:N−2] is not equal to ‘11’, the error sample, EDLEV, is not evaluated and the operation at 525 is repeated for a subsequent set of data samples. Thus, in the level-adapting loop formed by blocks 523-531, the adaptive module selectively updates the CDLEV value, and therefore the data level threshold according to the state of the data samples generated by the partial response receive circuit (i.e., updates the CDLEV value in response to detection of the 1+α sample pattern).
- If, at
decision block 523, the upper data level is deemed to be found, the history of increment and decrement operations is cleared and a second level adapting loop is begun atdecision block 535. Atdecision block 535, the history of increment and decrement operations is evaluated to determine whether a data level threshold corresponding to the 1−α data level has been found (i.e., LOWER DLEV FOUND). In one embodiment, if, over the last N updates to the CDLEV value, the difference between the number of increment operations and the number of decrement operations is less than a predetermined value, the data level threshold is deemed to be dithering about the 1−α signal level and the lower data level threshold is therefore considered found. If the lower data level threshold has not been found, then the sample values generated by the partial response receive circuit, D[N−1:N−2], are evaluated in decision block 537 to determine whether a signal level at the 1−α level has been received. If not, decision block 537 is repeatedly entered for subsequent sample value pairs until a signal level at the 1−α level has been received. When data samples that correspond to the 1−α level are detected, the error sample generated by the level sampling circuit, EDLEV, is evaluated atdecision block 539 to determine whether the incoming signal level is above or below the data threshold level established by the present value of CDLEV. If the error sample is a ‘O’, as it will be initially, the signal level is below the data threshold level, and the CDLEV value is decremented at 543 to decrease the DLEV threshold level, and the C2α control value is incremented to track the difference between the upper and lower data level thresholds. If the error sample is determined to be a ‘1’ at decision block 537, then CDLEV is incremented and C2α decremented atblock 541. By this arrangement, when the data level threshold reaches the 1−α data level, the control value, C2α, will be representative of twice the +α threshold level. Accordingly, atblock 545, the Cα value is generated by dividing C2α by 2 (e.g., by right shifting or otherwise dropping the least significant bit of C2α). The C−α value may be generated by complementing the Cα value. Thereafter, the process is repeated starting atdecision block 523. Alternatively, an updated C2α value may be generated by counting the return increments from the lower data level threshold to the upper data level threshold, and another updated value of C2α generated on a subsequent return to the lower data level threshold, and so forth. The Cα value may be updated after each regeneration of the C2ααvalue. Also, rather than finding the 1+α and 1−α data levels, the 1+α and −1+α data levels may be determined, and the corresponding data level control values averaged to generate the Cα value. - Dual Mode Receiver
-
FIG. 22 illustrates an embodiment of adual mode receiver 550 that may be operated in either a multi-level signaling mode or a partial response mode. When a mode select signal 572 (MSEL) is in a first state (e.g., a logic low state), a two-bit per symbol, multi-level signaling mode is selected. In one embodiment, illustrated inFIG. 23 , the signal level of each incoming symbol falls into one of four voltage ranges distinguished by three threshold levels. The four voltage ranges are designated 10, 11, 01 and 00 inFIG. 23 according to the pair of data bits represented at each level. Because each symbol constitutes a pulse having one of four possible amplitudes, the incoming multi-level signal is referred to herein as a 4-PAM (Pulse Amplitude Modulation) signal. Different PAM levels (e.g., 8-PAM, 10-PAM, etc.) may be used in alternative embodiments. - In the multi-level signaling mode,
comparator 557 compares the incoming signal with a midlevel threshold (referred to herein as the zero threshold) to determine the state of the most significant bit (MSB) of the symbol. In the embodiment ofFIGS. 22 and 23 , the MSB is resolved to be a ‘1’ if the signal level exceeds the zero threshold, and a ‘O’ if the signal level does not exceed the zero threshold.Comparators FIG. 23 , if the incoming signal level exceeds the +α threshold level, bothcomparators comparators comparators comparators gate 561 is coupled to receive the sample values generated by thecomparators 553 and 555 (i.e., after the sample values are buffered instorage circuits 554 and 556), and outputs the LSB to a first port ofselect circuit 565. When the mode select signal selects the 4-PAM mode of the dual-mode receiver, the LSB is selected to be passed to nextstage storage circuits select circuit 579 to be provided to theadaptive module 581. Thus, in 4-PAM mode, theadaptive module 581 receives an LSB and MSB (the MSB bit being stored in succession instorage circuits comparators - It should be noted that the threshold levels and data signal levels described in reference to
FIG. 23 may be used in both differential and single-ended signaling systems. In the case of single-ended signaling systems, the voltage levels of the thresholds and data signals are expressed as an offset from a common, substantially fixed reference voltage, such as a ground reference. In differential signaling systems, the data signals and thresholds are each represented by differential signal pair, with the voltage level of the data signal or threshold being the voltage difference between the two differential signals (e.g., subtracting the voltage level of one signal from the other). - Still referring to the 4-PAM mode of the
dual mode receiver 550, thecomparator 551 generates an error sample EDLEV that is buffered withinstorage circuits adaptive module 581. In one embodiment, the adaptive module generates the 4-PAM mode threshold level control values C0, C+α and C−α (i.e., the control values supplied tocomparators FIG. 14 , the error sample generated by thecomparator 551 may be filtered to obtain thesteady state 11 signal level and thesteady state 00 signal level. - Still referring to
FIG. 22 , when the modeselect signal 572 is high, thedual mode receiver 550 is switched to the partial response mode. In the partial response mode, thecomparators 553 and 55 are used to compare the incoming data signal against the partial response threshold levels +α and −α, respectively. The samples values generated by thecomparators storage circuits circuit 563 which selects one of the samples according to the state of the previously received sample. That is, one of the DN−1 samples stored instorage circuits storage circuit 567 according to the DN−2 sample previously stored in thestorage circuit 567. The DN−2 sample is stored in thestorage circuit 578 to generate the DN−3 sample value. During a given symbol time, both the DN−2 and DN−3 samples are provided to theadaptive module 581 viaselect circuits adaptive module 581 receives the MSB/LSB pair for each incoming 4-PAM symbol, and in partial response mode, theadaptive module 581 receives the D[N−2:N−3] sample values that represent one of the four states of the bimodal signal illustrated inFIG. 4 . - Still referring to
FIG. 22 , in partial response mode, thecomparator 551 andadaptive module 581 operate to generate the +α and −α levels in the manner described in reference toFIGS. 20 and 21 . Alternatively, because theMSB comparator 557 is not otherwise used in the partial response mode, thecomparator 557 may be used to determine the level of the 1−α partial response state, thereby enabling both the 1+α and 1−α signal levels to be determined simultaneously. The ±α levels may then be generated based on the 1+α and the 1−α signal levels (i.e., Cα=((C1+α)−(C1−α))/2, and C−α=/Cα). In another alternative embodiment, the MSB comparator may be used to determine the −1+α signal level, thereby enabling ±α to be determined by averaging the 1+α and −1+α signal levels. The error signal generated by the MSB comparator, E10 (or E01) is illustrated by dashedline 574 to indicate its optional nature. - Reflecting on the
dual mode receiver 550 ofFIG. 22 , it can be seen that much of the circuitry provided for 4-PAM operation (e.g., the four comparators (551, 553, 555 and 557), storage circuits (552, 554, 556, 558, 567, 570, 571, 578 and 573) and adaptive module 581) is re-used in the 2-PAM partial response mode, thereby providing partial response operation with relatively little additional hardware overhead. The modeselect signal 572 may be provided from an external source or from a configuration control circuit within the integrated device that includes thedual mode receiver 550. In one embodiment the configuration control circuit is a configuration register that may be programmed by one or more other integrated circuits within a system (e.g., a host processor or similar control device) to establish the mode of thedual mode receiver 550. The configuration control circuit may also be a non-volatile control circuit such as a non-volatile memory, fusible circuit or similar circuit that may be programmed with a mode select value. In yet other embodiments, the configuration control circuit may dynamically change the state of the mode select signal in response to detecting selected system conditions (e.g., detection of threshold error rate when in one operating mode or the other). - Clock Recovery
-
FIG. 24 illustrates an embodiment of apartial response receiver 600 that performs a clock data recovery (CDR) function. That is, thepartial response receiver 600 recovers both data and clocking information from the incoming data signal, DN. Thepartial response receiver 600 includes a data receive andlevel sampling circuit 601,adaptive module 603,clock recovery circuit 605, edge-sampling comparator 607, and one ormore storage circuits 609. The data receive andlevel sampling circuit 601 operates as described above in reference toFIGS. 14 and 20 to generate one or more error samples, EDLEV, and data samples D[N−1:N−2]. The data receive andlevel sampling circuit 601 may also be operable in a multi-PAM mode as described in reference toFIG. 22 . Theadaptive module 603 generates one or more threshold control values that are supplied to the data receive andlevel sampling circuit 601, including one or more data level control values, CDLEV, and partial response control values, C+α and C−α. The control values are used to establish threshold values in the partial response compare circuits (i.e., the ±α comparators) and one or more level adapting comparators as discussed above. - The
clock recovery circuit 605 generates a sampling clock signal 210 (SCLK) and edge clock signal 610 (ECLK) in response to a transition sample, TN−1, generated by the edge-sampling comparator 607 and the data and error samples generated by the data receive and level sampling circuit 601 (i.e., EDLEV and D[N−1:N−2]). Thesampling clock signal 210 is used to time the operation of comparators and storage circuits within the data receive andlevel sampling circuit 601 and, at least in one embodiment, is phase aligned with midpoints in the incoming data eyes (i.e., midpoint of data valid intervals in the incoming data signal, DN). In an alternative embodiment, thesampling clock signal 210 may be offset from the midpoints in the incoming data eyes, for example, to accommodate asymmetric setup and hold time requirements in the comparators or other circuitry in the data receive andlevel sampling circuit 601. Note that while only a singlesampling clock signal 210 is shown, multiple sampling clocks may be generated by the clock recovery circuit to enable receipt of multi-data rate signals. For example, in a double data rate system, the clock recovery circuit may generate SCLK and /SCLK to enable capture of data and signal level samples in both odd and even phases of thesampling clock signal 210. - The
clock recovery circuit 605 adjusts the phase of theedge clock signal 610 to maintain phase alignment between theedge clock signal 610 and transition points between incoming data eyes (i.e., theedge clock signal 610 is edge aligned with data valid intervals in the incoming data signal). Theedge clock signal 610 is supplied to the edge-sampling comparator 607 where it is used to time the sampling of transitions in the incoming data signal, and to one ormore storage circuits 609 provided to latency-align the transition sample, TN−1, with the data sample, DN−1. In the case of a low-to-high data signal transition, a logic ‘1’ transition sample (i.e., TN−1=1) indicates that the edge clock transition occurred after the transition in the data signal and therefore that theedge clock signal 610 lags the data signal transition. Conversely, a logic ‘0’ transition sample indicates that the edge clock transition occurred prior to the low-to-high data signal transition and therefore that theedge clock signal 610 leads the data signal transition. The transition samples from edge-sampling comparator 607 and data samples from the data receive andlevel sampling circuit 601 are used within theclock recovery circuit 605 to adjust the phase of theedge clock signal 610 as necessary to maintain alignment between theedge clock signal 610 and transitions in the incoming data signal. In one embodiment, thesampling clock signal 210 is maintained at a substantially constant phase offset from theedge clock signal 610 such that phase alignment between theedge clock signal 610 and data signal transitions yields a desired phase alignment between thesampling clock signal 210 and midpoints in the incoming data eyes. -
FIG. 25 illustrates a number of possible data signal transitions when the incoming data signal has the bimodal distribution shown inFIG. 5 . That is, if the incoming data signal has one of the four bimodal signal levels corresponding to the partial response states 11, 10, 01, 00, then the signal may transition from either the 11 or 10 level to the 01 level (i.e., D[N−1:N−2]=11 or 10 and D[N:N−1]=01), and the signal may transition from either the 00 or 01 level to the 10 level. Note that signal transitions from the 10 level to the 11 level (illustrated by dashed line 631) and from the 01 level to the 00 level (illustrated by dashed line 632) are also possible. - Considering the transitions from 10-to-01 and from 01-to-10, it can be seen that each of these transitions crosses the midpoint threshold (i.e., zero threshold level) at a time, T1, midway between the centers of the
data eyes edge clock signal 610 is phase aligned to the transitions in the incoming data signal, the 10-to-01 and 01-to-10 data signal transitions cross the midpoint threshold coincidentally (i.e., in phase alignment) with the edge clock transition. Accordingly, the 10-to-01 and 01-to-10 transitions may be compared with the zero threshold level (designated ‘0’ inFIG. 25 ) to generate transition samples for adjusting the phase of the edge clock signal. Note that, because the signal swings in the transitions from 11-to-01 and 00-to-10 are not symmetric with respect to the zero threshold level, the 11-to-01 and 00-to-10 transitions do not cross the zero threshold level at the same time as the 10-to-01 and 01-to-10 transitions, but rather cross the zero threshold level at some time later (indicated by circle 636). Consequently, use of the 11-to-01 and 00-to-10 transitions to determine zero-crossing times (i.e., times at which the zero threshold level is crossed) may introduce phase error and/or bi-modal jitter in the recovered edge and sampling clock signals 610 and 210. Accordingly, in one embodiment of the invention, transitions in the incoming data signal are selected according to their zero-crossing characteristics, with the selected transitions being used to adjust the phase of the edge and sampling clock signals 610 and 210. -
FIG. 26 illustrates an embodiment of aclock recovery circuit 650 that adjusts the phase ofedge clock signal 610 andsampling clock signal 210 based on selected transitions detected in the incoming data signal. Theclock recovery circuit 650 includes a transition detectcircuit 651, early/late detector 661, early/late counter 663,majority detector 665,interpolator 667 andreference loop 669. In the embodiment ofFIG. 26 , the transition detectcircuit 651 asserts a transition detect signal 652 (TDET) upon detecting a 01-to-10 or a 10-to-01 transition in the incoming data signal. More specifically, incoming data samples DN−1 and DN−2 are compared in exclusive-OR gate 653 to determine whether a transition has occurred, and signals DN and DN−2 are compared in exclusive-NORgate 657 to determine whether the DN state matches the DN−2 state. The outputs of the exclusive OR and exclusive-NORgates gate 659 which generates the transition detectsignal 652. By this arrangement, the transition detectsignal 652 goes high if D[N:N−2]=010 or 101 (i.e., in response to a 01-to-10 transition or a 10-to-01 transition). The transition detectsignal 652 is applied to a count enable input (CEN) of the early/late counter 663 to enable an early/late count value to be incremented or decremented according to the output of the early/late detector 661. In one embodiment, the earlylate detector 661 is implemented by an exclusive OR gate, and therefore asserts an early signal 654 (e.g., a logic high signal) if the transition sample, TN, does not match data sample DN, and a late signal (e.g., logic low signal 654) if the TN matches DN. That is, if the transition sample is captured after the transition from DN−1 to DN, the transition sample will match the DN sample and thereby indicate that the edge clock signal transition is late relative to the data signal transition. Conversely, if the transition sample is captured before the transition from DN−1 to DN, the transition sample will not match the DN sample and thereby indicate that the edge clock signal transition is early relative to the data signal transition. - In one embodiment, the early/
late counter 663 is initialized to a zero level, and is then incremented in response to an early signal (i.e., from the early/late detector 661) and decremented in response to a late signal. By this arrangement, the sign bit (e.g., the MSB) of the early/late count maintained within the early/late counter 663 indicates whether more early signals than late signals, or more late than early signals have been received from the early/late detector (i.e., the count value will underflow to a negative value if more late signals than early signals are detected). Accordingly, after a predetermined number of transition detect assertions (or after a predetermined time), themajority detector 665 evaluates the sign of the early/late count and asserts an up/downsignal 668 to the interpolator accordingly. The early/late count value may then be reset to zero in order to count a subsequent set of early/late signal assertions. - In one embodiment, the
interpolator 667 maintains a digital control word that is incremented in response to a logic high up/downsignal 668 and decremented in response to a logic low up/downsignal 668. The most significant bits of the digital control word are used to select a pair of phase vectors from the set ofN phase vectors 672 generated by thereference loop 669, and the least significant bits of the digital control word are used to interpolate between the selected pair of phase vectors. As the control word is incremented, the interpolation is incrementally shifted from a leading one of the phase vectors to a lagging one of the phase vectors, thereby incrementally retarding the phase of the edge and sampling clock signals 610, 210. Conversely, as the control word is decremented, the interpolation is incrementally shifted toward the leading one of the selected phase vectors, thereby incrementally advancing the phase of the edge and sampling clock signals 610, 210. - In one embodiment, the
reference loop 669 is formed by a delay locked loop (DLL) that receives areference clock signal 670 and, in response, generates a plurality ofphase vectors 672 that are phase distributed within a cycle time of thereference clock signal 670. Alternatively, thereference loop 669 may be a phase locked loop (PLL) that multiplies the reference clock frequency to generate a plurality ofphase vectors 672 having a higher frequency than the reference clock frequency. In another alternative embodiment, thereference loop 669 may include an internal timing reference generator (e.g., a ring oscillator or other clock generating circuit) so that noreference clock signal 670 is required. Also, as discussed above, theinterpolator 667 may generate any number of sampling clock and edge clock signals. For example, in a double data rate system, the interpolator generates an edge clock signal and complement edge clock signal, and a sampling clock signal and complement sampling clock signal, the sampling clock signal being offset from the edge clock signal by a quarter cycle (90 degrees) of the edge clock signal. The quarter cycle offset may be achieved, for example, by a second interpolator that maintains a control word having a 90 degree digital offset from the control word used to generate the edge clock signal. Other techniques may be used to generate the edge clock-to-sample clock offset in alternative embodiments. In a quad data rate system, the interpolator generates four edge clock signals and four sampling clock signals, the combined set of eight clock signals being distributed in phase through a cycle time of the edge clock signal (i.e., 45 degree increments between successive clock edges). This approach may be extended to support virtually any data rate. - It should be noted that numerous changes may be made to the clock recovery circuit of
FIG. 26 without departing from the scope of the present invention. For example, in one alternative embodiment, the up/down signal is a two-bit signal in which the 00 state indicates a hold condition in which control word maintained within the interpolator is not adjusted. In such an embodiment, the majority detector may receive the entire early/late count from the early/late counter, and output the up/down signal in the 00 state if the count value indicates a balanced reception of early and late detections (e.g., the early/late count is zero). Alternatively, the majority detector may be omitted altogether and the sign of the early/late count value output directly to the interpolator to control the phase adjustment of the edge and sampling clock signals. - Returning to
FIG. 25 , it can be seen that the 11-to-01 transition occurs between the 1+α and −1+α signal levels, and therefore crosses the midpoint between the centers ofdata eyes 628 and 630 (i.e., time T1) at the +α threshold level. That is, the 11-to-01 transition crosses the +α threshold coincidentally with the desired transition time of theedge clock signal 610. Similarly, the 00-to-10 transition crosses the −α threshold coincidentally with the desired transition time of theedge clock signal 610. Moreover, the 11-to-01 and 00-to-10 transitions have a faster slew rate than the 10-to-01 and 01-to-10 transitions and therefore tend to yield more accurate timing edges. That is, the signal passes through the metastable region more quickly, thereby generating less timing jitter. Accordingly, in one embodiment, additional edge comparators are provided to generate transition samples at the +α and/or −α thresholds. Additional circuitry is also provided within theclock recovery circuit 650 ofFIG. 26 to detect the 11-to-01 and/or 00-to-10 transitions and, in response, to update the early/late counter according to the corresponding transition samples. By this arrangement, the overall number of data signal transitions that are used for clock recovery is increased, thereby relaxing the transition density required in the incoming signal for clock recovery purposes. - In partial response receiver embodiments in which the ±α levels are adapted (i.e., as opposed to being initially calibrated or determined empirically and one-time programmed), the ±α levels may initially be incorrect (e.g., started at 0) so that edge comparison based on the ±α levels may be undesirable. In such a system, a zero-threshold edge comparator (e.g., edge-
sampling comparator 607 ofFIG. 24 ) may be used to recover the edge and sampling clock signals initially, with switchover to ±α edge comparators occurring after the ±α levels are determined. Transition samples generated by zero-threshold edge comparator may then be ignored, or the samples may continue to be used. - In a system that recovers edge and sampling clock signals based on ±α threshold crossings, and that adapts ±α levels based on a difference between the 1+α and 1−α signal levels, a non-convergence of the ±α threshold levels may occur in certain situations. Referring to bimodal distribution shown in
FIG. 27 , it can be seen that as the sampling clock phase moves left (i.e., in the increasingly lagging direction), the difference betweensignal levels signal levels FIG. 25 , shifts the phase of the edge and sampling clock signals further in the lagging direction (i.e., further to the left), thereby further increasing the clock phase error. If the clock phase error becomes too large, accurate data and edge samples are no longer received by the partial response receiver so that the ±α threshold levels will not converge to the desired setpoints. - Still referring to
FIG. 27 , one solution to the non-convergence problem is to limit the data samples used to adapt the ±α threshold levels to those indicated bybolded lines FIG. 27 ), the difference between the +α and −α threshold levels will decrease, thereby producing a counter-effect to shift the edge and sampling clock signals in the leading direction. The level-adapting procedure described in reference toFIG. 21 may be modified to accommodate the above change by changing the evaluation indecision block 525 to D[N−1:N−3]=1 10 and changing the evaluation in decision block 537 to D[N−1:N−3]=101. Note that these sample patterns are illustrated inFIG. 27 as being patterns for bits D[N:N−2]. In general, the data samples relied upon for level adaptation may have any latency. -
FIG. 28 illustrates an embodiment of a dual-mode,partial response receiver 700 with clock data recovery. Thepartial response receiver 700 includes a dual-mode data receive/level sampling circuit 701,adaptive module 703,edge comparators clock recovery circuit 705. The dual-mode data receive/level sampling circuit 701 and theadaptive module 703 operate in generally the same manner as the circuitry described in reference toFIG. 22 . That is, when the mode select signal selects a 4-PAM mode of operation, the data receive and level sampling circuit samples incoming 4-PAM signals to generate an MSB and LSB per captured sample, and generates a data level error sample (EDLEV) that allows the adaptive module to determine the full scale difference between steady-state high and low signal levels. The +α, −α and zero threshold levels are then established by theadaptive module 703 at the Cα=⅔ full-scale, C−α=⅓ full-scale and C0=½ full-scale levels, respectively (other threshold levels may be used in alternative embodiments). When the mode select signal selects a 2-PAM mode of operation, the data receive andlevel sampling circuit 701 generates data samples by selecting between partial-response comparators (i.e., the comparators receiving the ±α threshold levels) and supplies the selected samples to theadaptive module 703 in pairs to enable determination of which of partial response state is reflected by the error sample, EDLEV, generated by data level comparator (or data level comparators). Theadaptive module 703 then adjusts the ±α threshold levels and the zero threshold level according to the incoming data signal levels determined by the data level comparator. - The
edge comparators data recovery circuit 705. The 4-PAM/partial response data samples captured by the data receive and level sampling circuit 701 (i.e., MSB/LSB in 4-PAM mode, D[N−2:N−3] in partial response mode) are also provided to the clockdata recovery circuit 705. The clock data recovery circuit selectively adjusts the phases of theedge clock signal 610 andsampling clock signal 210 based on the transition samples and data samples. -
FIG. 29 illustrates the possible signal transitions between successive 4-PAM symbols. As shown, from each of four possible signal levels, the incoming data signal may transition to any of three other signal levels. For example, a signal level above +a (corresponding to data state 10) may transition to a signal level between +α and 0 (data state 11); a signal level between 0 and −α (data state 01); and a signal level below −α (data state 00). Examining the different possible transitions, it can be seen that any transitions that cross all three threshold levels will cross the zero threshold level at the timing center, T1, between the desired data sampling instants. Similarly, transitions that cross a single threshold level will cross either the zero threshold level, the +α threshold level or the −α threshold level at T1. By contrast, any transitions that cross two threshold levels, but not three, do not cross the zero, +α or −α threshold levels at T1. Enumerating the different transitions that cross the zero, +α and −α threshold levels at T1 as transition types (1), (2) and (3), respectively, it can be seen that type (1) transitions are those in which the LSB remains unchanged at either ‘1’ or ‘0’, while the MSB changes state (i.e., (MSBN xor MSBN−1) & (LSBN xnor LSBN−1)); type (2) transitions are those in which the MSB remains high while the LSB changes state (i.e., MSBN & MSBN−1 & (LSBN xor LSBN−1)); and type (3) transitions are those in which the MSB remains low, while the LSB changes state (i.e., /MSBN & /MSBN−1 & (LSBN xor LSBN−1)). Thus, in one embodiment, when the mode select signal 712 selects a 4-PAM mode of operation within the partial response receiver 700 ofFIG. 28 , the clock recovery circuit adjusts the phase of the edge clock signal and sampling clock signal in response to the data samples generated by the data receive and level sampling circuit 701 and the transition samples generated by comparators 707, 708, 709 in accordance with the following table:TABLE 1 Center Time Crossing Early/Late DN-1(4P) DN(4P) At: TN(+α) TN(−α) TN(0) Count Adj. 00 01 −α X 0/1* X +1/−1 00 11 — X X X — 00 10 0 X X 0/1 +1/−1 01 00 −α X 0/1 X −1/+1 01 11 0 X X 0/1 +1/−1 01 10 — X X X — 11 00 — X X X — 11 01 0 X X 0/1 −1/+1 11 10 +α 0/1 X X +1/−1 10 00 0 X X 0/1 −1/+1 10 01 — X X X — 10 11 +α 0/1 X X −1/+1
(*‘0/1’ means ‘0’ or ‘1’ and corresponds to the +1 or −1 adjustment to the early/late count)
- Still referring to
FIG. 28 , when thepartial response receiver 700 is operated in the partial response mode, the transitions of interest are as shown inFIG. 30 . That is, a partial-response state transition from 10-to-01 or 10-to-01 crosses the zero threshold level at the desired edge clock transition time, T1; a state transition 11-to-01 crosses the +α threshold level at T1; and a state transition from 00-to-10 crosses the −α threshold level at T1. Enumerating the partial response mode transitions that cross the zero, +α and −α threshold levels at T1 as transition types (1), (2) and (3), respectively, it can be seen that type (1) transitions are those in which the current data sample, DN, does not match the immediately preceding data sample, DN−1, which, in turn, does not match the twice-removed data sample, DN−2 (i.e., (DN xor DN−1) & (DN xor DN−2)); type (2) transitions are those in which the current data sample, DN, is low, and the two immediately preceding data samples, DN−1 and DN−2, are high (i.e., /DN & DN−1 & DN−2); and type three (3) transitions are those in which the current data sample, DN, is high, and the two immediately preceding data samples, DN−1 and DN−2, are low (i.e., DN & /DN−1 & /DN−2). Thus, in one embodiment, when the modeselect signal 712 selects a partial response mode of operation within thepartial response receiver 700, theclock recovery circuit 705 adjusts the phase of the edge clock and sampling clock signals 610, 210 in response to the data and transition samples generated bycircuit 701 andcomparators TABLE 2 Center Early/ Time Late Crossing Count D[N-1:N-2] D[N:N-1] At: TN(+α) TN(−α) TN(0) Adj. 00 10 − α X 0/1 X +1/−1 01 00 — X X X — 01 10 0 X X 0/1 +1/−1 10 01 0 X X 0/1 −1/+1 10 11 — X X X — 11 01 +α 0/1 X X −1/+1 - Still referring to
FIG. 30 , if the +α and −α threshold levels are initially set to zero as indicated byreference numeral 741, it can be seen that the edge clock alignment will initially converge to a point that is phase delayed relative to the desired edge sampling point, T1. As the levels of ±α progress toward their ultimate setpoints at 742 and 743, however, the edge clock phase alignment will converge to the desired sampling point, T1. -
FIG. 31 illustrates a transition detectcircuit 725 and sampleselect circuit 740 that may be used within theclock recovery circuit 705 ofFIG. 28 . The transition detect circuit receives the data sample pair generated by the data receive andlevel sampling circuit 701 and generates a transition detect signal 732 (TDET) in accordance with the states of successive data sample pairs, the mode select signal 712 (MSEL) and a transition select signal 728 (TS[3:1]). The transition detect circuit additionally generates component transition detectsignals select circuit 740. The transition select circuit includes ANDgates gates 741 are input to ORgate 743 to generate anearly signal 734. The transition detectsignal 732 is itself generated by a logic OR combination of the component transition detectsignals 733 inOR gate 733. By this arrangement, if any of the component transition detectsignals 733 is asserted (e.g., to a logic high state), the transition detectsignal 732 is asserted, and the state of the corresponding transition sample TN is output as theearly signal 734. - The transition detect
circuit 725 includes a set of combinatorial logic circuits 727 1, 727 2 and 727 3 that generate type (1), type (2) and type (3) transition detect signals 730 for both 4-PAM and partial response data states in accordance with the type (1), type (2) and type (3) transition types described in reference toFIGS. 29 and 30 . In the embodiment ofFIG. 31 , combinatorial logic circuit 727 1 generates a 4-PAM type (1) transition detect signal 730 1A and a 2-PAM, partial response type (1) transition detect signal 730 1B as follows: -
- Signal 730 1A=(MSBN xor MSBN−1) & (LSBN xnor LSBN−1); and
- Signal 730 1B=(DN xor DN−1) & (DN−1 xor DN−2).
Similarly, combinatorial logic circuits 727 2 and 727 3 generate 4-PAM type (2) and type (3) transition detect signals 730 2A and 730 3A, and 2-PAM, partial response type (2) and type (3) transition detect signals, 730 2B and 730 3B, as follows: - Signal 730 2A=(MSBN & MSBN−1) & (LSBN xor LSBN−1);
- Signal 730 3A=(/MSBN & /MSBN−1) & (LSBN xor LSBN−1);
- Signal 730 2B=/DN & DN−1 & DN−2; and
- Signal 730 3B=DN & /DN−1 & /DN−2.
It should be noted that, in both partial-response mode and 4-PAM mode, two successive pairs of data samples are used within the transition detect circuit 725 (e.g., MSB/LSBN and MSB/LSBN−1 in 4-PAM mode; DN/DN−1 and DN−1/DN−2 in partial response mode) to generate the transition detect signals 730. One or more of the data sample pairs may be buffered within a storage circuit within transition detectcircuit 725 or elsewhere within the dual mode receiver and made available to the various combinatorial logic circuits 727. Also, the latency of the data samples referred to inFIG. 31 , though depicted as N, N−1 and N−2, may be any latency necessary to match the latency of the data samples output from the data receive andlevel sampling circuit 701 ofFIG. 28 .
- Select circuits 729 1, 729 2 and 729 3 each have a first input port coupled to receive a respective one of the 4-PAM type (1), type (2) and type (3) transitions detect signals 730 1A, 730 2A and 730 3A, respectively, and a second input port coupled to receive a respective one of the 2-PAM, partial response type (1), type (2) and type (3) transition detect signals 730 1B, 730 2B and 730 3B, respectively. The mode
select signal 712 is coupled to a select input of each of the select circuits 729 so that, when the modeselect signal 712 is low to select a 4-PAM mode of operation, the 4-PAM transition detect signals 730 1A, 730 2A and 730 3A are supplied to inputs of respective AND gates 731 1, 731 2 and 731 3, respectively. By contrast, when the modeselect signal 712 is high, the 2-PAM, partial response transition detect signals 730 1B, 730 2B and 730 3B are supplied to respective inputs of the AND gates 731. In the embodiment ofFIG. 31 , the transitionselect signal 728 includes three component signals, TS[1], TS[2] and TS[3], that are input to AND gates 731 1, 731 2 and 731 3, respectively, to gate the generation of the component transition detectsignals select signal 728 may be used selectively enable the different types of data signal transitions to be used for clock recovery purposes. For example, if TS[3:1]=001, then detection of type (1) transitions (i.e., crossing the zero-threshold at the desired time) is enabled, but detection of type (2) and type (3) transitions (i.e., crossing the +α thresholds at the desired time) is disabled. When TS[3:1]=111, then detection of all three types of transitions depicted inFIGS. 29 and 30 is enabled. Other settings of the transition select signal may be used to enable detection of the different transition types in other combinations. In one embodiment, the transition select signal is generated according to a transition select value stored in a configuration circuit that may be run-time programmed (e.g., by a host processor or other system control component). The transition select value may alternatively be programmed into a non-volatile storage circuit (e.g., at production time) or similar hardware configurable circuit (e.g., fuse-blowing to establish desired configuration). - The transition detect
signal 732 andearly signal 734 generated by the transition detectcircuit 725 and transitionselect circuit 740 may be used to control the phase of one or more sampling clock signals and one or more edge clock signals in the manner above in reference toFIG. 26 . For example, in one embodiment the transition detectsignal 732 is applied to the count enable input of an early/late counter, and theearly signal 734 is applied to the up/down input. The transition detectsignal 732 andearly signal 734 may alternatively be supplied to other logic circuitry that determines whether detected transitions occur early or late relative to an edge clock signal. - Numerous changes may be made to the transition detect
circuit 725 and transitionselect circuit 740 without departing from the spirit and scope of the present invention. For example, if the data signal transitions to be used for clock recovery is a subset of the three transition types shown inFIGS. 29 and 30 , one or more component signals of the transition select signal (and corresponding components of the combinatorial logic 727, select circuitry 729 and gating circuitry 731, 741) may be omitted. Moreover, if the transition types are fixed for a given application (e.g., all three types of the transitions depicted inFIGS. 29 and 30 , or any subset or single one thereof), the transition select signal may be omitted altogether along with the combinatorial logic and gating circuitry for any unused types of transitions. -
FIG. 32 illustrates the full set of transitions that may be detected when thepartial response receiver 700 ofFIG. 28 is operated in the partial response mode. In particular, transitions 750 and 751 (i.e., transitions from 10-to-11 and from 01-to-00), designated type (4) and type (5) transitions, respectively, can be seen to cross the nominal 1 and −1 threshold levels (referred to herein as unity threshold levels), respectively, at the desired edge sampling point, T1. Note that, in these transitions, the input signal slews substantially faster than in the 01-to-10 and 10-to-01 transitions and therefore is a potentially more accurate (and/or more jitter-free) source of clock phase information. Accordingly, in one embodiment, additional edge comparators are provided in the circuit ofFIG. 28 (not shown), and corresponding additional logic is added to the transition detect and select circuits (725, 740) ofFIG. 31 to enable clock recovery based on type (4) and/or type (5) transitions. Alternatively, in one embodiment, the zero-threshold comparator 709 ofFIG. 28 is re-allocated to a unity threshold comparator function after the ±α threshold levels are established (e.g., converge to thepoints FIG. 30 ).FIG. 33 illustrates an embodiment of a thresholdselect circuit 760 that is used to select between control values C0 and C1 for the zero and unity threshold levels, respectively. Initially a threshold select signal 762 (LSEL) is supplied in a first state to multiplexer 761 (or other select circuit) to select the C0 control value to be provided to edgecomparator 709, thereby enabling the 10-to-01 and 01-to-10 transitions to be used for clock recovery purposes as the ±α levels are adapted. After the ±α levels have reached convergence points (e.g., begin to dither), the thresholdselect signal 762 is switched to an alternate state to select the C1 control value to be used for generation of edge samples. The C1 control value may be generated by theadaptive module 703 ofFIG. 28 using the techniques discussed above in reference toFIG. 22 . The C0 and/or C1 control values may be buffered inregisters FIG. 33 (or other storage circuits), or provided directly to themultiplexer 761 from the adaptive module. - Referring again to the
partial response receiver 700 ofFIG. 28 , it should be noted that the receiver may alternatively be a single-mode 4-PAM circuit having the clock recovery function described above in reference toFIGS. 28, 29 and 31 (i.e., omitting the combinatorial circuitry and mode select circuitry used to enable the partial response mode). That is, the 4-PAM circuit may include data receive circuitry for capturing a sequence of 2-bit data samples (or more bits per data sample in the case of M-PAM, M>4), and clock recovery circuitry that captures transition samples at one or more of the 0, +α and −α threshold levels, and that selectively uses the transition samples to recover a sampling clock signal and edge clock signal according to the state of successive data samples. Conversely, the circuitry necessary to enable the 4-PAM mode of operation may be omitted to provide a partial-response receiver with clock recovery circuitry that captures transition samples at one or more of the 0, +α and −α threshold levels, and that selectively uses the transition samples to recover a sampling clock signal and edge clock signal according to the state of successive data samples. - In another alternative embodiment, the
partial response receiver 700 ofFIG. 28 may include a third, non-partial-response operating mode in which binary signal reception and clock recovery are performed without regard to partial response. That is, the +α and −α comparators within the data sampling circuit and edge sampling circuit may be disabled, and the zero-threshold comparators within the data and edge sampling circuits being used to sample data and edges in the incoming signal. Alternatively, in the non-partial-response mode, the ±α threshold levels may be set to zero such that all the comparators within the data and edge sampling circuits perform a zero-threshold comparison. In yet other embodiments, thepartial response receiver 700 ofFIG. 28 may be operable in either a 4-PAM or binary mode, with partial response signal detection being separately enabled in either mode. That is, thepartial response receiver 700 may be operated in either a binary non-partial response mode; a binary partial response mode; a 4-PAM non-partial response mode; or a 4-PAM partial response mode. Moreover, the number of least-latent data samples included in the partial response may be extended to any number. More generally, the receivecircuit 700 may be operated in PAM modes ranging from M-PAM to (M−X)-PAM (where M is any integer and X is any integer less than M−1), and may be operated with or without regard to partial response in each PAM mode. Circuitry to support extended-bit partial response operation, and 4-PAM partial response operation is discussed below in greater detail. - Clock Recovery with Reduced Input Hardware
- As discussed above, if a subset of the available data signal transitions are to be used for clock recovery within the
partial response receiver 700 ofFIG. 28 , circuitry otherwise provided to recover phase error information from the unused transitions may be omitted, including one or more ofedge comparators data recovery circuit 705. As each of theedge comparators - Referring to the partial-response data-state transitions shown in
FIG. 32 , it can be seen that the zero-threshold comparator 709 ofFIG. 28 has particularly high utility in terms of transitions detected per hardware footprint (or gate count) as the type (1) transitions detected bycomparator 709 include both rising-edge and falling-edge transitions. By contrast, the α-threshold comparators comparators a-threshold comparators threshold comparator 709. Further, because all low-going (i.e., 1-to-0) data-state transitions (i.e., changes in the state of the conveyed data value) will occur through either a type (1) transition (010) or a type (2) transition (110), all low-going transitions may be detected by a combination of the zero-threshold detector 709 and the +α comparator 707. Thus, because low-going transitions constitute half of all data-state transitions in a binary signaling system, even without the −α comparator 708, at least 50% of all data-state transitions will be detected and may be used for timing updates. Similarly, because all high-going transitions may be detected by a combination of the zero-threshold detector 709 and the −α comparator 708, at least 50% of all data-state transitions may be detected and used for timing updates even without the +acomparator 707. Note that more than 50% of the data-state transitions will be detected in a system lacking −α comparator 708 if at least some of the high-going transitions are type (1) transitions and, likewise, that more than 50% of the data-state transitions will be detected in a system lacking +α comparator 707 if at least some of the low-going transitions are type (1) transitions. -
FIG. 34 illustrates an embodiment of a dual-modepartial response receiver 767 that operates in generally the same manner as thepartial response receiver 700 ofFIG. 28 , except that the acomparator 708 is omitted, and the clockdata recovery circuit 770 has been modified relative tocounterpart 705 ofFIG. 28 by omitting circuitry for processing the −α transitions. Thepartial response receiver 767 includes a dual-mode data receive/level sampling circuit 701 andadaptive module 703 that operate in generally the same manner as like-numbered circuits described in reference toFIG. 28 . That is, when the mode select signal 712 (MSEL) selects a 4-PAM mode of operation, the data receive andlevel sampling circuit 701 samples incoming 4-PAM signals in response to a sampling clock signal 210 (SCLK) to generate an MSB and LSB per captured sample, and generates a data level error sample (EDLEV) that allows the adaptive module to determine the full scale difference between steady-state high and low signal levels. The +α, −α and zero threshold levels are then established by theadaptive module 703 at the Cα=⅔ full-scale, C−α=⅓ full-scale and C0=½ full-scale levels, respectively (other threshold levels may be used in alternative embodiments). When the modeselect signal 712 selects a 2-PAM mode of operation, the data receive andlevel sampling circuit 701 generates data samples in response to thesampling clock signal 210 by selecting between partial-response comparators (i.e., the comparators receiving the ±α threshold levels) and supplies the selected samples to theadaptive module 703 in pairs to enable determination of which of partial response state is reflected by the error sample, EDLEV, generated by data level comparator (or data level comparators). Theadaptive module 703 then adjusts the ±α threshold levels and the zero threshold level according to the incoming data signal levels determined by the data level comparator. - Turning to the clock recovery function, the
edge comparators data recovery circuit 770. As in the embodiment ofFIG. 28 , the 4-PAM/partial response data samples captured by the data receive and level sampling circuit 701 (i.e., MSB/LSB in 4-PAM mode, D[N−2:N−3] in partial response mode) are also provided to the clockdata recovery circuit 770. The clockdata recovery circuit 770 selectively adjusts the phases of theedge clock signal 610 andsampling clock signal 210 based on the transition samples and data samples generally as described in reference toFIGS. 28, 29 and 30, except that type (3) transitions (i.e., transitions that cross the −α threshold at timing center T1 as shown inFIGS. 29 and 30 ) are not detected and thus not used to generate timing updates. -
FIG. 35 illustrates an embodiment of the clockdata recovery circuit 770 ofFIG. 34 in greater detail. As shown, the clockdata recovery circuit 770 includes aphase detector 771, accumulator 775 (ACCUM), interpolator 779 (INTERP) and reference loop 669 (REF LOOP) that operate generally as described in reference toFIGS. 26 and 28 to generate asampling clock signal 210 andedge clock signal 610. More specifically, thephase detector 771 includes a transition detect circuit 772 (TD) to detect selected data-state transitions (i.e., type (1) transitions and type (2) transitions) and assert transition detectsignal 732 in response, and a sample select circuit 773 (SS) to generate early signal 734 according to the states of transition samples that correspond to the detected data-state transitions. Theearly signal 734 is a phase error signal that indicates whether the edge clock signal transitioned early or late relative to a transition in the incoming data signal and therefore whether the sampling clock signal is early or late relative to a desired sampling time. The transition detectsignal 732 andearly signal 734 are supplied to count-enable and up/down inputs, respectively, ofcounter logic 774 which, in one embodiment, operates in generally the same manner as the early/late counter 663 andmajority detector 665 ofFIG. 26 to generate a phase error count (i.e., count of early/late indications) and, from the phase error count, a signed two-bit update signal 776 in which a magnitude bit (e.g., least significant bit) indicates whether a phase control value 778 (PCntl) maintained withinaccumulator 775 is to be adjusted and a sign bit that indicates whether the adjustment, if any, is to be an increment or decrement. The following table illustrates an exemplary encoding of the update signal 776:TABLE 3 Update Signal Update Value X0 0: No Change 01 +1: Increase Phase Control Value 11 −1: Decrease Phase Control Value
In one embodiment, theaccumulator 775 is implemented by a counter that receives the least significant bit of theupdate signal 776 at a count-enable input, and the most significant bit at an up/down input. By this operation, the phase control value 778 (i.e., count value) within the accumulator is adjusted up or down or held steady according to theupdate signal 776. Thephase control value 778 is supplied to theinterpolator 779 which, in response, interpolates between a selected pair of phase vectors 672 (i.e., provided byreference loop 669 in response to a reference clock signal 670) to generatesampling clock signal 210 andedge clock signal 610. Note that theaccumulator 775 andinterpolator 779 function in generally the manner described above in reference tointerpolator 667 ofFIG. 26 . That is,accumulator 775 corresponds to logic withininterpolator 667 for maintaining and adjusting a digital control word (i.e., shown asphase control value 778 inFIG. 35 ), andinterpolator 779 corresponds the phase vector selection and interpolation logic within theinterpolator 667. - Still referring to
FIG. 34 , it should be noted that the +α comparator 707 and corresponding circuitry within clockdata recovery circuit 705 may be omitted instead of the -acomparator 708 and corresponding circuitry. In such an embodiment, type (1) and type (3) transitions are detected instead of type (1) and type (2) transitions. Also, while thepartial response receiver 767 is described above in reference toFIG. 34 and below in reference to more detailed embodiments of component circuits of thereceiver 767 as having support for both 4-PAM and partial-response operating modes, circuitry for supporting one or the other mode may be omitted in an alternative embodiment, thus establishing a dedicated partial-response receiver or dedicated 4-PAM receiver. Also, the partial response receiver may additionally or alternatively support a binary signaling (2-PAM) mode of operation in which a single decision threshold is used to distinguish between logic ‘1’ and logic ‘0’ data, and in which the partial-response circuitry (and/or 4-PAM circuitry, if present) is bypassed or disabled. -
FIG. 36 illustrates embodiments of the transition detectcircuit 772 and sampleselect circuit 773 ofFIG. 35 in greater detail. As shown, the transition detectcircuit 772 includes combinatorial logic circuit 727 1, to generate type (1) 4-PAM and partial-response transition detect signals 730 1A and 730 1B, and combinatorial logic circuit 727 2 to generate type (2) 4-PAM and partial-response transition detect signals 730 2A and 730 2B, but, due to the above-described omission of the −α comparator, does not include a combinatorial logic circuit to generate type (3) transition detect signals. As in the embodiment ofFIG. 31 , the data samples supplied to the combinatorial logic circuits 727 1 and 727 2 are depicted as having latency N, N−1 and N−2 (the N−2 sample may be obtained through an additional buffering stage, not shown), but may have any latency necessary to match the latency of the data samples output from the data receive andlevel sampling circuit 701 ofFIG. 34 . - Select circuits 729 1 and 729 2 are coupled to combinatorial logic circuits 727 1 and 727 2, respectively, and operate as described in reference to
FIG. 31 to pass, as transition detectsignals signals OR gate 736 to produce output transition detectsignal 732, and are also supplied to ANDgates select logic 773 to gate the zero-threshold transition sample, TN(0) and +α-threshold transition sample, TN(+α). By this arrangement, if a type (1) transition is detected, transition detectsignal 733 1 is asserted to enable ANDgate 741 1 to output the zero-threshold transition sample, and if a type (2) transition is detected, transition detectsignal 733 2 is asserted to enable ANDgate 741 2 to output the +α-threshold transition sample. The outputs of ANDgates gate 744 which outputs an early/late signal 734 to accompany the transition detectsignal 732. - As discussed above, the reduced phase error correction rate that results from omission of the −α comparator or +α comparator and corresponding clock recovery logic is generally tolerable in mesochronous systems, so long as the phase error correction rate is sufficient to compensate for phase drift between the sampling clock signal and desired sampling instant. In high-speed signaling systems in which phase drift occurs gradually (e.g., due to changes in temperature or supply voltage), even a worst-case 50% phase error correction rate (i.e., 50% of the total available data-state transitions are used to generate timing updates) is sufficient to maintain phase lock. By contrast, in a plesiochronous system, the reduction in phase error correction rate translates directly to a reduced frequency lock range. That is, the phase error correction rate establishes a ceiling for the frequency deviation that may be compensated by the clock
data recovery circuit 770 so that omission of circuitry for detecting some data-state transitions generally reduces the frequency lock range. In plesiochronous signaling systems having a specified frequency deviation tolerance that falls within the compensation ceiling of reduced-hardware-set clock data recovery circuit 770 (i.e., worst-case 50% reduction of data-state transitions used for timing updates does not lower the compensation ceiling below the specified tolerance), thepartial response receiver 767 ofFIG. 34 (or above-described variants thereof) may be applied without change. By contrast, if the reduced phase error correction rate of clockdata recovery circuit 770 lowers the compensation ceiling below the specified frequency deviation tolerance, the clockdata recovery circuit 770 may, at least in a worst case, be unable to update the sampling clock phase quickly enough to track the phase drift caused by the frequency deviation. In one embodiment, this shortcoming is addressed by modifying the clockdata recovery circuit 770 to include both phase and frequency error compensation circuitry. -
FIG. 37 illustrates an embodiment of a second-order clockdata recovery circuit 780 that includes dual compensation paths to correct both phase and frequency errors. As shown, the clockdata recovery circuit 780 includes aphase detector 771 that operates generally as described in reference toFIGS. 35 and 36 to generate anupdate signal 776 that indicates whether to advance, leave unchanged or retard (−1, 0, +1) the phase of a sampling clock signal. Theupdate signal 776 is supplied to a phase-error compensation path formed by feed-forward gain circuit 781 to generate a phase-error compensation signal 782, and is also supplied to a frequency-error compensation path formed by an integration gain circuit 783 and a frequency-error accumulator 785 that cooperate to generate a frequency-error compensation signal 786 (i.e., a frequency difference value that indicates an estimation or measure of a difference in frequency between the reference clock signal (e.g., signal 670 ofFIG. 35 ) and a signal used to time transmission of the incoming data signal, DN). In one embodiment, one or both of the feed-forward gain and integration gain applied by the feed-forward gain circuit 781 and integration gain circuit 783, respectively, are established by configuration register settings (e.g., established through run-time or production-time programming of volatile or non-volatile storage elements), with the integration gain generally being substantially smaller than the feed-forward gain. For example, in one embodiment, the feed-forward gain circuit 781 is a digital multiplier that scales theupdate signal 776 by a power-of-two scaling factor that ranges from 20 to 27 (i.e., 1 to 128, though a larger or smaller range of scaling factors may be used in alternative embodiments) and outputs a signed eight-bit value as the phase-error compensation signal 782. For example, in the x4 scaling factor example shown inFIG. 37 , +1 (0000 0001b, where ‘b’ denotes binary notation) is scaled to +4 (0000 0100b), and −1 (1111 1111b) is scaled to −4 (1111 1100b). - In one embodiment, the integration gain circuit 783 is implemented by a digital multiplier that scales the
update signal 776 by a fixed-point power-of-two scaling factor that ranges from 2−6 to 21 (i.e., 1/64 to 2, though a larger or smaller range of scaling factors may be used) and outputs a signed eight-bit fixed-point frequencyerror update signal 784. Thus, in the x⅛ scaling factor example shown inFIG. 37 , +1 (0000 0001b) is scaled to +⅛ (00.001000b) and −1 (1111 1111b) is scaled to −⅛ (11.111000b). - In one embodiment, the frequency-
error accumulator 785 is triggered by a transition detect signal (e.g., signal 732 ofFIG. 36 or a signal derived therefrom) to increment, decrement or leave unchanged, according to frequency-error update signal 784, an accumulated value that constitutes the frequency-error compensation signal 786. By this arrangement, if a frequency deviation exists between a reference clock signal used to generate the phase vectors that are interpolated to produce the sampling clock signal and edge clock signal, and a transmit clock used to time transmission of the incoming data signal, the resulting sequence of predominantly same-sign update signals 776 (i.e., predominantly positive or predominantly negative according to the lead/lag relationship between the two clock signals) will accumulate withinphase error accumulator 785 until such time as the resulting frequency-error compensation signal 786 reaches a value sufficient to compensate for the frequency deviation, as discussed below - Still referring to
FIG. 37 , the frequency-error compensation signal 786 and phase-error compensation signal are summed in summingcircuit 787 to generate acomposite compensation signal 788 that is provided, in turn, toaccumulator 789 to update thephase control value 778. In one embodiment, the summingcircuit 787 performs a fixed-point summing operation to generate a fixed-point sum having sufficient precision to include the integer field ofsignal 782 and the fractional field ofsignal 784, then truncates the fractional field (e.g., by not outputting some number of the least significant bits of the sum) to generate a final N-bitcomposite compensation signal 788. In one embodiment, for example thecomposite compensation signal 788 is an eight-bit value, though a higher or lower resolution value may be generated in alternative embodiments. - During operation within a plesiochronous system, accumulated phase errors that result from a frequency deviation between the clock signal used to time data signal transmission and the reference clock signal (or frequency multiple thereof) used to generate phase vectors that are mixed to generate the edge and sample clock signals will result in accumulation of a countervailing frequency error compensation value within
accumulator 785, while transient phase errors are compensated by the relatively high-gain phase error compensation path. As an example, if the feed-forward gain and integration gain are programmed (or hardwired) to effect a x4 scaling factor (−4, 0, +4) and x⅛ scaling factor (−⅛, 0, +⅛), respectively, as shown inFIG. 37 , and the reference clock frequency (or multiple thereof) is higher than the transmit clock frequency by a frequency error, δ, then thephase detector 771 will generate a sequence of update signals 776 (i.e., +1) predominantly indicating that the phase of the edge clock signal (and therefore the sampling clock signal) leads the desired sampling instant and thus that thephase control value 778 should be adjusted to delay the phase of the sampling clock signal and edge clock signal (note that thephase control value 778 may be provided, as shown inFIG. 35 , to aninterpolator 779 that responds by selecting a pair ofphase vectors 672 from a reference loop 669). The x⅛ scale factor applied by the integration gain circuit 783 will result in relatively gradual accumulation of a frequency-error compensation value 786 until the frequency error compensation value rises to a point that corresponds to the frequency error. At that point, the frequency error compensation component of the updates to the phase control value should substantially match the phase updates needed to track the steady-state frequency error, with the higher-gain phase error compensation component (i.e., 782) of thecomposite compensation signal 788 being applied to compensate for more transient phase errors. As discussed above, other gain settings and/or ranges of gain settings may be used within the feed-forward gain circuit 781 and integration gain circuit 783 in different applications or embodiments, and higher or lower resolution values may be used to convey the phase-error compensation signal 782, frequency-error compensation signal 784, andcomposite compensation signal 788. -
FIG. 38 illustrates the increased lock range achieved through addition of the frequency-error compensation circuitry within the second-order clockdata recovery circuit 780 ofFIG. 37 . That is, without the frequency-error compensation circuitry, frequency error correction is limited by the maximum phase error correction rate (i.e., product of rate at whichupdate signal 776 is generated and scaling factor applied by gain circuit 781) to a first-order frequency-locking range 790 (i.e., from +FreqA/2 to −FreqA/2). By contrast, the addition of the frequency-error compensation circuitry generally will enable a wider, second-order frequency locking range 792 (i.e., from +FreqB/2 to −FreqB/2). As shown, an increased frequency locking range may be present regardless of the percentage of the data-state transitions that are used as timing updates so that, even in a signal receiver having hardware to detect type (1), type (2) and type (3) data-state transitions (e.g., as inFIG. 28 ), or even non-data-state transitions as in the ‘1’-crossing and ‘−1’-crossing transitions described in reference toFIG. 32 , the second-order clockdata recovery circuit 770 ofFIG. 37 may be applied to increase the range of frequencies over which phase lock may be maintained. Note that, in a system having a substantially steady-state frequency difference between the reference clock (or frequency multiple thereof) and the clock signal used to time data signal transmission, the frequency-error compensation circuitry may enable phase locking up to range 792 even when the percentage of edges that become timing updates is relatively low, so long as at least a threshold level of updates is received. - Extending the Partial Response Compensation to include Additional Data History
- Thus far, partial response receivers have been described in terms of a bimodal distribution based on the current symbol, DN, and the preceding symbol, DN−1. In alternative embodiments, partial responses to any number of preceding symbols may be accounted for in the generation of data samples.
FIG. 39 , for example, illustrates adistribution 795 of data-plus-partial-response signal levels in a system in which the two most recently received symbols are the primary source of residual channel response (i.e., the channel memory includes a partial response, α, to the immediately preceding symbol, DN−1, and a partial response, β, to the twice-removed preceding symbol, DN−2). For purposes of simplicity, the signal level constellation shown inFIG. 39 assumes a substantially equal distribution of the eight partial response signal levels: 1+α+β, 1+α−β, 1−α+β, 1−α−β, −1+α+β, −1+α−β, −1−α+β, and −1−α−β. Other signal distributions may result depending upon the channel characteristics. As shown, the constellation may be viewed as defining four signal ranges 797 1-797 4, each range being centered about one of the four possible partial response levels, α+β, α−β, −α+β, and −α−β. -
FIG. 40 illustrates apartial response receiver 800 that operates in accordance with the partial response states shown inFIG. 39 . Four comparators 801 1, 801 2, 801 3 and 801 4 are provided to compare the signal level of an incoming symbol, DN, against the four partial response threshold levels α+β, α−β, −+β and −α−β, respectively. The outputs of each of the comparators 801 are stored in a first stage of storage circuits 802 1-802 4 (e.g., in response to a sampling clock signal, not shown), with the sample values that correspond to the +α threshold levels (i.e., DN−1(α+β) and DN−1(α−β)) being supplied to a firstselect circuit 810 and the sample values that correspond to the −α threshold levels (i.e., DN−1(−α+β) and DN−1(−α−β)) being supplied to a second select circuit 812. Each of the first and secondselect circuits 810 and 812 selects between its respective pair of input samples according to the state of a previously resolved sample value, DN−3, stored instorage circuit 820. More specifically, if the resolved sample value, DN−3, is a ‘1’, then β, the partial response to DN−3, is a positive value and theselect circuits 810 and 812 select the sample values DN−1(α+β) and DN−1(−α+β), respectively, that correspond to the positive P state. If the DN−3 sample is a logic ‘0’ value, then β is a negative value and theselect circuits 810 and 812 select the sample values DN−1(α−β) and DN−1(−α−β) that correspond to the negative β state. The DN−1 sample values selected by theselect circuits 810 and 812 correspond to the +α and −α partial response states, respectively, and are stored in storage circuits 814 and 816 to provide DN−2 sample values DN−2(α) and DN−2(−αa). The DN−2(α) and DN−2(−α) samples are output from the storage circuits 814 and 816 to respective inputs ofselect circuit 818. The state of the DN−3 sample value indicates the sign of the partial response contribution in the DN−2 signal. That is, if DN−3=1, α is positive, and if DN−3=0, α is negative. Accordingly, the DN−3 sample value is supplied to a select input ofselect circuit 818 to select either DN−2(+α) or DN−2(−α). Thus, thepartial response receiver 800 ofFIG. 40 simultaneously compares the incoming data signal against four different partial response thresholds, then selects one of the four sample values to be the output sample value (DN−3) based on the previously resolved state of the α and β partial response components. Partial response components from more than two previously received symbols may be accommodated in a similar manner by increasing the number of comparators to match the number of partial response levels to be resolved, and then selecting the desired partial response sample on the basis of the partial response components indicated by a previously resolved sample value. -
FIG. 41 illustrates apartial response receiver 840 according to another embodiment of the invention. Thepartial response receiver 840 includes a partial response receivecircuit 800,level sampler 841 andadaptive module 850. The partial response receivecircuit 800 operates generally as described in reference toFIG. 40 to generate sample value DN−3, which is supplied to theadaptive module 850. Thelevel sampler 841 operates in generally the same manner as the level sampling circuit ofFIG. 14 , except that eight comparators 842 1-842 8 are provided to error samples for each of the eight possible partial response levels depicted inFIG. 39 (i.e., E000, E001, . . . , E110, E111). The level sampler additionally includesstorage circuits 844 to latency-align the error samples generated by comparators 842 with the data sample D[N−3] generated by the partial response receivecircuit 800. Theadaptive module 850 operates similarly to the adaptive module described in reference toFIGS. 14-16 , except that control values for each of the eight partial response threshold levels applied within comparators 842 are updated in response to reception of a corresponding one of the eight possible data patterns for sample values D[N−3 N−5] (note that data samples DN−4 and DN−5 may be generated by buffering data samples received from the partial response receivecircuit 800 within the adaptive module 850). That is, when D[N−3:N−5]=111, control value C1+α+β is incremented or decremented according to the state of the error sample, E111, generated by comparator 842 8; when D[N−3:N−5]=110, C1+α−β is incremented or decremented according to the state of error sample E110, and so forth to error sample E000 which is used to update C−1−α−β when D[N−3:N−5]=000. - In one embodiment, each of the four threshold control values supplied to the partial response receive circuit 800 (i.e., Cα+β, Cα−β, C−α+β and C−α−β) are generated by averaging respective pairs of the control values output to the
level sampler 841. That is: -
- Cα+β=(C1+α+β+C−1+α+β)/2;
- Cα−β=(C1+α−β+C−1+α−β)/2;
- C−α+β=(C1−α+β+C−1−α+β)/2; and
- C−α−β=(C1−α−β+C−1−α−β)/2
- Alternatively, the threshold control values supplied to the partial response receive
circuit 800 may be generated by halving the difference between respective pairs of the control values output to the level sampler 841 (e.g., Cα+β=(C1+α+β−C1−−β)/2). - Partial Response, Multi-PAM Receiver
- The partial response operation described above in the context of binary signaling may be extended to multi-PAM receivers.
FIG. 42 , for example, illustrates a constellation of possible signal levels in a 4-PAM signaling system. More specifically, assuming that a given data symbol has one of the four levels +3, +1, −1 or −3 centered about a nominal zero value, and that the primary partial response is due to the immediately preceding symbol, then sixteen partial response states become possible. That is, a symbol nominally transmitted at level +3 may have any of thestates 3+3α, 3+α, 3−α, or 3−3α when observed at the receiver, depending on whether the signal level for the preceding symbol was +3, +1, −1 or −3. Similarly, a symbol nominally transmitted at levels +1, −1 or −3 may have any of the four states that correspond to the additive or subtractive effect of the preceding symbol level. As shown inFIG. 42 , by grouping the possible partial response states according to the signal level of the preceding symbol, it can be seen that if the preceding symbol was a +3, the subsequently transmitted symbol will have a signal level that is offset by 3α and therefore that ranges from −3+3α to +3+3α. Similarly, if the preceding symbol was a +1, the subsequently transmitted symbol will have a signal level that is offset by 1α, and so forth for preceding symbols at −1 (offset =−1α) and −3 (offset =−3α). Accordingly, by providing four 4-PAM receive circuits each having thresholds offset by respective one of the 3α, +α, −α and −3α partial response levels, a partial response mode of operation may be enabled within a 4-PAM receiver. -
FIG. 43 illustrates a 4-PAMpartial response receiver 875 according to an embodiment of the invention. Thereceiver 875 includes four 4-PAM receive circuits 877 1-877 4 (i.e., each capable of resolving the signal level of an incoming symbol into one of four possible two-bit combinations) each having a threshold level that is offset according to one of the four partial response levels (3α, α, −α, or −3α). In the case of receive circuit 877 4, for example, the 3α offset (corresponding to a prior symbol level of 10) is applied to each of the internal levels generated to resolve the 4-PAM signal. That is, instead of comparing the incoming signal with levels of −2, 0, and 2, the incoming signal is compared with −2+3α, 3α and 2+3a (i.e., the threshold values between the 3+3α, 1+3α, −1+3α, −3+3α constellation depicted inFIG. 42 ). Similarly, 4-PAM receive circuit 877 3 compares the incoming signal with thresholds offset by α (i.e., −2+α, α and 2+α), comparator 877 2 compares the incoming signal with thresholds offset by −α (i.e., −2−α, −α, and 2−α) and comparator 877 1 compares the incoming signal with thresholds offset by −3α (i.e., −2−3α, −3α and 2−3α). By this arrangement, the incoming signal is resolved into four 2-bit sample values according to each of the four possible partial responses to the preceding symbol. The preceding symbol, MSB/LSB[N−1], having been selected according to the state of MSB/LSB[N−2], is stored instorage element 881 and applied to the select input ofselect circuit 879 to select the one of the four sample values generated in accordance with the incoming signal level. While the partial response operation has been described in terms of a 4-PAM receiver that enables partial response selection based on a single preceding symbol, the circuits and operation described may be extended to other PAM levels (e.g., 8-PAM, 10-PAM, etc.) and/or to include the partial response to additional preceding bits. -
FIG. 44 illustrates aninput circuit 885 that includes multiple partial response receivers 887 1-887 M according to an embodiment of the invention. Each of the partial response receivers 887 1-887 M is coupled to a respective one of signal lines 883 1-883 M to receive a corresponding one of data signals D1-DM. In one embodiment, each of the data signals D1-DM is a serial stream of data values (e.g., data eyes) that is sampled within the corresponding partial response receiver 887 to generate a corresponding one of sample values, S1-SM. The sampled values S1-SM are delayed relative to the corresponding data values by one or more symbol times, i, according to the latency introduced by the partial response receiver 887. Thus, during the symbol time in which data value DM[N] is valid at the input to partial response receiver 887 M, the partial response receiver outputs sample value SM[N−i]. Partial response receivers 887 1-887 M−1 similarly output respective sample values S1[N−i]-SM−1[N−i] during the symbol times in which data values D1[N]-DM−1[N] are valid. - In one embodiment, each of the signal lines 893 1-893 M forms a unidirectional or bidirectional point-to-point signaling link between a first IC device that includes
input circuit 885 and a second IC device. In the case of a bi-directional link, the first IC device may additionally include transmit circuitry coupled to the signal lines 893, and the second IC device may include a counterpart input/output circuitry having an input circuit similar toinput circuit 885. The first and second IC devices may be in separate IC packages coupled to a common substrate (e.g., circuit board) or coupled to different substrates (e.g., coupled to respective daughterboards with signal paths 893 1-893 M formed in part by signal traces on the daughterboards and on a backplane, or the first IC device coupled to a daughterboard and the second IC device coupled to a motherboard). Alternatively, the first and second IC devices may be included within the same IC package (e.g., a multi-chip module, chip-stack package, paper-thin package or combination of integrated circuit dice within a package). In another embodiment, each of the signal lines 893 1-893 M forms a unidirectional or bidirectional multi-drop signaling link coupled to three or more IC devices, with the IC devices or any subset thereof being disposed on the same or different substrates, and within the same or different IC packages. - In either the point-to-point or multi-drop embodiments, the signal lines 893 1-893 M may constitute a
parallel signaling path 894 for transmission of multi-bit data values. For example, each of the sample values S1-SM for a given symbol time (i.e., corresponding to data values D1-DM recovered from path 894) may represent a unified digital value (in which SM is a most significant bit (MSB) and sample S1 is a least significant bit (LSB), M being any integer value greater than one. Also, subsets of bits within the sample values S1-SM may constitute respective unified digital values (e.g., S1-SX being a first value ordered from LSB to MSB, SX+1-SY being a second data value ordered from LSB to MSB, and so forth to SZ+1 to SM which constitute a last data value ordered from LSB to MSB). Further, any number of successively received samples (i.e., corresponding to a packetized transmission of values) may form a unified digital value. For example, S1[N−i]-SM[N−i], S1[N−i−1]-SM[N−i−1], . . . , S1[N−i−Q]-SM[N−i−Q] may form a unified digital value having a total of Q×M bits (Q being any integer value greater than one) in which one bit is an LSB and one bit is an MSB. Alternatively, a set of successively received samples may form multiple unified digitized values, as when bits of a first digitized value are generated in successive symbol times by partial response receivers 887 1-887 X, bits of a second digitized value are generated in successive symbol times by partial response receivers 887 X+1-887 Y, and so forth. - In the embodiment of
FIG. 44 , each partial response receiver 887 includes a partial response receivecircuit 888,level sampler 889,adaptive module 890,edge sampler 891 and clockdata recovery circuit 892. The partial response receivecircuit 888 may be a multi-mode receive circuit as described above (i.e., capable of being switched between a multi-level signaling mode and a partial-response mode), or may be dedicated to partial-response operation. Also, the partial response receive circuit may operate on incoming binary or multi-level signals (e.g., 2-PAM, 4-PAM, 8-PAM, 10-PAM, etc.) having any data rate (e.g., single data rate, double data rate, quad data rate, octal data rate, decade data rate, etc.). Thus, the partial response receivecircuit 888 may be implemented by any of the partial response receive circuit embodiments described herein. Similarly, thelevel sampler 889 andadaptive module 890 may be implemented by any of the level sampler and adaptive module embodiments described herein. For example, though depicted as outputting a single error sample, EDLEV, thelevel sampler 889 may output multiple error samples to theadaptive module 890, and theadaptive module 890 may output any number of control values to thelevel sampler 889, partial response receivecircuit 888 and edge sampler 891 (e.g., as shown inFIGS. 14, 28 and 36) in addition to or instead of CDLEV, Cα, /Cα and C0. Also, though depicted inFIG. 44 as recovering a sample clock signal (SCLK) and edge clock signal (ECLK), theedge sampler 891 and clockdata recovery circuit 892 may recover any number of clock signals as described above in reference toFIGS. 24 and 26 (e.g., for use in multi-data rate embodiments). Further, theedge sampler 891 and clockdata recovery circuit 892 may recover phase information (i.e., for adjusting the phase of the recovered clock signals) from any or all transitions of the incoming data signal 893 as described above. Theedge sampler 891 and clockdata recovery circuit 892 may be omitted from the partial response receiver 887 in an embodiment in which clock signals, strobe signals or other timing signals are provided by another source, such as an external or internal clock generator, or separate clock recovery circuit. -
FIG. 45 illustrates aninput circuit 895 according to an alternative embodiment of the invention. Theinput circuit 895 is similar to theinput circuit 885 ofFIG. 44 (and may be implemented in all the alternative embodiments described in reference toFIG. 44 ), except that the circuitry used to generate partial response thresholds (or representative control values) and sampling clock signals is shared among multiple partial response receive circuits 888 1-888 M. That is, asingle level sampler 889 and correspondingadaptive module 890 are used to generate control values Cα, /Cα and C0 (and additional or different threshold control values in multi-level signaling embodiments and embodiments that do not include clock recovery circuitry) that are supplied to each of the partial response receive circuits 888 1-888 M, and asingle edge sampler 891 and corresponding clockdata recovery circuit 892 are used to generate the sampling clock signal (SCLK) that is supplied to each of the partial response receive circuits 888 1-888 M. Multiple sampling clock signals may be generated and shared among the partial response receive circuits 888 1-888 M in multi-data rate embodiments. By sharing the circuitry for generating control thresholds and/or the circuitry for generating sampling clock signals, the amount of circuitry within theinput circuit 895 is substantially reduced relative to inputcircuit 885, reducing production and operational cost of the host integrated circuit device (i.e., due to reduced die area consumption, layout complexity, test and verification time, power consumption, etc.). Note that, in an embodiment in which the sampling clock signal is provided by circuitry other than clock data recovery circuitry (e.g., external clock source, internal clock generated), theedge sampler 891 and clockdata recovery circuit 892 may be omitted. Alternatively, programmable selection of the clock source may be used to select either the recovered sampling clock (i.e., recovered by operation of theedge sampler 891 and clock data recovery circuit 892) or another clock source to provide a sampling clock signal to the partial response receive circuits 888 1-888 M. As in the embodiment ofFIG. 44 , the signal lines 893 1-893 M may be used to deliver distinct serial transmissions, or transmission of related groups of bits (e.g., the M bits received during a given symbol time representing one or more multi-bit digital values) as, for example, in the case of a parallel bus or any other signaling system in which the threshold control values and/or timing control signals are expected to be substantially similar (e.g., substantially same thresholds and/or clock phases) across multiple signaling paths. Also, while asingle level sampler 889 and correspondingadaptive module 890 are depicted inFIG. 45 as generating threshold control values Cα, /Cα and C0 for each of the partial response receive circuits 888 1-888 M, in an alternative embodiment, multiple level sampler/adaptive module pairs may be used to generate threshold control values for respective subsets of the partial response receive circuits 888 1-888 M. Respective edge sampler/clock data recovery circuit pairs may similarly be used to generate sampling clock signals for corresponding subsets of partial response receive circuits 888 1-888 M. - Still referring to
FIG. 45 , the partial response receive circuits 888 1-888 M may be implemented by any of the embodiments described herein including, without limitation, the embodiments described as described in reference toFIGS. 17-19 . Also, in embodiments in which a preamplifier (e.g.,preamplifier 401 ofFIG. 17 ) or offset control circuit (e.g., offsetcontrol circuit 440 ofFIG. 19 ) is used to adjust the effective threshold of a differential comparator above or below a common mode, such preamplifier or offset control circuit may be shared among multiple partial response receivecircuits 888, thereby reducing the circuitry within the partial response receive circuits 888 1-888 M to that of a sampling circuit (e.g.,sampler 425 ofFIG. 17 or sampler 452 oFIG. 19 ). Respective preamplifiers (or offset control circuits) may also be shared among subsets of the partial response receive circuits 888 1-888 M. - Transmit-Side Equalization in System with Partial Response Receiver
-
FIG. 46 illustrates asignaling system 950 having a transmitdevice 951 and receivedevice 953 coupled to one another via asignaling path 122. The transmitdevice 951 includes an equalizing transmitcircuit 957 and tapcontrol logic 955, and the receivedevice 953 includes a partial response receive circuit (which may, for example, be a multi-mode circuit or any other of the partial response receive circuits disclosed herein),level sampler 973 andadaptive module 975. Both the transmitdevice 951 and receivedevice 953 may include numerous other circuits not shown inFIG. 46 (e.g., application logic, additional transmit circuits and/or receive circuits, etc.). The equalizing transmitcircuit 957 includes a number of output drivers 961 0-961 N−1 to drive a symbol onto signalingpath 122 in response to a transmit timing signal (not shown) and in accordance with a set of weighting values W0-WN−1 and the state of data values D0-DN−1. Each of the data values D0-D−(N−1) is stored within a shift register 959 (or similar storage circuit) and includes a number of constituent bits in accordance to the number of bits encoded into each symbol transmission on thesignaling path 102. For example, in a 4-PAM system, each of the data values, D0-D(N−1), includes two constituent bits. More generally, in a M-PAM system, each of the data values includes log2(M) constituent bits. After each symbol transmission, the contents of theshift register 959 are shifted forward so that a new data value is shifted into position D0, and the data value at position D−(N−1) is overwritten by the data value previously at position D−(N−2). - The weighting values W0-WN−1 are generated by the
tap control logic 955 and are used to establish the signal drive strength of each of the output drivers 961. In one embodiment, the output driver 961 0 drives the symbol to be transmitted during a given symbol time in accordance with weighting value W0, and the output drivers 961 1-961 N−1 constitute a set of post-tap drivers for equalizing the output signal according to the post-tap data values stored within positions D−1−D−(N−1) of theshift register 959 and the weighting values W1-WN−1. Though not shown inFIG. 46 , pre-tap output drivers may also be provided to equalize the output signal according to pre-tap data values (and pre-tap weighting values), and yet other output drivers may be provided to cancel cross-talk from neighboring signal lines. Also, one or more of the output drivers 961 may be dynamically or statically allocated between pre-tap equalization, post-tap equalization and cross-talk cancellation functions, for example, through configuration register settings or externally received configuration control signals. - The partial response receive
circuit 971 includes R compare circuits to generate respective partial response values according to the number of expected partial response signal levels. For example, in a system in which the least-latent symbol (i.e., the most recently received symbol, N−1−i, relative to incoming symbol N−i) is the only expected contributor to the partial response, two compare circuits are provided to generate partial response values according to the two possible states of least-latent symbol (i.e., R=2). In a system in which the K most recently received symbols are expected to contribute to the partial response, 2K compare circuits are provided to generate respective data samples based on comparisons with the K partial response threshold levels (CPR) generated by theadaptive module 975. - In one embodiment, the
tap control logic 955 of transmitdevice 951 generates the weighting values W0-WN−1 in accordance with the number of symbols desired to contribute to the partial response observed at the receivedevice 953. Referring toFIG. 47 , for example, in a system in which the partial response is to be limited to the least latent symbol, D−1 (i.e., K=i), thetap control logic 955 generates weighting values W0-WN−1 to equalize the dispersion-type ISI produced by symbol transmissions after D−1 and prior to D0. That is, referring to the raw pulse response shown inFIG. 47 , the partial response of thesignaling path 122 to symbols D+1, and D−2 to D−(N−1) is equalized by appropriate settings of the weighting values applied to a pre-tap output driver (not shown inFIG. 46 ) and post-tap output drivers 961 2-961 N−1. By this arrangement, the equalized signal observed by the receive device 953 (i.e., equalized for partial response as depicted inFIG. 47 ) includes a contribution from the symbol to be received, D0, and a partial response to the immediately preceding symbol, D−1, with the partial response to all other transmissions being attenuated (e.g., to a negligible or substantially reduced level). In alternative embodiments, thetap control logic 955 may enable partial response to one or more additional symbols to remain in the signal observed by the receivedevice 953 depending on the desired number of partial response contributors. Also, in a multi-mode circuit in which a partial response receive circuit may optionally be operated in a non-partial response mode, thetap control logic 955 may generate weighting values W0-WN−1 as necessary to cancel (or reduce) the partial response to post-tap and pre-tap data values. - Still referring to
FIG. 46 , thelevel sampler 973 within the receivedevice 953 operates generally as described above (e.g., in reference to the various embodiments described in reference toFIGS. 14-15 and 20-21) to compare the incoming signal with a data level threshold and generate error samples (EDLEV) that are used to adjust the data level threshold(s), CDLEV, and the partial response thresholds, CPR. As discussed above, the data level threshold and/or the partial response thresholds, CPR, may be digital values that are used to establish the desired threshold levels within compare circuits of the partial response receivecircuit 971 and thelevel sampler 973, or any other types of control values (e.g., analog voltage and/or current levels that are themselves the threshold levels). - As discussed above in reference to
FIG. 15 , the adaptive module may include filtering circuitry to filter the error samples generated by thelevel sampler 973 such that the threshold levels generated by the adaptive module are updated based on multiple error samples, rather than on a sample-by-sample basis. For example, in one embodiment, the adaptive module includes a finite impulse response (FIR) filter to update the threshold levels based on a succession of error samples applied to the filter. Alternatively, the adaptive module may include an infinite impulse response filter (IIR) or any other type of filter for filtering the error samples. - In one embodiment, the data level error samples, EDLEV, generated by the
level sampler 973 are returned to the transmitdevice 951 via a back channel 968 (e.g., out-of-band signaling, passage via an intermediary device such as thecontroller 141 ofFIG. 3 , or other communication path that does not consume otherwise usable bandwidth on the signaling path 122). The error samples are received within thetap control logic 955 and used to adjust the tap weights, W0-WN−1, as necessary to reduce ISI (or other sources of distortion) resulting from transmission of symbols other than symbols desired to contribute to the partial response. Referring toFIG. 48 , for example, after the data level threshold generated by theadaptive module 975 converges to a nominal data level 985 (DLEVNOM), further jitter detected in thesignal data level 986 may be treated as residual ISI due resulting from transmission of symbols other than symbols desired to contribute to the partial response. The tap control logic may increase and decrease the weights of the post-tap output drivers and/or pre-tap output drivers as necessary to reduce the residual ISI. In alternative embodiments, updates to the tap weights themselves (e.g., values to be added and/or subtracted from weights W0-WN−1 or a subset thereof) may be determined within the receive device (or another device such ascontroller 141 ofFIG. 3 ) and provided to the transmit device for application within thetap control logic 955. In yet other embodiments, one or more replacement tap weights may be determined within the receive device (or other device such ascontroller 141 ofFIG. 3 ) and provided to the transmit device for application in place of corresponding tap weights W0-WN−1. - It should be noted that the various circuits disclosed herein may be described using computer aided design tools and expressed (or represented), as data and/or instructions embodied in various computer-readable media, in terms of their behavioral, register transfer, logic component, transistor, layout geometries, and/or other characteristics. Formats of files and other objects in which such circuit expressions may be implemented include, but are not limited to, formats supporting behavioral languages such as C, Verilog, and HLDL, formats supporting register level description languages like RTL, and formats supporting geometry description languages such as GDSII, GDSIII, GDSIV, CIF, MEBES and any other suitable formats and languages. Computer-readable media in which such formatted data and/or instructions may be embodied include, but are not limited to, non-volatile storage media in various forms (e.g., optical, magnetic or semiconductor storage media) and carrier waves that may be used to transfer such formatted data and/or instructions through wireless, optical, or wired signaling media or any combination thereof. Examples of transfers of such formatted data and/or instructions by carrier waves include, but are not limited to, transfers (uploads, downloads, e-mail, etc.) over the Internet and/or other computer networks via one or more data transfer protocols (e.g., HTTP, FTP, SMTP, etc.).
- When received within a computer system via one or more computer-readable media, such data and/or instruction-based expressions of the above described circuits may be processed by a processing entity (e.g., one or more processors) within the computer system in conjunction with execution of one or more other computer programs including, without limitation, net-list generation programs, place and route programs and the like, to generate a representation or image of a physical manifestation of such circuits. Such representation or image may thereafter be used in device fabrication, for example, by enabling generation of one or more masks that are used to form various components of the circuits in a device fabrication process.
- In the foregoing description and in the accompanying drawings, specific terminology and drawing symbols have been set forth to provide a thorough understanding of the present invention. In some instances, the terminology and symbols may imply specific details that are not required to practice the invention. For example, the interconnection between circuit elements or circuit blocks may be shown or described as multi-conductor or single conductor signal lines. Each of the multi-conductor signal lines may alternatively be single-conductor signal lines, and each of the single-conductor signal lines may alternatively be multi-conductor signal lines. Signals and signaling paths shown or described as being single-ended may also be differential, and vice-versa. Similarly, signals described or depicted as having active-high or active-low logic levels may have opposite logic levels in alternative embodiments. As another example, circuits described or depicted as including metal oxide semiconductor (MOS) transistors may alternatively be implemented using bipolar technology or any other technology in which a signal-controlled current flow may be achieved. With respect to terminology, a signal is said to be “asserted” when the signal is driven to a low or high logic state (or charged to a high logic state or discharged to a low logic state) to indicate a particular condition. Conversely, a signal is said to be “deasserted” to indicate that the signal is driven (or charged or discharged) to a state other than the asserted state (including a high or low logic state, or the floating state that may occur when the signal driving circuit is transitioned to a high impedance condition, such as an open drain or open collector condition). A signal driving circuit is said to “output” a signal to a signal receiving circuit when the signal driving circuit asserts (or deasserts, if explicitly stated or indicated by context) the signal on a signal line coupled between the signal driving and signal receiving circuits. A signal line is said to be “activated” when a signal is asserted on the signal line, and “deactivated” when the signal is deasserted. Additionally, the prefix symbol “/” attached to signal names indicates that the signal is an active low signal (i.e., the asserted state is a logic low state). A line over a signal name (e.g., ‘{overscore (<signal name>)}’) is also used to indicate an active low signal. The term “coupled” is used herein to express a direct connection as well as a connection through one or more intervening circuits or structures. The term “exemplary” is used to express an example, not a preference or requirement.
- Various aspects of the subject-matter described herein are set out non-exhaustively in the following numbered clauses:
- 1. A method of operation within an integrated circuit device, the method comprising:
-
-
- comparing a data signal with a first threshold level and with a second threshold level to generate a first edge sample and a second edge sample, respectively;
- selecting one of the first and second edge samples to be a phase error signal that indicates whether a transition of a first clock signal is early or late relative to a desired transition time;
- adjusting a frequency difference value based, at least in part, on the phase error signal, the frequency difference value indicating a difference in frequency between a clock signal used to generate the first clock signal and a clock signal used to time transmission of the data signal; and
- adjusting a phase of the first clock signal based, at least in part, on the frequency difference value.
2. The method ofclause 1 further comprising sampling a binary input signal to generate a set of data samples, and wherein selecting one of the first and second edge samples to be a phase error signal comprises selecting one of the first and second edge samples based on the set of data samples.
3. The method ofclause 1 further comprising sampling a binary input signal to generate a set of data samples, and wherein selecting one of the first and second edge samples to be a phase error signal comprises selecting the first edge sample to be the phase error signal if the set of data samples matches a first data pattern and selecting the second edge sample to be the phase error signal if the set of data samples matches a second data pattern.
4. The method ofclause 1 wherein adjusting a frequency difference value based, at least in part, on the phase error signal comprises: - increasing or decreasing a phase error count according to a logic state of the phase error signal; and
- and increasing or decreasing the frequency difference value according to whether the phase error count is positive or negative.
5. The method ofclause 1 wherein adjusting a phase of the first clock signal based, at least in part, on the frequency difference value comprises adding the frequency difference value to a phase control value that is used to control the phase of the first clock signal.
6. The method ofclause 5 further comprising: - increasing or decreasing a phase error count according to a logic state of the phase error signal; and
- adding a value that corresponds to the phase error count to the phase control value.
7. The method of clause 6 wherein adding a value that corresponds to the phase error count to the phase control value comprises multiplying the phase error count by a scaling factor to generate the value that corresponds to the phase error count.
8. The method of clause 6 wherein adding a value that corresponds to the phase error count to the phase control value and adding the frequency difference value to a phase control value comprises adding the frequency difference value to the value that corresponds to the phase error count to generate a composite value and then adding the composite value to the phase control value.
9. The method ofclause 1 wherein adjusting a phase of the first clock signal based, at least in part, on the frequency difference value comprises: - increasing or decreasing a phase control based, at least in part, on the frequency difference value; and
- interpolating between a pair of phase-shifted clock signals in accordance with the phase control value to generate the first clock signal.
10. An integrated circuit device comprising: - an edge sampling circuit to generate a first edge sample in either a first logic state or a second logic state according to whether a data signal exceeds a first threshold level, and to generate a second edge sample in either the first logic state or the second logic state according to whether the data signal exceeds a second threshold level;
- a selector circuit to select one of the first and second edge samples to be a phase error signal that indicates whether a transition of a first clock signal is early or late relative to a desired transition time; and
- circuitry to adjust a frequency difference value based, at least in part, on the phase error signal, the frequency difference value indicating a difference in frequency between a clock signal used to generate the first clock signal and a clock signal used to time transmission of the data signal; and
- circuitry to adjust a phase of the first clock signal based, at least in part, on the frequency difference value.
11. The integrated circuit device ofclause 10 further comprising a data sampling circuit to generate a set of data samples from the data signal, and wherein the selector circuit comprises logic circuitry to select the one of the first and second edge samples to be the phase error signal based on the set of data samples.
12. The integrated circuit device ofclause 10 wherein the logic circuitry comprises circuitry to select the first edge sample to be the phase error signal if the set of data samples matches a first data pattern and to select the second edge sample to be the phase error signal if the set of data samples matches a second data pattern.
13. The integrated circuit device ofclause 10 wherein the circuitry to adjust a frequency difference value based, at least in part, on the phase error signal comprises a counter to increment or decrement a phase error count according to a logic state of the phase error signal and an accumulator circuit to increase or decrease the frequency difference value according to whether the phase error count is positive or negative.
14. The integrated circuit device of clause 13 further comprising a gain circuit to generate a scaled value to be added to the frequency difference value within the accumulator, the scaled value being a positive or negative value according to whether the phase error count is positive or negative and having a magnitude according to a scaling factor.
15. The integrated circuit device of clause 14 further comprising a configuration circuit to store a value that corresponds to the scaling factor in response to an instruction from a source external to the integrated circuit device.
16. The integrated circuit device ofclause 10 wherein the circuitry to adjust the phase of the first clock signal based, at least in part on the frequency difference value, comprises circuitry to add the frequency difference value to a phase control value that is used to control the phase of the first clock signal.
17. The integrated circuit device of clause 16 wherein the circuitry to adjust the phase of the first clock signal further comprises circuitry to generate a plurality of phase vectors that are phase-shifted relative to one another, and an interpolation circuit to interpolate between a selected pair of the reference phase vectors in accordance with the phase control value, .
18. The integrated circuit device of clause 16 wherein the circuitry to adjust a frequency difference value based, at least in part, on the phase error signal comprises a counter to increment or decrement a phase error count according to a logic state of the phase error signal, and wherein the integrated circuit device further comprises circuitry to add a value that corresponds to the phase error count to the phase control value.
19. The integrated circuit device of clause 18 wherein the circuitry to add a value that corresponds to the phase error count to the phase control value comprises a gain circuit to multiply the phase error count by a scaling factor to generate the value that corresponds to the phase error count.
20. The integrated circuit device of clause 19 further comprising a configuration circuit to store a value that corresponds to the scaling factor in response to an instruction from an external source.
21. An integrated circuit device comprising: - means for generating a first edge sample in either a first logic state or a second logic state according to whether a data signal exceeds a first threshold level, and to generate a second edge sample in either the first logic state or the second logic state according to whether the data signal exceeds a second threshold level;
- means for selecting one of the first and second edge samples to be a phase error signal that indicates whether a transition of a first clock signal is early or late relative to a desired transition time; and
- means for adjusting a frequency difference value based, at least in part, on the phase error signal, the frequency difference value indicating a difference in frequency between a clock signal used to generate the first clock signal and a clock signal used to time transmission of the data signal; and
- means for adjusting a phase of the first clock signal based, at least in part, on the frequency difference value.
22. Computer-readable media having information embodied therein that includes a description of an integrated-circuit memory device, the information including descriptions of: - an edge sampling circuit to generate a first edge sample in either a first logic state or a second logic state according to whether a data signal exceeds a first threshold level, and to generate a second edge sample in either the first logic state or the second logic state according to whether the data signal exceeds a second threshold level;
- a selector circuit to select one of the first and second edge samples to be a phase error signal that indicates whether a transition of a first clock signal is early or late relative to a desired transition time; and
- circuitry to adjust a frequency difference value based, at least in part, on the phase error signal, the frequency difference value indicating a difference in frequency between a clock signal used to generate the first clock signal and a clock signal used to time transmission of the data signal; and
- circuitry to adjust a phase of the first clock signal based, at least in part, on the frequency difference value.
23. A method of operation within an integrated circuit device, the method comprising: - generating a sequence of data sample pairs, each data sample pair including a first data sample having a logic state according to whether an input signal exceeds a first threshold level and a second sample having a logic state according to whether the input signal exceeds a second threshold level;
- selecting either the first data sample or the second data sample of each data sample pair to be included as a selected data sample within a sequence of selected data samples;
- generating a first edge sample having one of at least two states according to whether an input signal exceeds the second threshold level;
- generating a second edge sample having one of at least two states according to whether an input signal exceeds a third threshold level;
- selecting, based on the sequence of selected data samples, one of the first and second edge samples to be a phase error signal that indicates whether a transition of a first clock signal is early or late relative to a desired transition time;
- adjusting a frequency difference value based, at least in part, on the phase error signal, the frequency difference value indicating a difference in frequency between a clock signal used to generate the first clock signal and a clock signal used to time transmission of the data signal; and
- adjusting a phase of the first clock signal based, at least in part, on the frequency difference value.
- Section headings have been provided in this detailed description for convenience of reference only, and in no way define, limit, construe or describe the scope or extent of such sections. Also, while the invention has been described with reference to specific embodiments thereof, it will be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.
Claims (21)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/404,502 US7433397B2 (en) | 2003-04-09 | 2006-04-14 | Partial response receiver with clock data recovery |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US46172903P | 2003-04-09 | 2003-04-09 | |
US10/662,872 US7397848B2 (en) | 2003-04-09 | 2003-09-16 | Partial response receiver |
US11/404,502 US7433397B2 (en) | 2003-04-09 | 2006-04-14 | Partial response receiver with clock data recovery |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/662,872 Continuation-In-Part US7397848B2 (en) | 2003-04-09 | 2003-09-16 | Partial response receiver |
Publications (2)
Publication Number | Publication Date |
---|---|
US20060233291A1 true US20060233291A1 (en) | 2006-10-19 |
US7433397B2 US7433397B2 (en) | 2008-10-07 |
Family
ID=33135210
Family Applications (14)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/662,872 Active 2025-07-08 US7397848B2 (en) | 2003-04-09 | 2003-09-16 | Partial response receiver |
US10/966,070 Active 2027-07-17 US7715501B2 (en) | 2003-04-09 | 2004-10-18 | Partial response receiver |
US11/404,502 Expired - Fee Related US7433397B2 (en) | 2003-04-09 | 2006-04-14 | Partial response receiver with clock data recovery |
US12/403,340 Expired - Fee Related US7715509B2 (en) | 2003-04-09 | 2009-03-12 | Partial response receiver |
US12/508,030 Expired - Fee Related US7706480B2 (en) | 2003-04-09 | 2009-07-23 | Partial response receiver |
US12/710,615 Expired - Lifetime US8170163B2 (en) | 2003-04-09 | 2010-02-23 | Partial response receiver |
US13/460,732 Expired - Lifetime US9025678B2 (en) | 2003-04-09 | 2012-04-30 | Partial response receiver |
US13/469,685 Expired - Lifetime US8428196B2 (en) | 2003-04-09 | 2012-05-11 | Equalizing receiver |
US14/683,081 Expired - Fee Related US9407473B2 (en) | 2003-04-09 | 2015-04-09 | Partial response receiver |
US15/092,435 Expired - Lifetime US9917708B2 (en) | 2003-04-09 | 2016-04-06 | Partial response receiver |
US15/907,205 Expired - Lifetime US10225111B2 (en) | 2003-04-09 | 2018-02-27 | Partial response receiver |
US16/287,941 Expired - Fee Related US10764094B2 (en) | 2003-04-09 | 2019-02-27 | Partial response receiver |
US16/999,853 Expired - Lifetime US11502878B2 (en) | 2003-04-09 | 2020-08-21 | Partial response receiver |
US17/978,468 Abandoned US20230140420A1 (en) | 2003-04-09 | 2022-11-01 | Partial response receiver |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/662,872 Active 2025-07-08 US7397848B2 (en) | 2003-04-09 | 2003-09-16 | Partial response receiver |
US10/966,070 Active 2027-07-17 US7715501B2 (en) | 2003-04-09 | 2004-10-18 | Partial response receiver |
Family Applications After (11)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/403,340 Expired - Fee Related US7715509B2 (en) | 2003-04-09 | 2009-03-12 | Partial response receiver |
US12/508,030 Expired - Fee Related US7706480B2 (en) | 2003-04-09 | 2009-07-23 | Partial response receiver |
US12/710,615 Expired - Lifetime US8170163B2 (en) | 2003-04-09 | 2010-02-23 | Partial response receiver |
US13/460,732 Expired - Lifetime US9025678B2 (en) | 2003-04-09 | 2012-04-30 | Partial response receiver |
US13/469,685 Expired - Lifetime US8428196B2 (en) | 2003-04-09 | 2012-05-11 | Equalizing receiver |
US14/683,081 Expired - Fee Related US9407473B2 (en) | 2003-04-09 | 2015-04-09 | Partial response receiver |
US15/092,435 Expired - Lifetime US9917708B2 (en) | 2003-04-09 | 2016-04-06 | Partial response receiver |
US15/907,205 Expired - Lifetime US10225111B2 (en) | 2003-04-09 | 2018-02-27 | Partial response receiver |
US16/287,941 Expired - Fee Related US10764094B2 (en) | 2003-04-09 | 2019-02-27 | Partial response receiver |
US16/999,853 Expired - Lifetime US11502878B2 (en) | 2003-04-09 | 2020-08-21 | Partial response receiver |
US17/978,468 Abandoned US20230140420A1 (en) | 2003-04-09 | 2022-11-01 | Partial response receiver |
Country Status (6)
Country | Link |
---|---|
US (14) | US7397848B2 (en) |
EP (4) | EP2259519B1 (en) |
JP (1) | JP4718451B2 (en) |
AT (1) | ATE426984T1 (en) |
DE (2) | DE602004023833D1 (en) |
WO (1) | WO2004093144A2 (en) |
Cited By (70)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050180498A1 (en) * | 2004-02-12 | 2005-08-18 | Texas Instruments Incorporated | High speed decision feedback equalizer |
US20070025419A1 (en) * | 2005-08-01 | 2007-02-01 | Jody Greenberg | All digital implementation of clock spectrum spreading (dither) for low power/die area |
US20070098020A1 (en) * | 2005-10-27 | 2007-05-03 | Yee Ja | Methods and arrangements to model an asynchronous interface |
US20070280342A1 (en) * | 2006-05-30 | 2007-12-06 | Fujitsu Limited | System and Method for the Adjustment of Compensation Applied to a Signal |
US20090074125A1 (en) * | 2007-09-14 | 2009-03-19 | Realtek Semiconductor Corp. | Time-interleaved clock-data recovery and method thereof |
US7555091B1 (en) * | 2004-10-26 | 2009-06-30 | National Semiconductor Corporation | System and method for providing a clock and data recovery circuit with a self test capability |
US20090190703A1 (en) * | 2008-01-29 | 2009-07-30 | United Microelectronics Corp. | Sampling method and data recovery circuit using the same |
US20100061440A1 (en) * | 2008-09-08 | 2010-03-11 | Hynix Semiconductor, Inc. | Decision feedback equalizer having clock recovery circuit and method for recovering clock |
US7697647B1 (en) * | 2005-10-03 | 2010-04-13 | Avaya Inc. | Method and system for switching between two (or more) reference signals for clock synchronization |
US7940877B1 (en) * | 2003-11-26 | 2011-05-10 | Altera Corporation | Signal edge detection circuitry and methods |
KR101119317B1 (en) * | 2007-07-02 | 2012-03-20 | 마이크론 테크놀로지, 인크. | Fractional-rate decision feedback equalization useful in a data transmission system |
US8325704B1 (en) * | 2007-05-16 | 2012-12-04 | Dust Networks, Inc. | Time correction and distance measurement in wireless mesh networks |
US8594262B2 (en) | 2010-06-17 | 2013-11-26 | Transwitch Corporation | Apparatus and method thereof for clock and data recovery of N-PAM encoded signals using a conventional 2-PAM CDR circuit |
US20140010336A1 (en) * | 2011-03-29 | 2014-01-09 | Fujitsu Limited | Phase correction circuit and phase correction method |
US20140016692A1 (en) * | 2006-11-16 | 2014-01-16 | Rambus Inc. | Edge based partial response equalization |
KR101368413B1 (en) | 2007-10-31 | 2014-03-04 | 삼성전자 주식회사 | DFE circuits for use in semiconductor memory device and method for initializing the same |
US20150030113A1 (en) * | 2006-04-04 | 2015-01-29 | Rambus Inc. | Phase Control Block for Managing Multiple Clock Domains in Systems with Frequency Offsets |
WO2015016831A1 (en) * | 2013-07-30 | 2015-02-05 | Hewlett-Packard Development Company, L.P. | Process partial response channel |
US9160582B1 (en) * | 2014-03-31 | 2015-10-13 | Cadence Design Systems, Inc. | System and method for phase recovery with selective mitigation of timing corruption due to digital receiver equalization |
CN105391660A (en) * | 2014-08-28 | 2016-03-09 | 联发科技股份有限公司 | method for performing loop unrolled decision feedback equalization in an electronic device |
US9985634B2 (en) | 2010-05-20 | 2018-05-29 | Kandou Labs, S.A. | Data-driven voltage regulator |
US9985745B2 (en) | 2013-06-25 | 2018-05-29 | Kandou Labs, S.A. | Vector signaling with reduced receiver complexity |
US20180152284A1 (en) * | 2015-07-28 | 2018-05-31 | Rambus Inc. | Collaborative clock and data recovery |
US10003424B2 (en) | 2014-07-17 | 2018-06-19 | Kandou Labs, S.A. | Bus reversible orthogonal differential vector signaling codes |
US10003315B2 (en) | 2016-01-25 | 2018-06-19 | Kandou Labs S.A. | Voltage sampler driver with enhanced high-frequency gain |
US10003454B2 (en) | 2016-04-22 | 2018-06-19 | Kandou Labs, S.A. | Sampler with low input kickback |
US10020966B2 (en) | 2014-02-28 | 2018-07-10 | Kandou Labs, S.A. | Vector signaling codes with high pin-efficiency for chip-to-chip communication and storage |
US10044452B2 (en) | 2010-05-20 | 2018-08-07 | Kandou Labs, S.A. | Methods and systems for skew tolerance in and advanced detectors for vector signaling codes for chip-to-chip communication |
US10055372B2 (en) | 2015-11-25 | 2018-08-21 | Kandou Labs, S.A. | Orthogonal differential vector signaling codes with embedded clock |
US10057049B2 (en) | 2016-04-22 | 2018-08-21 | Kandou Labs, S.A. | High performance phase locked loop |
US10056903B2 (en) | 2016-04-28 | 2018-08-21 | Kandou Labs, S.A. | Low power multilevel driver |
US10091033B2 (en) | 2014-06-25 | 2018-10-02 | Kandou Labs, S.A. | Multilevel driver for high speed chip-to-chip communications |
US10091035B2 (en) | 2013-04-16 | 2018-10-02 | Kandou Labs, S.A. | Methods and systems for high bandwidth communications interface |
US10116468B1 (en) | 2017-06-28 | 2018-10-30 | Kandou Labs, S.A. | Low power chip-to-chip bidirectional communications |
US10116472B2 (en) | 2015-06-26 | 2018-10-30 | Kandou Labs, S.A. | High speed communications system |
US10122561B2 (en) | 2014-08-01 | 2018-11-06 | Kandou Labs, S.A. | Orthogonal differential vector signaling codes with embedded clock |
US20180343150A1 (en) * | 2015-11-23 | 2018-11-29 | Intel Corporation | Electrical systems and methods for performing out-of-band communications |
US10153591B2 (en) | 2016-04-28 | 2018-12-11 | Kandou Labs, S.A. | Skew-resistant multi-wire channel |
US10164809B2 (en) | 2010-12-30 | 2018-12-25 | Kandou Labs, S.A. | Circuits for efficient detection of vector signaling codes for chip-to-chip communication |
US10177812B2 (en) | 2014-01-31 | 2019-01-08 | Kandou Labs, S.A. | Methods and systems for reduction of nearest-neighbor crosstalk |
US10193716B2 (en) | 2016-04-28 | 2019-01-29 | Kandou Labs, S.A. | Clock data recovery with decision feedback equalization |
US10200218B2 (en) | 2016-10-24 | 2019-02-05 | Kandou Labs, S.A. | Multi-stage sampler with increased gain |
US10200188B2 (en) | 2016-10-21 | 2019-02-05 | Kandou Labs, S.A. | Quadrature and duty cycle error correction in matrix phase lock loop |
US10203226B1 (en) | 2017-08-11 | 2019-02-12 | Kandou Labs, S.A. | Phase interpolation circuit |
US10230549B2 (en) | 2014-07-21 | 2019-03-12 | Kandou Labs, S.A. | Multidrop data transfer |
US10242749B2 (en) | 2016-04-22 | 2019-03-26 | Kandou Labs, S.A. | Calibration apparatus and method for sampler with adjustable high frequency gain |
US10243765B2 (en) | 2014-10-22 | 2019-03-26 | Kandou Labs, S.A. | Method and apparatus for high speed chip-to-chip communications |
US10277431B2 (en) | 2016-09-16 | 2019-04-30 | Kandou Labs, S.A. | Phase rotation circuit for eye scope measurements |
US10320588B2 (en) | 2014-07-10 | 2019-06-11 | Kandou Labs, S.A. | Vector signaling codes with increased signal to noise characteristics |
US10326623B1 (en) | 2017-12-08 | 2019-06-18 | Kandou Labs, S.A. | Methods and systems for providing multi-stage distributed decision feedback equalization |
US10326620B2 (en) | 2017-05-31 | 2019-06-18 | Kandou Labs, S.A. | Methods and systems for background calibration of multi-phase parallel receivers |
US10333741B2 (en) | 2016-04-28 | 2019-06-25 | Kandou Labs, S.A. | Vector signaling codes for densely-routed wire groups |
US10333749B2 (en) | 2014-05-13 | 2019-06-25 | Kandou Labs, S.A. | Vector signaling code with improved noise margin |
US10347283B2 (en) | 2017-11-02 | 2019-07-09 | Kandou Labs, S.A. | Clock data recovery in multilane data receiver |
US10348436B2 (en) | 2014-02-02 | 2019-07-09 | Kandou Labs, S.A. | Method and apparatus for low power chip-to-chip communications with constrained ISI ratio |
US10355852B2 (en) | 2016-08-31 | 2019-07-16 | Kandou Labs, S.A. | Lock detector for phase lock loop |
US10372665B2 (en) | 2016-10-24 | 2019-08-06 | Kandou Labs, S.A. | Multiphase data receiver with distributed DFE |
US10389555B2 (en) * | 2016-01-28 | 2019-08-20 | Hewlett Packard Enterprise Development Lp | Phase delay difference-based channel compensation |
US10468078B2 (en) | 2010-05-20 | 2019-11-05 | Kandou Labs, S.A. | Methods and systems for pin-efficient memory controller interface using vector signaling codes for chip-to-chip communication |
US10554380B2 (en) | 2018-01-26 | 2020-02-04 | Kandou Labs, S.A. | Dynamically weighted exclusive or gate having weighted output segments for phase detection and phase interpolation |
US10574487B1 (en) | 2019-04-08 | 2020-02-25 | Kandou Labs, S.A. | Sampler offset calibration during operation |
US10673548B2 (en) | 2017-12-07 | 2020-06-02 | Kandou Labs, S.A. | Decision feedback equalization correction of eye scope measurements |
US10686583B2 (en) | 2017-07-04 | 2020-06-16 | Kandou Labs, S.A. | Method for measuring and correcting multi-wire skew |
US10721106B1 (en) | 2019-04-08 | 2020-07-21 | Kandou Labs, S.A. | Adaptive continuous time linear equalization and channel bandwidth control |
US10999051B2 (en) * | 2019-09-18 | 2021-05-04 | Nvidia Corp. | Reference noise compensation for single-ended signaling |
US11184197B2 (en) * | 2015-07-28 | 2021-11-23 | Rambus Inc. | Burst-tolerant decision feedback equalization |
US11212073B2 (en) * | 2019-04-16 | 2021-12-28 | Nvidia Corp. | Clock data recovery convergence using signed timing injection |
US20220311592A1 (en) * | 2021-03-23 | 2022-09-29 | Nvidia Corp. | Clock Data Recovery Convergence In Modulated Partial Response Systems |
US11595234B2 (en) | 2020-09-24 | 2023-02-28 | Changxin Memory Technologies, Inc. | Equalizer circuit, method for sampling data and memory |
US11881281B2 (en) | 2020-09-24 | 2024-01-23 | Changxin Memory Technologies, Inc. | Dual reference voltage generator, equalizer circuit, and memory |
Families Citing this family (136)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7126378B2 (en) | 2003-12-17 | 2006-10-24 | Rambus, Inc. | High speed signaling system with adaptive transmit pre-emphasis |
US7397848B2 (en) | 2003-04-09 | 2008-07-08 | Rambus Inc. | Partial response receiver |
KR100555498B1 (en) * | 2003-04-18 | 2006-03-03 | 삼성전자주식회사 | Transmitter, receiver and data interface system for improving data transmission speed |
US7805083B2 (en) * | 2003-04-28 | 2010-09-28 | Alcatel-Lucent Usa Inc. | Method and apparatus for data recovery in an optical transmission system |
US7627029B2 (en) | 2003-05-20 | 2009-12-01 | Rambus Inc. | Margin test methods and circuits |
US7590175B2 (en) * | 2003-05-20 | 2009-09-15 | Rambus Inc. | DFE margin test methods and circuits that decouple sample and feedback timing |
US7447278B2 (en) * | 2003-05-21 | 2008-11-04 | International Business Machines Corporation | Apparatus for transmitting and receiving data |
TWI243980B (en) * | 2003-10-09 | 2005-11-21 | Via Tech Inc | Switch circuit for switching clock signals |
US7277516B2 (en) * | 2003-10-14 | 2007-10-02 | Realtek Semiconductor Corp | Adaptive equalization system for a signal receiver |
JP4776548B2 (en) * | 2003-12-17 | 2011-09-21 | ラムバス・インコーポレーテッド | High-speed signaling system with adaptive transmit pre-emphasis, reflection cancellation, and offset cancellation |
US7233164B2 (en) * | 2003-12-17 | 2007-06-19 | Rambus Inc. | Offset cancellation in a multi-level signaling system |
US7246018B1 (en) * | 2003-12-22 | 2007-07-17 | Marvell International Ltd. | Interpolator testing circuit |
KR100520224B1 (en) * | 2003-12-23 | 2005-10-11 | 삼성전자주식회사 | Apparatus for minimizing residual intersymbol interference in semiconductor memory device and method thereof |
US7545898B2 (en) * | 2004-02-13 | 2009-06-09 | Broadcom Corporation | System and method for clock rate determination |
US7308048B2 (en) * | 2004-03-09 | 2007-12-11 | Rambus Inc. | System and method for selecting optimal data transition types for clock and data recovery |
US7453967B2 (en) * | 2004-05-05 | 2008-11-18 | Cisco Technology, Inc. | Serial self-adaptable transmission line |
US7639736B2 (en) | 2004-05-21 | 2009-12-29 | Rambus Inc. | Adaptive receive-side equalization |
GB0413142D0 (en) * | 2004-06-12 | 2004-07-14 | Texas Instruments Ltd | Improvements in, or relating to testing |
US7065135B2 (en) * | 2004-06-16 | 2006-06-20 | Fujitsu Limited | System and method for equalizing high-speed data transmission |
KR100574619B1 (en) * | 2004-08-04 | 2006-04-27 | 삼성전자주식회사 | Quarter-rate clock data recovery circuit and clock data recoverying method using the same |
US7643583B1 (en) * | 2004-08-06 | 2010-01-05 | Marvell International Ltd. | High-precision signal detection for high-speed receiver |
US20060095222A1 (en) * | 2004-11-04 | 2006-05-04 | Mindspeed Technologies, Inc. | Optic module calibration |
US8085880B2 (en) * | 2004-12-23 | 2011-12-27 | Rambus Inc. | Amplitude monitor for high-speed signals |
EP1856869B1 (en) * | 2005-01-20 | 2017-09-13 | Rambus Inc. | High-speed signaling systems with adaptable pre-emphasis and equalization |
US7602869B2 (en) * | 2005-07-29 | 2009-10-13 | International Business Machines Corporation | Methods and apparatus for clock synchronization and data recovery in a receiver |
US7734866B2 (en) * | 2005-08-04 | 2010-06-08 | Rambus Inc. | Memory with address-differentiated refresh rate to accommodate low-retention storage rows |
US7813460B2 (en) * | 2005-09-30 | 2010-10-12 | Slt Logic, Llc | High-speed data sampler with input threshold adjustment |
KR100714382B1 (en) * | 2005-10-06 | 2007-05-04 | 삼성전자주식회사 | Apparatus and method for recovering clock and data |
DE602005004922T2 (en) * | 2005-10-21 | 2008-06-12 | Alcatel Lucent | Method and device for controlling the threshold value in a receiver for digital message signals |
US8121237B2 (en) | 2006-03-16 | 2012-02-21 | Rambus Inc. | Signaling system with adaptive timing calibration |
US7639737B2 (en) | 2006-04-27 | 2009-12-29 | Rambus Inc. | Adaptive equalization using correlation of edge samples with data patterns |
US7640463B2 (en) * | 2006-06-30 | 2009-12-29 | Lsi Corporation | On-chip receiver eye finder circuit for high-speed serial link |
US7606302B2 (en) * | 2006-09-29 | 2009-10-20 | Agere Systems Inc. | Method and apparatus for non-linear decision-feedback equalization in the presence of asymmetric channel |
KR100801055B1 (en) * | 2006-10-16 | 2008-02-04 | 삼성전자주식회사 | Data receiver and semiconductor including the receiver |
JP5259074B2 (en) * | 2006-11-10 | 2013-08-07 | 株式会社日立製作所 | Semiconductor integrated circuit device |
WO2008070138A2 (en) * | 2006-12-05 | 2008-06-12 | Rambus Inc. | Methods and circuits for asymmetric distribution of channel equalization between transceiver devices |
US8934525B2 (en) | 2007-01-08 | 2015-01-13 | Rambus Inc. | High-speed signaling systems and methods with adaptable, continuous-time equalization |
CN101663629B (en) | 2007-03-01 | 2012-10-03 | 拉姆伯斯公司 | Optimized power supply for an electronic system |
WO2008115968A1 (en) * | 2007-03-20 | 2008-09-25 | Rambus Incorporated | Integrated circuit having receiver jitter tolerance ('jtol') measurement |
US8817849B2 (en) * | 2007-05-25 | 2014-08-26 | Rambus Inc. | Methods and systems for transmitting data by modulating transmitter filter coefficients |
US8005444B2 (en) * | 2007-08-02 | 2011-08-23 | Broadcom Corporation | Multiple die integrated circuit assembly |
US7885359B2 (en) * | 2007-08-15 | 2011-02-08 | Seiko Epson Corporation | Sampling demodulator for amplitude shift keying (ASK) radio receiver |
US7661084B2 (en) * | 2007-08-17 | 2010-02-09 | International Business Machines Corporation | Implementing memory read data eye stretcher |
US7703063B2 (en) * | 2007-08-17 | 2010-04-20 | International Business Machines Corporation | Implementing memory read data eye stretcher |
CN101889402A (en) * | 2007-12-06 | 2010-11-17 | 拉姆伯斯公司 | The loss of signal based on the edge detects |
EP2241050B1 (en) * | 2008-02-01 | 2018-08-08 | Rambus Inc. | Receiver with enhanced clock and data recovery |
US8638125B2 (en) * | 2008-03-14 | 2014-01-28 | Texas Instruments Incorporated | Low voltage differential signal driver with reduced power consumption |
US7899649B1 (en) | 2008-03-24 | 2011-03-01 | Altera Corporation | Signal detect for high-speed serial interface |
US8823417B2 (en) * | 2008-07-09 | 2014-09-02 | Siemens Industry, Inc. | Combination AC/DC peak detector and signal type discriminator |
US20110249718A1 (en) * | 2008-12-31 | 2011-10-13 | Rambus Inc. | Method and apparatus for correcting phase errors during transient events in high-speed signaling systems |
US7863941B1 (en) | 2009-02-04 | 2011-01-04 | Altera Corporation | Techniques for canceling offsets in differential circuits |
US8345738B2 (en) * | 2009-07-24 | 2013-01-01 | Rambus Inc. | Partial response receiver and related method |
WO2011062823A2 (en) | 2009-11-19 | 2011-05-26 | Rambus Inc. | Receiver with time-varying threshold voltage |
KR101114698B1 (en) * | 2010-01-29 | 2012-02-29 | 삼성전자주식회사 | Apparatus and method for edge enhancement according to image characteristics |
US8401135B2 (en) * | 2010-02-02 | 2013-03-19 | International Business Machines Corporation | Post-equalization amplitude latch-based channel characteristic measurement |
US9215112B2 (en) * | 2010-02-23 | 2015-12-15 | Rambus Inc. | Decision feedback equalizer |
US8942319B2 (en) * | 2010-04-08 | 2015-01-27 | Rambus Inc. | Partial response equalizer and related method |
US8589717B1 (en) * | 2010-04-16 | 2013-11-19 | Tabula, Inc. | Serial peripheral interface |
US8711922B2 (en) * | 2010-04-23 | 2014-04-29 | Rambus Inc. | Partial response decision feedback equalizer with distributed control |
US8996906B1 (en) | 2010-05-13 | 2015-03-31 | Tabula, Inc. | Clock management block |
JP5649864B2 (en) * | 2010-08-12 | 2015-01-07 | ラピスセミコンダクタ株式会社 | Semiconductor circuit and signal acquisition method of semiconductor circuit |
US8559582B2 (en) * | 2010-09-13 | 2013-10-15 | Altera Corporation | Techniques for varying a periodic signal based on changes in a data rate |
TWI423588B (en) * | 2010-12-23 | 2014-01-11 | Ind Tech Res Inst | Level transition determination circuit and method for using the same |
US8451969B2 (en) | 2011-03-15 | 2013-05-28 | Intel Corporation | Apparatus, system, and method for timing recovery |
WO2012139646A1 (en) * | 2011-04-13 | 2012-10-18 | Siemens Aktiengesellschaft | Method for the simultaneous transfer of digital process values, evaluation unit for use in such a method and automation device having such an evaluation unit |
US9071478B2 (en) * | 2011-05-24 | 2015-06-30 | Mediatek Inc. | Methods for performing adaptive equalization and associated apparatus |
WO2013039624A1 (en) * | 2011-09-12 | 2013-03-21 | Rambus Inc. | Offset and decision feedback equalization calibration |
US8693531B2 (en) * | 2011-10-21 | 2014-04-08 | Texas Instruments Incorporated | Method and apparatus for performing speculative decision feedback equalization |
WO2013085923A1 (en) * | 2011-12-06 | 2013-06-13 | The Board Of Trustees Of The Leland Stanford Junior University | Time-based digitizer for pet photodetector |
JP5937229B2 (en) * | 2011-12-21 | 2016-06-22 | インテル コーポレイション | Low power high speed digital receiver |
US20140369398A1 (en) * | 2011-12-30 | 2014-12-18 | Zte (Usa) Inc. | Digital filter, partial response equalizer, and digital coherent receiver device and method |
US9507756B2 (en) | 2012-01-18 | 2016-11-29 | Marvell Israel (M.I.S.L) Ltd. | Space efficient counters in network devices |
US9020087B2 (en) * | 2012-05-15 | 2015-04-28 | Exar Corporation | All digital burst-mode clock and data recovery (CDR) |
US8937994B2 (en) | 2012-06-25 | 2015-01-20 | Rambus Inc. | Partial response decision feedback equalizer with selection circuitry having hold state |
US8873606B2 (en) * | 2012-11-07 | 2014-10-28 | Broadcom Corporation | Transceiver including a high latency communication channel and a low latency communication channel |
US9166844B2 (en) * | 2012-11-16 | 2015-10-20 | Rambus Inc. | Receiver with duobinary mode of operation |
US9235543B2 (en) * | 2012-11-26 | 2016-01-12 | International Business Machines Corporation | Systems for signal detection |
US9397868B1 (en) | 2012-12-11 | 2016-07-19 | Rambus Inc. | Split-path equalizer and related methods, devices and systems |
US9000801B1 (en) | 2013-02-27 | 2015-04-07 | Tabula, Inc. | Implementation of related clocks |
US9363071B2 (en) | 2013-03-07 | 2016-06-07 | Qualcomm Incorporated | Circuit to recover a clock signal from multiple wire data signals that changes state every state cycle and is immune to data inter-lane skew as well as data state transition glitches |
US9178690B2 (en) | 2013-10-03 | 2015-11-03 | Qualcomm Incorporated | N factorial dual data rate clock and data recovery |
US9374216B2 (en) | 2013-03-20 | 2016-06-21 | Qualcomm Incorporated | Multi-wire open-drain link with data symbol transition based clocking |
US9313058B2 (en) | 2013-03-07 | 2016-04-12 | Qualcomm Incorporated | Compact and fast N-factorial single data rate clock and data recovery circuits |
US10020912B2 (en) | 2013-03-13 | 2018-07-10 | Sans R&D, Llc | Method and a system for a receiver design in bandwidth constrained communication systems |
US9237045B2 (en) | 2013-03-15 | 2016-01-12 | Avago Technologies General Ip (Singapore) Pte. Ltd. | System and method for internal AC coupling with active DC restore and adjustable high-pass filter for a PAM 2/4 receiver |
JP6032080B2 (en) * | 2013-03-22 | 2016-11-24 | 富士通株式会社 | Receiving circuit and control method of receiving circuit |
US8884655B2 (en) | 2013-04-11 | 2014-11-11 | Texas Instruments Incorporated | Low-power voltage mode high speed driver |
KR102044478B1 (en) * | 2013-04-22 | 2019-11-13 | 삼성전자주식회사 | Driver and memory controller having the same |
WO2014188277A2 (en) | 2013-05-03 | 2014-11-27 | Marvell World Trade Ltd. | Time efficient counters and meters architecture |
TW201445321A (en) * | 2013-05-20 | 2014-12-01 | C Media Electronics Inc | Method for auto determining sampling rate and device therefor |
JP6102533B2 (en) * | 2013-06-05 | 2017-03-29 | 富士通株式会社 | Receiver circuit |
US8902091B1 (en) | 2013-09-03 | 2014-12-02 | Avago Technologies General Ip (Singapore) Pte. Ltd. | System and method for high speed data parallelization for an N-phase receiver |
US9203599B2 (en) * | 2014-04-10 | 2015-12-01 | Qualcomm Incorporated | Multi-lane N-factorial (N!) and other multi-wire communication systems |
US9735948B2 (en) | 2013-10-03 | 2017-08-15 | Qualcomm Incorporated | Multi-lane N-factorial (N!) and other multi-wire communication systems |
US9755818B2 (en) | 2013-10-03 | 2017-09-05 | Qualcomm Incorporated | Method to enhance MIPI D-PHY link rate with minimal PHY changes and no protocol changes |
JP6032247B2 (en) | 2013-10-09 | 2016-11-24 | 株式会社デンソー | Distortion compensation system and communication apparatus |
US9071477B2 (en) * | 2013-10-09 | 2015-06-30 | Global Unichip Corporation | Method and associated processing module for interconnection system |
CN105264814B (en) * | 2014-04-22 | 2019-03-15 | 京微雅格(北京)科技有限公司 | LVDS data reconstruction method and circuit |
US8942315B1 (en) * | 2014-05-29 | 2015-01-27 | Cypress Semiconductor Corporation | Systems, methods, and devices for frequency calibration of transmitters |
US9143316B1 (en) * | 2014-07-03 | 2015-09-22 | Xilinx, Inc. | Non-disruptive eye scan for data recovery units based on oversampling |
US9979571B2 (en) | 2014-12-17 | 2018-05-22 | Rambus Inc. | Sampler reference level, DC offset, and AFE gain adaptation for PAM-N receiver |
US9378843B1 (en) * | 2015-01-26 | 2016-06-28 | 9011579 Canada Incorporee | Collaborative analog-to-digital and time-to-delay conversion based on signal prediction |
US9455846B2 (en) * | 2015-02-19 | 2016-09-27 | Microsoft Technology Licensing, Llc | Decision feedback equalization |
JP6631089B2 (en) * | 2015-08-21 | 2020-01-15 | 富士通株式会社 | Decision feedback type equalizer and receiver |
DE102016122449B3 (en) * | 2016-02-18 | 2017-05-24 | Elmos Semiconductor Aktiengesellschaft | Method for increasing the signal-to-noise ratio for common-mode interference on a two-wire data bus |
US10135642B2 (en) | 2016-02-29 | 2018-11-20 | Rambus Inc. | Serial link receiver with improved bandwidth and accurate eye monitor |
US9559880B1 (en) * | 2016-03-04 | 2017-01-31 | Inphi Corporation | Eye modulation for pulse-amplitude modulation communication systems |
EP3440813B1 (en) * | 2016-04-21 | 2021-01-13 | Huawei Technologies Co., Ltd. | Apparatus and method for recovering clock data from an m-level signal |
JPWO2018003650A1 (en) * | 2016-06-29 | 2019-05-30 | 日本精機株式会社 | Head-up display |
US9699009B1 (en) * | 2016-06-30 | 2017-07-04 | International Business Machines Corporation | Dual-mode non-return-to-zero (NRZ)/ four-level pulse amplitude modulation (PAM4) receiver with digitally enhanced NRZ sensitivity |
EP3480962B1 (en) * | 2016-06-30 | 2021-04-07 | Socionext Inc. | Equalizing circuit, reception circuit, and semiconductor integrated circuit |
US9866326B1 (en) * | 2016-10-12 | 2018-01-09 | Arista Networks, Inc. | Method for self-calibration of an electrical and/or optical channel |
US10142024B2 (en) * | 2016-12-14 | 2018-11-27 | Futurewei Technologies, Inc. | Higher-level clock and data recovery (CDR) in passive optical networks (PONs) |
US10002650B1 (en) * | 2016-12-21 | 2018-06-19 | Mediatek Inc. | Signal quality detection circuit for generating signal quality detection result according to two-dimensional nominal sampling point pattern and associated signal quality detection method |
US10116268B2 (en) * | 2017-01-09 | 2018-10-30 | Analog Devices Global | Operational amplifier |
US10917269B2 (en) * | 2017-01-17 | 2021-02-09 | Vacon Oy | Integrated serial communication |
KR102349415B1 (en) * | 2017-08-07 | 2022-01-11 | 삼성전자주식회사 | Pulse amplitude modulation transmitter and pulse amplitude modulation receiver |
US10373674B2 (en) | 2017-08-31 | 2019-08-06 | Micron Technology, Inc. | Apparatuses and methods for data transmission offset values in burst transmissions |
CN107943205B (en) * | 2017-12-15 | 2020-12-29 | 四川长虹电器股份有限公司 | Circuit and method for calculating clock period by using delay chain in DDR (double data rate) comprehensive physical layer |
US11113212B2 (en) * | 2018-10-23 | 2021-09-07 | Micron Technology, Inc. | Multi-level receiver with termination-off mode |
US10484002B1 (en) * | 2018-12-27 | 2019-11-19 | Keithley Instruments, Llc | High-speed high-resolution digital-to-analog converter |
US10547475B1 (en) * | 2019-02-22 | 2020-01-28 | Cadence Design Systems, Inc. | System and method for measurement and adaptation of pulse response cursors to non zero values |
US10887137B2 (en) * | 2019-03-15 | 2021-01-05 | Rambus Inc. | Edge enhancement for signal transmitter |
US10972107B2 (en) | 2019-07-31 | 2021-04-06 | Apple Inc. | Serial data receiver with sampling clock skew compensation |
US11018656B1 (en) | 2019-11-21 | 2021-05-25 | Credo Technology Group Limited | Multi-function level finder for serdes |
US11165416B2 (en) | 2019-12-03 | 2021-11-02 | Apple Inc. | Duty cycle and skew measurement and correction for differential and single-ended clock signals |
US20210175968A1 (en) * | 2019-12-04 | 2021-06-10 | Donghong Wu | System, Method, and Program Product for Characterizing Multilevel PAMn Eye Diagrams in Communication Systems |
US11217298B2 (en) * | 2020-03-12 | 2022-01-04 | Micron Technology, Inc. | Delay-locked loop clock sharing |
US11031939B1 (en) * | 2020-03-19 | 2021-06-08 | Mellanox Technologies, Ltd. | Phase detector command propagation between lanes in MCM USR serdes |
KR20210123683A (en) | 2020-04-03 | 2021-10-14 | 삼성전자주식회사 | Signal receiver and operation method thereof |
US11251760B2 (en) | 2020-05-20 | 2022-02-15 | Analog Devices, Inc. | Amplifiers with wide input range and low input capacitance |
KR102658272B1 (en) * | 2020-05-21 | 2024-04-17 | 에스케이하이닉스 주식회사 | Signal receiver circuit and method for measuring offset of signal receiver circuit |
US11483184B2 (en) * | 2020-12-11 | 2022-10-25 | Intel Corporation | Multi pulse amplitude modulation signaling decision feedback equalizer having power differentiating modes and tap-weight re-configuration |
US11115251B1 (en) * | 2021-01-22 | 2021-09-07 | Litrinium, Inc. | PAM4 equalization DSM |
US11526453B1 (en) * | 2021-08-13 | 2022-12-13 | Micron Technology, Inc. | Apparatus including parallel pipelines and methods of manufacturing the same |
US11770274B1 (en) | 2022-05-24 | 2023-09-26 | Apple Inc. | Receiver with half-rate sampler circuits |
Citations (76)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3534273A (en) * | 1967-12-18 | 1970-10-13 | Bell Telephone Labor Inc | Automatic threshold level selection and eye tracking in digital transmission systems |
US3582879A (en) * | 1969-04-25 | 1971-06-01 | Computer Mode Corp | Communication channel equalization system and equalizer |
US3775688A (en) * | 1971-03-25 | 1973-11-27 | Fujitsu Ltd | System for transmitting, receiving and decoding multilevel signals |
US3992616A (en) * | 1975-06-24 | 1976-11-16 | Honeywell Inc. | Receiver equalizer apparatus |
US4584559A (en) * | 1984-06-13 | 1986-04-22 | Tektronix, Inc. | Dual rank sample and hold circuit and method |
US4615038A (en) * | 1984-06-06 | 1986-09-30 | At&T Information Systems Inc. | Equalization of modulated data signals utilizing tentative and final decisions and replication of non-linear channel distortion |
US4709376A (en) * | 1985-02-22 | 1987-11-24 | Nec Corporation | Received signal processing apparatus |
US4719369A (en) * | 1985-08-14 | 1988-01-12 | Hitachi, Ltd. | Output circuit having transistor monitor for matching output impedance to load impedance |
US4730343A (en) * | 1985-08-28 | 1988-03-08 | Nec Corporation | Decision feedback equalizer with a pattern detector |
US4970609A (en) * | 1988-10-17 | 1990-11-13 | International Business Machines Corporation | Clocking method and apparatus for use with partial response coded binary data |
US5014226A (en) * | 1988-09-29 | 1991-05-07 | Lsi Logic Corporation | Method and apparatus for predicting the metastable behavior of logic circuits |
US5036525A (en) * | 1987-10-14 | 1991-07-30 | National Semiconductor Corp. | Adaptive equalizer |
US5122690A (en) * | 1990-10-16 | 1992-06-16 | General Electric Company | Interface circuits including driver circuits with switching noise reduction |
US5191462A (en) * | 1990-05-11 | 1993-03-02 | At&T Bell Laboratories | Fiber optic transmission distortion compensation |
US5268930A (en) * | 1991-12-19 | 1993-12-07 | Novatel Communications Ltd. | Decision feedback equalizer |
US5402378A (en) * | 1992-02-19 | 1995-03-28 | Samsung Electronics Co., Ltd. | Circuit for generating a clock signal to separate bit lines in a semiconductor memory device |
US5402445A (en) * | 1992-08-06 | 1995-03-28 | Nec Corporation | Decision feedback equalizer |
US5425033A (en) * | 1992-01-31 | 1995-06-13 | Northern Telecom Limited | Detection of errors in a digital transmission system |
US5448200A (en) * | 1991-12-18 | 1995-09-05 | At&T Corp. | Differential comparator with differential threshold for local area networks or the like |
US5455844A (en) * | 1993-01-20 | 1995-10-03 | Kokusai Denshin Denwa Kabushiki Kaisha | Selection diversity system using decision feedback equalizer in digital mobile telecommunication systems |
US5459762A (en) * | 1994-09-16 | 1995-10-17 | Rockwell International Corporation | Variable multi-threshold detection for 0.3-GMSK |
US5465093A (en) * | 1992-10-01 | 1995-11-07 | Matsushita Electric Industrial Co., Ltd. | Analog-to-digital converter |
US5490169A (en) * | 1993-06-16 | 1996-02-06 | Universal Data Systems, Inc. | Decision feedback equalizer method and apparatus |
US5596285A (en) * | 1993-08-19 | 1997-01-21 | Bull S.A. | Impedance adaptation process and device for a transmitter and/or receiver, integrated circuit and transmission system |
US5659581A (en) * | 1994-12-13 | 1997-08-19 | Paradyne Corporation | Modem receiver pre-emphasis |
US5668830A (en) * | 1993-11-12 | 1997-09-16 | International Business Machines Corporation | Digital phase alignment and integrated multichannel transceiver employing same |
US5675588A (en) * | 1993-09-20 | 1997-10-07 | Fujitsu Limited | Testing apparatus for transmission system |
US5742798A (en) * | 1996-08-09 | 1998-04-21 | International Business Machines Corporation | Compensation of chip to chip clock skew |
US5757297A (en) * | 1996-06-07 | 1998-05-26 | International Business Machines Corporation | Method and apparatus for recovering a serial data stream using a local clock |
US5757857A (en) * | 1994-07-21 | 1998-05-26 | The Regents Of The University Of California | High speed self-adjusting clock recovery circuit with frequency detection |
US5778217A (en) * | 1996-04-02 | 1998-07-07 | Lite-On Communications Corp. | Parallel signal processing device for high-speed timing |
US5802105A (en) * | 1994-11-30 | 1998-09-01 | Qualcomm Incorporated | Method and apparatus for testing a digital communication channel |
US5877647A (en) * | 1995-10-16 | 1999-03-02 | Texas Instruments Incorporated | CMOS output buffer with slew rate control |
US5896067A (en) * | 1996-09-24 | 1999-04-20 | Hewlett-Packard Company | Data processing apparatus and methods including a phase lock loop |
US5898321A (en) * | 1997-03-24 | 1999-04-27 | Intel Corporation | Method and apparatus for slew rate and impedance compensating buffer circuits |
US5940442A (en) * | 1997-01-30 | 1999-08-17 | National Semioonductor Corporation | High speed data receiver |
US6108801A (en) * | 1998-08-11 | 2000-08-22 | Cisco Systems, Inc. | Using profiles to perform Bit Error Rate Testing |
US6118824A (en) * | 1991-12-16 | 2000-09-12 | Omnipoint Corporation | Spread-spectrum data publishing system |
US6122757A (en) * | 1997-06-27 | 2000-09-19 | Agilent Technologies, Inc | Code generating system for improved pattern matching in a protocol analyzer |
US6262591B1 (en) * | 2000-05-30 | 2001-07-17 | International Business Machines Corporation | SOI small signal terminated receiver |
US6288563B1 (en) * | 1998-12-31 | 2001-09-11 | Intel Corporation | Slew rate control |
US6304071B1 (en) * | 1998-01-09 | 2001-10-16 | Neomagic Corp. | Phase detector that samples a read signal at sampling points and delay |
US20010043649A1 (en) * | 2000-05-22 | 2001-11-22 | Ramin Farjad-Rad | Analog N-tap FIR receiver equalizer |
US6380758B1 (en) * | 2000-09-29 | 2002-04-30 | Intel Corporation | Impedance control for wide range loaded signals using distributed methodology |
US6417700B1 (en) * | 2000-10-23 | 2002-07-09 | Matsushita Electric Industrial Co., Ltd. | Voltage level detection circuit and voltage level detection method |
US6448806B1 (en) * | 2000-11-24 | 2002-09-10 | Agilent Technologies, Inc. | Circuit for providing a logical output signal in accordance with crossing points of differential signals |
US20020150184A1 (en) * | 2001-02-02 | 2002-10-17 | Abdulrauf Hafeez | Estimation and compensation of the pulse-shape response in wireless terminals |
US20020184564A1 (en) * | 2001-05-04 | 2002-12-05 | Ernst Muellner | Data regenerator with adjustable decision threshold and adjustable sampling instant |
US20030002602A1 (en) * | 2001-06-08 | 2003-01-02 | Kwon Thomas D. | Receiver having decisional feedback equalizer with remodulation and related methods |
US6509756B1 (en) * | 2000-03-31 | 2003-01-21 | Rambus Inc. | Method and apparatus for low capacitance, high output impedance driver |
US20030016091A1 (en) * | 2001-06-29 | 2003-01-23 | Casper Bryan K. | Equalization of a transmission line signal using a variable offset comparator |
US6541996B1 (en) * | 1999-12-21 | 2003-04-01 | Ati International Srl | Dynamic impedance compensation circuit and method |
US6541966B1 (en) * | 1998-06-27 | 2003-04-01 | Qinetiq Limited | Precision metal locating apparatus |
US20030063664A1 (en) * | 2001-10-02 | 2003-04-03 | Bodenschatz John S. | Adaptive thresholding for adaptive equalization |
US20030070126A1 (en) * | 2001-09-14 | 2003-04-10 | Werner Carl W. | Built-in self-testing of multilevel signal interfaces |
US20030084385A1 (en) * | 2001-02-02 | 2003-05-01 | Jared Zerbe | Method and apparatus for evaluating and optimizing a signaling system |
US20030093713A1 (en) * | 2001-09-14 | 2003-05-15 | Werner Carl W. | Multilevel signal interface testing with binary test apparatus by emulation of multilevel signals |
US6574758B1 (en) * | 2000-03-10 | 2003-06-03 | Cisco Technology, Inc. | Testing a bus coupled between two electronic devices |
US20030108096A1 (en) * | 2001-12-11 | 2003-06-12 | Steinbach Gunter W. | System and method for providing equalization in a multiphase communications receiver |
US20030159094A1 (en) * | 2002-02-15 | 2003-08-21 | Smith Brian L. | IBIST identification loopback scheme |
US20040001567A1 (en) * | 2002-01-25 | 2004-01-01 | Seng-Jun Wei | Dynamic phase tracking using edge detection |
US20040022311A1 (en) * | 2002-07-12 | 2004-02-05 | Zerbe Jared L. | Selectable-tap equalizer |
US6717985B1 (en) * | 2000-03-08 | 2004-04-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Technique for efficiently equalizing a transmission channel in a data transmission system |
US20040071205A1 (en) * | 2002-10-11 | 2004-04-15 | James Gorecki | System and method of equalization of high speed signals |
US6724329B2 (en) * | 2002-04-24 | 2004-04-20 | Intel Corporation | Decision feedback equalization employing a lookup table |
US20040076192A1 (en) * | 1999-10-19 | 2004-04-22 | Rambus Inc. | Calibrated data communication system and method |
US6760574B1 (en) * | 2001-04-17 | 2004-07-06 | Centillium Communications, Inc. | Two-dimensional signal detector with dynamic timing phase compensation |
US6760389B1 (en) * | 1998-06-01 | 2004-07-06 | Agere Systems Inc. | Data recovery for non-uniformly spaced edges |
US20040141567A1 (en) * | 2003-01-22 | 2004-07-22 | Fuji Yang | Multi-level pulse amplitude modulation receiver |
US6885691B1 (en) * | 1999-08-02 | 2005-04-26 | Lg Information & Communications, Ltd. | Scrambling codes and channelization codes for multiple chip rate signals in CDMA cellular mobile radio communication system |
US6897712B2 (en) * | 2003-08-18 | 2005-05-24 | International Business Machines Corporation | Apparatus and method for detecting loss of high-speed signal |
US6941483B2 (en) * | 2001-12-31 | 2005-09-06 | Hewlett-Packard Development Company, L.P. | Bus capability voting mechanism |
US6970681B2 (en) * | 2001-11-14 | 2005-11-29 | Broadcom, Corp. | Integrated multimode radio and components thereof |
US6979987B2 (en) * | 2002-11-14 | 2005-12-27 | Fyre Storm, Inc. | Method of regulating an output voltage of a power converter by sensing the output voltage during a first time interval and calculating a next current value in an inductor sufficient to bring the output voltage to a target voltage within a second time interval immediately following the first time interval and varying a duty cycle of a switch during the second time interval |
US7016445B2 (en) * | 2001-08-02 | 2006-03-21 | Texas Instruments Incorporated | Apparatus for and method of clock recovery from a serial data stream |
US7092472B2 (en) * | 2003-09-16 | 2006-08-15 | Rambus Inc. | Data-level clock recovery |
Family Cites Families (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60176324A (en) * | 1984-02-22 | 1985-09-10 | Pioneer Electronic Corp | Waveform shaping circuit |
JPS60176324U (en) | 1984-04-27 | 1985-11-22 | 株式会社ターダ | Gas burner mixing pipe connection structure |
NO853772L (en) | 1984-11-02 | 1986-05-05 | Universal Data Systems Inc | PROCEDURE FOR ESTABLISHING A COMMUNICATION CHANNEL, MODEM COMMUNICATION SYSTEM AND MICROPROCESSORED MODEM. |
CA1268271C (en) | 1987-11-06 | 1990-04-24 | Electro-optic animated displays and indicators | |
US4992677A (en) | 1988-03-23 | 1991-02-12 | Hitachi, Ltd. | High speed MOSFET output buffer with low noise |
US5194462A (en) | 1989-04-27 | 1993-03-16 | Nkk Corporation | Fiber reinforced plastic sheet and producing the same |
US5265125A (en) * | 1990-11-16 | 1993-11-23 | Matsushita Electric Industrial Co., Ltd. | Signal detection apparatus for detecting digital information from PCM signal |
JP3025068B2 (en) | 1991-09-12 | 2000-03-27 | 富士通株式会社 | ATM switch path test method |
US5254883A (en) | 1992-04-22 | 1993-10-19 | Rambus, Inc. | Electrical current source circuitry for a bus |
DE69334110T2 (en) | 1992-06-15 | 2007-05-10 | Fujitsu Ltd., Kawasaki | Integrated semiconductor circuit with input-output interface for small signal amplitudes |
US5546424A (en) | 1993-06-30 | 1996-08-13 | Casio Computer Co., Ltd. | Spread spectrum communication system |
JP2702073B2 (en) * | 1994-07-15 | 1998-01-21 | 東洋水産株式会社 | Production method of raw type packed Chinese noodles |
KR0144294B1 (en) | 1994-12-14 | 1998-07-15 | 배순훈 | Equalizer for improving a convergence characteristics |
US20010026578A1 (en) | 1994-12-19 | 2001-10-04 | Takeshi Ando | Code division multiple access transmitter and receiver |
US5978379A (en) | 1997-01-23 | 1999-11-02 | Gadzoox Networks, Inc. | Fiber channel learning bridge, learning half bridge, and protocol |
WO1998037671A1 (en) * | 1997-02-25 | 1998-08-27 | Globespan Semiconductor Inc. | An adaptive pre-equalizer for use in data communications equipment |
US5852630A (en) | 1997-07-17 | 1998-12-22 | Globespan Semiconductor, Inc. | Method and apparatus for a RADSL transceiver warm start activation procedure with precoding |
US5990814A (en) * | 1997-09-05 | 1999-11-23 | Cirrus Logic, Inc. | Method and circuit for calibration of flash analog to digital converters |
US5917340A (en) | 1997-10-08 | 1999-06-29 | Pericom Semiconductor Corp. | Twisted-pair driver with staggered differential drivers and glitch free binary to multi level transmit encoder |
EP1330066A2 (en) | 1997-10-25 | 2003-07-23 | Alcatel | Equalizer Circuit for digitally transmitted signals |
JP3439979B2 (en) | 1998-03-13 | 2003-08-25 | 富士通株式会社 | Data reading method, data reading device, and recording medium |
JP2000035831A (en) | 1998-07-21 | 2000-02-02 | Nec Corp | Low skew clock tree circuit using variable threshold voltage transistor |
US6178213B1 (en) | 1998-08-25 | 2001-01-23 | Vitesse Semiconductor Corporation | Adaptive data recovery system and methods |
JP2000076805A (en) * | 1998-09-02 | 2000-03-14 | Fujitsu Ltd | Phase synchronizing method for extended partial response, phase synchronous circuit using the method and read channel circuit |
US6618451B1 (en) | 1999-02-13 | 2003-09-09 | Altocom Inc | Efficient reduced state maximum likelihood sequence estimator |
JP3296330B2 (en) | 1999-05-20 | 2002-06-24 | 日本電気株式会社 | Adaptive filter, control method of adaptive filter, and storage medium storing program |
US6628621B1 (en) | 1999-11-02 | 2003-09-30 | Adtran Inc. | Multichannel-capable bit error rate test system |
US6377076B1 (en) | 2000-02-15 | 2002-04-23 | Sun Microsystems, Inc. | Circuitry to support a power/area efficient method for high-frequency pre-emphasis for chip to chip signaling |
DE10015115A1 (en) | 2000-03-28 | 2001-10-04 | Alcatel Sa | Process for the recovery of digital optical signals and feedback decision makers |
WO2001084724A2 (en) | 2000-04-28 | 2001-11-08 | Broadcom Corporation | Methods and systems for adaptive receiver equalization |
WO2002039684A2 (en) | 2000-11-13 | 2002-05-16 | Primarion, Inc. | Method and circuit for pre-emphasis equalization in high speed data communications |
EP1371200B1 (en) * | 2001-03-01 | 2011-10-12 | Broadcom Corporation | Compensation of distortion due to channel and to receiver, in a parallel transmission system |
US6587917B2 (en) | 2001-05-29 | 2003-07-01 | Agilent Technologies, Inc. | Memory architecture for supporting concurrent access of different types |
US6839861B2 (en) | 2001-07-30 | 2005-01-04 | International Business Machines Corporation | Method and system for selecting data sampling phase for self timed interface logic |
DE60216484T2 (en) | 2001-09-14 | 2007-08-23 | Rambus Inc., Los Altos | MULTI-LEVEL SIGNAL INTERFACE TESTING WITH BINARY TEST EQUIPMENT THROUGH EMULATION OF MULTI-LEVEL SIGNALS |
US7024599B2 (en) | 2001-12-07 | 2006-04-04 | Applied Micro Circuits Corporation | System and method for non-causal channel equalization |
DE60219277T2 (en) | 2002-01-28 | 2008-01-03 | Lucent Technologies Inc. | Adjustment of decision levels and sampling phase based on previous bit values |
WO2004008490A2 (en) | 2002-07-12 | 2004-01-22 | Rambus Inc. | A selectable-tap equalizer, auto-configured equalizer, receiving circuit having an equalizer calibration function, and system having grouped reflection characteristics |
US7339990B2 (en) * | 2003-02-07 | 2008-03-04 | Fujitsu Limited | Processing a received signal at a detection circuit |
US7397848B2 (en) * | 2003-04-09 | 2008-07-08 | Rambus Inc. | Partial response receiver |
US7281079B2 (en) | 2003-12-31 | 2007-10-09 | Intel Corporation | Method and apparatus to counter mismatched burst lengths |
KR100787214B1 (en) | 2005-08-25 | 2007-12-21 | 삼성전자주식회사 | Analog viterbi decoder |
KR100711547B1 (en) | 2005-08-29 | 2007-04-27 | 주식회사 하이닉스반도체 | Delay Locked Loop |
-
2003
- 2003-09-16 US US10/662,872 patent/US7397848B2/en active Active
-
2004
- 2004-04-09 WO PCT/US2004/010980 patent/WO2004093144A2/en active Application Filing
- 2004-04-09 EP EP10175167.5A patent/EP2259519B1/en not_active Expired - Lifetime
- 2004-04-09 EP EP15169337.1A patent/EP2945335B1/en not_active Expired - Lifetime
- 2004-04-09 DE DE602004023833T patent/DE602004023833D1/en not_active Expired - Lifetime
- 2004-04-09 EP EP04759335A patent/EP1618597B1/en not_active Expired - Lifetime
- 2004-04-09 JP JP2006509855A patent/JP4718451B2/en not_active Expired - Lifetime
- 2004-04-09 AT AT04759335T patent/ATE426984T1/en not_active IP Right Cessation
- 2004-04-09 EP EP09155838.7A patent/EP2063593B1/en not_active Expired - Lifetime
- 2004-04-09 DE DE602004020209T patent/DE602004020209D1/en not_active Expired - Lifetime
- 2004-10-18 US US10/966,070 patent/US7715501B2/en active Active
-
2006
- 2006-04-14 US US11/404,502 patent/US7433397B2/en not_active Expired - Fee Related
-
2009
- 2009-03-12 US US12/403,340 patent/US7715509B2/en not_active Expired - Fee Related
- 2009-07-23 US US12/508,030 patent/US7706480B2/en not_active Expired - Fee Related
-
2010
- 2010-02-23 US US12/710,615 patent/US8170163B2/en not_active Expired - Lifetime
-
2012
- 2012-04-30 US US13/460,732 patent/US9025678B2/en not_active Expired - Lifetime
- 2012-05-11 US US13/469,685 patent/US8428196B2/en not_active Expired - Lifetime
-
2015
- 2015-04-09 US US14/683,081 patent/US9407473B2/en not_active Expired - Fee Related
-
2016
- 2016-04-06 US US15/092,435 patent/US9917708B2/en not_active Expired - Lifetime
-
2018
- 2018-02-27 US US15/907,205 patent/US10225111B2/en not_active Expired - Lifetime
-
2019
- 2019-02-27 US US16/287,941 patent/US10764094B2/en not_active Expired - Fee Related
-
2020
- 2020-08-21 US US16/999,853 patent/US11502878B2/en not_active Expired - Lifetime
-
2022
- 2022-11-01 US US17/978,468 patent/US20230140420A1/en not_active Abandoned
Patent Citations (81)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3534273A (en) * | 1967-12-18 | 1970-10-13 | Bell Telephone Labor Inc | Automatic threshold level selection and eye tracking in digital transmission systems |
US3582879A (en) * | 1969-04-25 | 1971-06-01 | Computer Mode Corp | Communication channel equalization system and equalizer |
US3775688A (en) * | 1971-03-25 | 1973-11-27 | Fujitsu Ltd | System for transmitting, receiving and decoding multilevel signals |
US3992616A (en) * | 1975-06-24 | 1976-11-16 | Honeywell Inc. | Receiver equalizer apparatus |
US4615038A (en) * | 1984-06-06 | 1986-09-30 | At&T Information Systems Inc. | Equalization of modulated data signals utilizing tentative and final decisions and replication of non-linear channel distortion |
US4584559A (en) * | 1984-06-13 | 1986-04-22 | Tektronix, Inc. | Dual rank sample and hold circuit and method |
US4709376A (en) * | 1985-02-22 | 1987-11-24 | Nec Corporation | Received signal processing apparatus |
US4719369A (en) * | 1985-08-14 | 1988-01-12 | Hitachi, Ltd. | Output circuit having transistor monitor for matching output impedance to load impedance |
US4730343A (en) * | 1985-08-28 | 1988-03-08 | Nec Corporation | Decision feedback equalizer with a pattern detector |
US5036525A (en) * | 1987-10-14 | 1991-07-30 | National Semiconductor Corp. | Adaptive equalizer |
US5014226A (en) * | 1988-09-29 | 1991-05-07 | Lsi Logic Corporation | Method and apparatus for predicting the metastable behavior of logic circuits |
US4970609A (en) * | 1988-10-17 | 1990-11-13 | International Business Machines Corporation | Clocking method and apparatus for use with partial response coded binary data |
US5191462A (en) * | 1990-05-11 | 1993-03-02 | At&T Bell Laboratories | Fiber optic transmission distortion compensation |
US5122690A (en) * | 1990-10-16 | 1992-06-16 | General Electric Company | Interface circuits including driver circuits with switching noise reduction |
US6118824A (en) * | 1991-12-16 | 2000-09-12 | Omnipoint Corporation | Spread-spectrum data publishing system |
US5448200A (en) * | 1991-12-18 | 1995-09-05 | At&T Corp. | Differential comparator with differential threshold for local area networks or the like |
US5268930A (en) * | 1991-12-19 | 1993-12-07 | Novatel Communications Ltd. | Decision feedback equalizer |
US5425033A (en) * | 1992-01-31 | 1995-06-13 | Northern Telecom Limited | Detection of errors in a digital transmission system |
US5402378A (en) * | 1992-02-19 | 1995-03-28 | Samsung Electronics Co., Ltd. | Circuit for generating a clock signal to separate bit lines in a semiconductor memory device |
US5402445A (en) * | 1992-08-06 | 1995-03-28 | Nec Corporation | Decision feedback equalizer |
US5465093A (en) * | 1992-10-01 | 1995-11-07 | Matsushita Electric Industrial Co., Ltd. | Analog-to-digital converter |
US5455844A (en) * | 1993-01-20 | 1995-10-03 | Kokusai Denshin Denwa Kabushiki Kaisha | Selection diversity system using decision feedback equalizer in digital mobile telecommunication systems |
US5490169A (en) * | 1993-06-16 | 1996-02-06 | Universal Data Systems, Inc. | Decision feedback equalizer method and apparatus |
US5596285A (en) * | 1993-08-19 | 1997-01-21 | Bull S.A. | Impedance adaptation process and device for a transmitter and/or receiver, integrated circuit and transmission system |
US5675588A (en) * | 1993-09-20 | 1997-10-07 | Fujitsu Limited | Testing apparatus for transmission system |
US5668830A (en) * | 1993-11-12 | 1997-09-16 | International Business Machines Corporation | Digital phase alignment and integrated multichannel transceiver employing same |
US5757857A (en) * | 1994-07-21 | 1998-05-26 | The Regents Of The University Of California | High speed self-adjusting clock recovery circuit with frequency detection |
US5459762A (en) * | 1994-09-16 | 1995-10-17 | Rockwell International Corporation | Variable multi-threshold detection for 0.3-GMSK |
US5802105A (en) * | 1994-11-30 | 1998-09-01 | Qualcomm Incorporated | Method and apparatus for testing a digital communication channel |
US5659581A (en) * | 1994-12-13 | 1997-08-19 | Paradyne Corporation | Modem receiver pre-emphasis |
US5877647A (en) * | 1995-10-16 | 1999-03-02 | Texas Instruments Incorporated | CMOS output buffer with slew rate control |
US5778217A (en) * | 1996-04-02 | 1998-07-07 | Lite-On Communications Corp. | Parallel signal processing device for high-speed timing |
US5757297A (en) * | 1996-06-07 | 1998-05-26 | International Business Machines Corporation | Method and apparatus for recovering a serial data stream using a local clock |
US5742798A (en) * | 1996-08-09 | 1998-04-21 | International Business Machines Corporation | Compensation of chip to chip clock skew |
US5896067A (en) * | 1996-09-24 | 1999-04-20 | Hewlett-Packard Company | Data processing apparatus and methods including a phase lock loop |
US5940442A (en) * | 1997-01-30 | 1999-08-17 | National Semioonductor Corporation | High speed data receiver |
US5898321A (en) * | 1997-03-24 | 1999-04-27 | Intel Corporation | Method and apparatus for slew rate and impedance compensating buffer circuits |
US6122757A (en) * | 1997-06-27 | 2000-09-19 | Agilent Technologies, Inc | Code generating system for improved pattern matching in a protocol analyzer |
US6304071B1 (en) * | 1998-01-09 | 2001-10-16 | Neomagic Corp. | Phase detector that samples a read signal at sampling points and delay |
US6760389B1 (en) * | 1998-06-01 | 2004-07-06 | Agere Systems Inc. | Data recovery for non-uniformly spaced edges |
US6541966B1 (en) * | 1998-06-27 | 2003-04-01 | Qinetiq Limited | Precision metal locating apparatus |
US6108801A (en) * | 1998-08-11 | 2000-08-22 | Cisco Systems, Inc. | Using profiles to perform Bit Error Rate Testing |
US6288563B1 (en) * | 1998-12-31 | 2001-09-11 | Intel Corporation | Slew rate control |
US6885691B1 (en) * | 1999-08-02 | 2005-04-26 | Lg Information & Communications, Ltd. | Scrambling codes and channelization codes for multiple chip rate signals in CDMA cellular mobile radio communication system |
US20040076192A1 (en) * | 1999-10-19 | 2004-04-22 | Rambus Inc. | Calibrated data communication system and method |
US6541996B1 (en) * | 1999-12-21 | 2003-04-01 | Ati International Srl | Dynamic impedance compensation circuit and method |
US6717985B1 (en) * | 2000-03-08 | 2004-04-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Technique for efficiently equalizing a transmission channel in a data transmission system |
US6574758B1 (en) * | 2000-03-10 | 2003-06-03 | Cisco Technology, Inc. | Testing a bus coupled between two electronic devices |
US6509756B1 (en) * | 2000-03-31 | 2003-01-21 | Rambus Inc. | Method and apparatus for low capacitance, high output impedance driver |
US20010043649A1 (en) * | 2000-05-22 | 2001-11-22 | Ramin Farjad-Rad | Analog N-tap FIR receiver equalizer |
US6262591B1 (en) * | 2000-05-30 | 2001-07-17 | International Business Machines Corporation | SOI small signal terminated receiver |
US6380758B1 (en) * | 2000-09-29 | 2002-04-30 | Intel Corporation | Impedance control for wide range loaded signals using distributed methodology |
US6417700B1 (en) * | 2000-10-23 | 2002-07-09 | Matsushita Electric Industrial Co., Ltd. | Voltage level detection circuit and voltage level detection method |
US6448806B1 (en) * | 2000-11-24 | 2002-09-10 | Agilent Technologies, Inc. | Circuit for providing a logical output signal in accordance with crossing points of differential signals |
US20020150184A1 (en) * | 2001-02-02 | 2002-10-17 | Abdulrauf Hafeez | Estimation and compensation of the pulse-shape response in wireless terminals |
US20030084385A1 (en) * | 2001-02-02 | 2003-05-01 | Jared Zerbe | Method and apparatus for evaluating and optimizing a signaling system |
US20030208707A9 (en) * | 2001-02-02 | 2003-11-06 | Jared Zerbe | Method and apparatus for evaluating and optimizing a signaling system |
US6760574B1 (en) * | 2001-04-17 | 2004-07-06 | Centillium Communications, Inc. | Two-dimensional signal detector with dynamic timing phase compensation |
US20020184564A1 (en) * | 2001-05-04 | 2002-12-05 | Ernst Muellner | Data regenerator with adjustable decision threshold and adjustable sampling instant |
US7054402B2 (en) * | 2001-05-04 | 2006-05-30 | Siemens Aktiengesellschaft | Data regenerator with adjustable decision threshold and adjustable sampling instant |
US20030002602A1 (en) * | 2001-06-08 | 2003-01-02 | Kwon Thomas D. | Receiver having decisional feedback equalizer with remodulation and related methods |
US20030016091A1 (en) * | 2001-06-29 | 2003-01-23 | Casper Bryan K. | Equalization of a transmission line signal using a variable offset comparator |
US7016445B2 (en) * | 2001-08-02 | 2006-03-21 | Texas Instruments Incorporated | Apparatus for and method of clock recovery from a serial data stream |
US20030093713A1 (en) * | 2001-09-14 | 2003-05-15 | Werner Carl W. | Multilevel signal interface testing with binary test apparatus by emulation of multilevel signals |
US20030070126A1 (en) * | 2001-09-14 | 2003-04-10 | Werner Carl W. | Built-in self-testing of multilevel signal interfaces |
US20030063664A1 (en) * | 2001-10-02 | 2003-04-03 | Bodenschatz John S. | Adaptive thresholding for adaptive equalization |
US6970681B2 (en) * | 2001-11-14 | 2005-11-29 | Broadcom, Corp. | Integrated multimode radio and components thereof |
US20030108096A1 (en) * | 2001-12-11 | 2003-06-12 | Steinbach Gunter W. | System and method for providing equalization in a multiphase communications receiver |
US6941483B2 (en) * | 2001-12-31 | 2005-09-06 | Hewlett-Packard Development Company, L.P. | Bus capability voting mechanism |
US20040001567A1 (en) * | 2002-01-25 | 2004-01-01 | Seng-Jun Wei | Dynamic phase tracking using edge detection |
US20030159094A1 (en) * | 2002-02-15 | 2003-08-21 | Smith Brian L. | IBIST identification loopback scheme |
US6724329B2 (en) * | 2002-04-24 | 2004-04-20 | Intel Corporation | Decision feedback equalization employing a lookup table |
US20040022311A1 (en) * | 2002-07-12 | 2004-02-05 | Zerbe Jared L. | Selectable-tap equalizer |
US20040071204A1 (en) * | 2002-10-11 | 2004-04-15 | James Gorecki | System and method of equalization of high speed signals |
US20040071205A1 (en) * | 2002-10-11 | 2004-04-15 | James Gorecki | System and method of equalization of high speed signals |
US20040071203A1 (en) * | 2002-10-11 | 2004-04-15 | James Gorecki | System and method of equalization of high speed signals |
US6979987B2 (en) * | 2002-11-14 | 2005-12-27 | Fyre Storm, Inc. | Method of regulating an output voltage of a power converter by sensing the output voltage during a first time interval and calculating a next current value in an inductor sufficient to bring the output voltage to a target voltage within a second time interval immediately following the first time interval and varying a duty cycle of a switch during the second time interval |
US20040141567A1 (en) * | 2003-01-22 | 2004-07-22 | Fuji Yang | Multi-level pulse amplitude modulation receiver |
US7099400B2 (en) * | 2003-01-22 | 2006-08-29 | Agere Systems Inc. | Multi-level pulse amplitude modulation receiver |
US6897712B2 (en) * | 2003-08-18 | 2005-05-24 | International Business Machines Corporation | Apparatus and method for detecting loss of high-speed signal |
US7092472B2 (en) * | 2003-09-16 | 2006-08-15 | Rambus Inc. | Data-level clock recovery |
Cited By (122)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7940877B1 (en) * | 2003-11-26 | 2011-05-10 | Altera Corporation | Signal edge detection circuitry and methods |
US7443913B2 (en) * | 2004-02-12 | 2008-10-28 | Texas Instruments Incorporated | High speed decision feedback equalizer |
US20050180498A1 (en) * | 2004-02-12 | 2005-08-18 | Texas Instruments Incorporated | High speed decision feedback equalizer |
US7555091B1 (en) * | 2004-10-26 | 2009-06-30 | National Semiconductor Corporation | System and method for providing a clock and data recovery circuit with a self test capability |
US20070025419A1 (en) * | 2005-08-01 | 2007-02-01 | Jody Greenberg | All digital implementation of clock spectrum spreading (dither) for low power/die area |
US7221704B2 (en) * | 2005-08-01 | 2007-05-22 | Marvell World Trade Ltd. | All digital implementation of clock spectrum spreading (dither) for low power/die area |
US8090010B2 (en) | 2005-08-01 | 2012-01-03 | Marvell World Trade Ltd. | All digital implementation of clock spectrum spreading (dither) for low power/die area |
US8731021B2 (en) | 2005-08-01 | 2014-05-20 | Marvell World Trade Ltd. | All digital implementation of clock spectrum spreading (dither) for low power/die area |
US7697647B1 (en) * | 2005-10-03 | 2010-04-13 | Avaya Inc. | Method and system for switching between two (or more) reference signals for clock synchronization |
US8111796B2 (en) | 2005-10-03 | 2012-02-07 | Avaya Inc. | Method and system for switching between two (or more) reference signals for clock synchronization |
US20100172455A1 (en) * | 2005-10-03 | 2010-07-08 | Avaya Inc. | Method and system for switching between two (or more) reference signals for clock synchronization |
US7995619B2 (en) * | 2005-10-27 | 2011-08-09 | International Business Machines Corporation | Methods and arrangements to model an asynchronous interface |
US20080192645A1 (en) * | 2005-10-27 | 2008-08-14 | Yee Ja | Methods and Arrangements to Model an Asynchronous Interface |
US20070098020A1 (en) * | 2005-10-27 | 2007-05-03 | Yee Ja | Methods and arrangements to model an asynchronous interface |
US9912469B2 (en) | 2006-04-04 | 2018-03-06 | Rambus Inc. | Phase control block for managing multiple clock domains in systems with frequency offsets |
US10454667B2 (en) | 2006-04-04 | 2019-10-22 | Rambus Inc. | Phase control block for managing multiple clock domains in systems with frequency offsets |
US9515814B2 (en) | 2006-04-04 | 2016-12-06 | Rambus Inc. | Phase control block for managing multiple clock domains in systems with frequency offsets |
US11063741B2 (en) | 2006-04-04 | 2021-07-13 | Rambus Inc. | Phase control block for managing multiple clock domains in systems with frequency offsets |
US9106399B2 (en) * | 2006-04-04 | 2015-08-11 | Rambus Inc. | Phase control block for managing multiple clock domains in systems with frequency offsets |
US20150030113A1 (en) * | 2006-04-04 | 2015-01-29 | Rambus Inc. | Phase Control Block for Managing Multiple Clock Domains in Systems with Frequency Offsets |
US7839958B2 (en) * | 2006-05-30 | 2010-11-23 | Fujitsu Limited | System and method for the adjustment of compensation applied to a signal |
US20070280342A1 (en) * | 2006-05-30 | 2007-12-06 | Fujitsu Limited | System and Method for the Adjustment of Compensation Applied to a Signal |
US9391816B2 (en) | 2006-11-16 | 2016-07-12 | Rambus Inc. | Edge based partial response equalization |
US10855496B2 (en) | 2006-11-16 | 2020-12-01 | Rambus Inc. | Edge based partial response equalization |
US20140016692A1 (en) * | 2006-11-16 | 2014-01-16 | Rambus Inc. | Edge based partial response equalization |
US8811553B2 (en) * | 2006-11-16 | 2014-08-19 | Rambus Inc. | Edge based partial response equalization |
US11489703B2 (en) | 2006-11-16 | 2022-11-01 | Rambus Inc. | Edge based partial response equalization |
US10044530B2 (en) | 2006-11-16 | 2018-08-07 | Rambus Inc. | Edge based partial response equalization |
US8325704B1 (en) * | 2007-05-16 | 2012-12-04 | Dust Networks, Inc. | Time correction and distance measurement in wireless mesh networks |
KR101119317B1 (en) * | 2007-07-02 | 2012-03-20 | 마이크론 테크놀로지, 인크. | Fractional-rate decision feedback equalization useful in a data transmission system |
TWI393147B (en) * | 2007-07-02 | 2013-04-11 | Micron Technology Inc | Fractional-rate decision feedback equalization useful in a data transmission system |
US8537953B2 (en) * | 2007-09-14 | 2013-09-17 | Realtek Semiconductor Corp. | Time-interleaved clock-data recovery and method thereof |
US20090074125A1 (en) * | 2007-09-14 | 2009-03-19 | Realtek Semiconductor Corp. | Time-interleaved clock-data recovery and method thereof |
KR101368413B1 (en) | 2007-10-31 | 2014-03-04 | 삼성전자 주식회사 | DFE circuits for use in semiconductor memory device and method for initializing the same |
US8139697B2 (en) * | 2008-01-29 | 2012-03-20 | United Microelectronics Corp. | Sampling method and data recovery circuit using the same |
US20090190703A1 (en) * | 2008-01-29 | 2009-07-30 | United Microelectronics Corp. | Sampling method and data recovery circuit using the same |
US8355431B2 (en) | 2008-09-08 | 2013-01-15 | Hynix Semiconductor, Inc. | Decision feedback equalizer having clock recovery circuit and method for recovering clock |
TWI405442B (en) * | 2008-09-08 | 2013-08-11 | Hynix Semiconductor Inc | Decision feedback equalizer having clock recovery circuit and method for recovering clock |
US20100061440A1 (en) * | 2008-09-08 | 2010-03-11 | Hynix Semiconductor, Inc. | Decision feedback equalizer having clock recovery circuit and method for recovering clock |
US10044452B2 (en) | 2010-05-20 | 2018-08-07 | Kandou Labs, S.A. | Methods and systems for skew tolerance in and advanced detectors for vector signaling codes for chip-to-chip communication |
US9985634B2 (en) | 2010-05-20 | 2018-05-29 | Kandou Labs, S.A. | Data-driven voltage regulator |
US10468078B2 (en) | 2010-05-20 | 2019-11-05 | Kandou Labs, S.A. | Methods and systems for pin-efficient memory controller interface using vector signaling codes for chip-to-chip communication |
US8594262B2 (en) | 2010-06-17 | 2013-11-26 | Transwitch Corporation | Apparatus and method thereof for clock and data recovery of N-PAM encoded signals using a conventional 2-PAM CDR circuit |
US10164809B2 (en) | 2010-12-30 | 2018-12-25 | Kandou Labs, S.A. | Circuits for efficient detection of vector signaling codes for chip-to-chip communication |
US20140010336A1 (en) * | 2011-03-29 | 2014-01-09 | Fujitsu Limited | Phase correction circuit and phase correction method |
US11374801B2 (en) | 2013-04-16 | 2022-06-28 | Kandou Labs, S.A. | Methods and systems for high bandwidth communications interface |
US10091035B2 (en) | 2013-04-16 | 2018-10-02 | Kandou Labs, S.A. | Methods and systems for high bandwidth communications interface |
US9985745B2 (en) | 2013-06-25 | 2018-05-29 | Kandou Labs, S.A. | Vector signaling with reduced receiver complexity |
WO2015016831A1 (en) * | 2013-07-30 | 2015-02-05 | Hewlett-Packard Development Company, L.P. | Process partial response channel |
US10177812B2 (en) | 2014-01-31 | 2019-01-08 | Kandou Labs, S.A. | Methods and systems for reduction of nearest-neighbor crosstalk |
US10348436B2 (en) | 2014-02-02 | 2019-07-09 | Kandou Labs, S.A. | Method and apparatus for low power chip-to-chip communications with constrained ISI ratio |
US10020966B2 (en) | 2014-02-28 | 2018-07-10 | Kandou Labs, S.A. | Vector signaling codes with high pin-efficiency for chip-to-chip communication and storage |
US9160582B1 (en) * | 2014-03-31 | 2015-10-13 | Cadence Design Systems, Inc. | System and method for phase recovery with selective mitigation of timing corruption due to digital receiver equalization |
US10333749B2 (en) | 2014-05-13 | 2019-06-25 | Kandou Labs, S.A. | Vector signaling code with improved noise margin |
US10091033B2 (en) | 2014-06-25 | 2018-10-02 | Kandou Labs, S.A. | Multilevel driver for high speed chip-to-chip communications |
US10320588B2 (en) | 2014-07-10 | 2019-06-11 | Kandou Labs, S.A. | Vector signaling codes with increased signal to noise characteristics |
US10003424B2 (en) | 2014-07-17 | 2018-06-19 | Kandou Labs, S.A. | Bus reversible orthogonal differential vector signaling codes |
US10230549B2 (en) | 2014-07-21 | 2019-03-12 | Kandou Labs, S.A. | Multidrop data transfer |
US10122561B2 (en) | 2014-08-01 | 2018-11-06 | Kandou Labs, S.A. | Orthogonal differential vector signaling codes with embedded clock |
CN105391660A (en) * | 2014-08-28 | 2016-03-09 | 联发科技股份有限公司 | method for performing loop unrolled decision feedback equalization in an electronic device |
US9479365B2 (en) * | 2014-08-28 | 2016-10-25 | Mediatek Inc. | Method for performing loop unrolled decision feedback equalization in an electronic device with aid of voltage feedforward, and associated apparatus |
US10243765B2 (en) | 2014-10-22 | 2019-03-26 | Kandou Labs, S.A. | Method and apparatus for high speed chip-to-chip communications |
US10116472B2 (en) | 2015-06-26 | 2018-10-30 | Kandou Labs, S.A. | High speed communications system |
US11949539B2 (en) | 2015-07-28 | 2024-04-02 | Rambus Inc. | Burst-tolerant decision feedback equalization |
US10348480B2 (en) * | 2015-07-28 | 2019-07-09 | Rambus Inc. | Collaborative clock and data recovery |
US11184197B2 (en) * | 2015-07-28 | 2021-11-23 | Rambus Inc. | Burst-tolerant decision feedback equalization |
US20180152284A1 (en) * | 2015-07-28 | 2018-05-31 | Rambus Inc. | Collaborative clock and data recovery |
US20180343150A1 (en) * | 2015-11-23 | 2018-11-29 | Intel Corporation | Electrical systems and methods for performing out-of-band communications |
US11153136B2 (en) * | 2015-11-23 | 2021-10-19 | Apple Inc. | Electrical systems and methods for performing out-of-band communications |
US10324876B2 (en) | 2015-11-25 | 2019-06-18 | Kandou Labs, S.A. | Orthogonal differential vector signaling codes with embedded clock |
US10055372B2 (en) | 2015-11-25 | 2018-08-21 | Kandou Labs, S.A. | Orthogonal differential vector signaling codes with embedded clock |
US10003315B2 (en) | 2016-01-25 | 2018-06-19 | Kandou Labs S.A. | Voltage sampler driver with enhanced high-frequency gain |
US10389555B2 (en) * | 2016-01-28 | 2019-08-20 | Hewlett Packard Enterprise Development Lp | Phase delay difference-based channel compensation |
US10242749B2 (en) | 2016-04-22 | 2019-03-26 | Kandou Labs, S.A. | Calibration apparatus and method for sampler with adjustable high frequency gain |
US10057049B2 (en) | 2016-04-22 | 2018-08-21 | Kandou Labs, S.A. | High performance phase locked loop |
US10587394B2 (en) | 2016-04-22 | 2020-03-10 | Kandou Labs, S.A. | High performance phase locked loop |
US11265140B2 (en) | 2016-04-22 | 2022-03-01 | Kandou Labs, S.A. | High performance phase locked loop |
US10003454B2 (en) | 2016-04-22 | 2018-06-19 | Kandou Labs, S.A. | Sampler with low input kickback |
US11606186B2 (en) | 2016-04-22 | 2023-03-14 | Kandou Labs, S.A. | High performance phase locked loop |
US10374787B2 (en) * | 2016-04-22 | 2019-08-06 | Kandou Labs, S.A. | High performance phase locked loop |
US11165611B2 (en) | 2016-04-28 | 2021-11-02 | Kandou Labs, S.A. | Clock data recovery with decision feedback equalization |
US10056903B2 (en) | 2016-04-28 | 2018-08-21 | Kandou Labs, S.A. | Low power multilevel driver |
US11671288B2 (en) | 2016-04-28 | 2023-06-06 | Kandou Labs, S.A. | Clock data recovery with decision feedback equalization |
US10193716B2 (en) | 2016-04-28 | 2019-01-29 | Kandou Labs, S.A. | Clock data recovery with decision feedback equalization |
US10785072B2 (en) | 2016-04-28 | 2020-09-22 | Kandou Labs, S.A. | Clock data recovery with decision feedback equalization |
US10153591B2 (en) | 2016-04-28 | 2018-12-11 | Kandou Labs, S.A. | Skew-resistant multi-wire channel |
US12003354B2 (en) | 2016-04-28 | 2024-06-04 | Kandou Labs, S.A. | Clock data recovery with decision feedback equalization |
US10333741B2 (en) | 2016-04-28 | 2019-06-25 | Kandou Labs, S.A. | Vector signaling codes for densely-routed wire groups |
US10355852B2 (en) | 2016-08-31 | 2019-07-16 | Kandou Labs, S.A. | Lock detector for phase lock loop |
US10277431B2 (en) | 2016-09-16 | 2019-04-30 | Kandou Labs, S.A. | Phase rotation circuit for eye scope measurements |
US11245402B2 (en) | 2016-09-16 | 2022-02-08 | Kandou Labs, S.A. | Matrix phase interpolator for phase locked loop |
US10965290B2 (en) | 2016-09-16 | 2021-03-30 | Kandou Labs, S.A. | Phase rotation circuit for eye scope measurements |
US11632114B2 (en) | 2016-09-16 | 2023-04-18 | Kandou Labs, S.A. | Data-driven phase detector element for phase locked loops |
US11018675B2 (en) | 2016-09-16 | 2021-05-25 | Kandou Labs, S.A. | Matrix phase interpolator for phase locked loop |
US10411922B2 (en) * | 2016-09-16 | 2019-09-10 | Kandou Labs, S.A. | Data-driven phase detector element for phase locked loops |
US10200188B2 (en) | 2016-10-21 | 2019-02-05 | Kandou Labs, S.A. | Quadrature and duty cycle error correction in matrix phase lock loop |
US11675732B2 (en) | 2016-10-24 | 2023-06-13 | Kandou Labs, S.A. | Multiphase data receiver with distributed DFE |
US10200218B2 (en) | 2016-10-24 | 2019-02-05 | Kandou Labs, S.A. | Multi-stage sampler with increased gain |
US11036672B2 (en) | 2016-10-24 | 2021-06-15 | Kandou Labs, S.A. | Multiphase data receiver with distributed DFE |
US10372665B2 (en) | 2016-10-24 | 2019-08-06 | Kandou Labs, S.A. | Multiphase data receiver with distributed DFE |
US10326620B2 (en) | 2017-05-31 | 2019-06-18 | Kandou Labs, S.A. | Methods and systems for background calibration of multi-phase parallel receivers |
US10116468B1 (en) | 2017-06-28 | 2018-10-30 | Kandou Labs, S.A. | Low power chip-to-chip bidirectional communications |
US10686583B2 (en) | 2017-07-04 | 2020-06-16 | Kandou Labs, S.A. | Method for measuring and correcting multi-wire skew |
US10203226B1 (en) | 2017-08-11 | 2019-02-12 | Kandou Labs, S.A. | Phase interpolation circuit |
US10347283B2 (en) | 2017-11-02 | 2019-07-09 | Kandou Labs, S.A. | Clock data recovery in multilane data receiver |
US10673548B2 (en) | 2017-12-07 | 2020-06-02 | Kandou Labs, S.A. | Decision feedback equalization correction of eye scope measurements |
US11177894B2 (en) | 2017-12-07 | 2021-11-16 | Kandou Labs, S.A. | Decision feedback equalization correction of eye scope measurements |
US10887030B2 (en) | 2017-12-07 | 2021-01-05 | Kandou Labs, S.A. | Decision feedback equalization correction of eye scope measurements |
US11233677B2 (en) | 2017-12-08 | 2022-01-25 | Kandou Labs, S.A. | Methods and systems for providing multi-stage distributed decision feedback equalization |
US10326623B1 (en) | 2017-12-08 | 2019-06-18 | Kandou Labs, S.A. | Methods and systems for providing multi-stage distributed decision feedback equalization |
US10812298B2 (en) | 2017-12-08 | 2020-10-20 | Kandou Labs, S.A. | Methods and systems for providing multi-stage distributed decision feedback equalization |
US10554380B2 (en) | 2018-01-26 | 2020-02-04 | Kandou Labs, S.A. | Dynamically weighted exclusive or gate having weighted output segments for phase detection and phase interpolation |
US11115246B2 (en) | 2019-04-08 | 2021-09-07 | Kandou Labs, S.A. | Sampler offset calibration during operation |
US10848351B2 (en) | 2019-04-08 | 2020-11-24 | Kandou Labs, S.A. | Sampler offset calibration during operation |
US10721106B1 (en) | 2019-04-08 | 2020-07-21 | Kandou Labs, S.A. | Adaptive continuous time linear equalization and channel bandwidth control |
US10574487B1 (en) | 2019-04-08 | 2020-02-25 | Kandou Labs, S.A. | Sampler offset calibration during operation |
US11212073B2 (en) * | 2019-04-16 | 2021-12-28 | Nvidia Corp. | Clock data recovery convergence using signed timing injection |
US10999051B2 (en) * | 2019-09-18 | 2021-05-04 | Nvidia Corp. | Reference noise compensation for single-ended signaling |
US11595234B2 (en) | 2020-09-24 | 2023-02-28 | Changxin Memory Technologies, Inc. | Equalizer circuit, method for sampling data and memory |
US11881281B2 (en) | 2020-09-24 | 2024-01-23 | Changxin Memory Technologies, Inc. | Dual reference voltage generator, equalizer circuit, and memory |
US11477004B1 (en) * | 2021-03-23 | 2022-10-18 | Nvidia Corp. | Clock data recovery convergence in modulated partial response systems |
US20220311592A1 (en) * | 2021-03-23 | 2022-09-29 | Nvidia Corp. | Clock Data Recovery Convergence In Modulated Partial Response Systems |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11502878B2 (en) | Partial response receiver | |
US7308048B2 (en) | System and method for selecting optimal data transition types for clock and data recovery | |
US7092472B2 (en) | Data-level clock recovery | |
JP2007525061A6 (en) | Partial response receiver | |
EP1698131A1 (en) | High speed signaling system with adaptive transmit pre-emphasis, reflection cancellation and offset cancellation | |
EP1626547B1 (en) | Partial response receiver |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: RAMBUS, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GARLEPP, BRUNO W;ZERBE, JARED L;JEERADIT, METHA;AND OTHERS;REEL/FRAME:017714/0790;SIGNING DATES FROM 20060526 TO 20060601 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20201007 |
|
AS | Assignment |
Owner name: K.MIZRA LLC, FLORIDA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:RAMBUS INC.;REEL/FRAME:065229/0338 Effective date: 20230928 |