1. Field of the Invention
This application is related to integrated circuits and more particularly to data communications links between integrated circuits.
2. Description of the Related Art
System level characterization at pins of an integrated circuit in a data communications system operating at high frequency rates (e.g., 1.0 GHz or greater) may be difficult to measure and may not provide useful information with respect to signal characteristics at the integrated circuit pad. Therefore, it is difficult to quantify the operating margin of a particular data communications system. Probing signals at the integrated circuit pad may be impracticable in some systems and in other systems may not provide information regarding the response of an input amplifier to complex voltage waveforms delivered by a channel. Although it may be possible to measure global voltage margin and global frequency margin of the system, such techniques do not provide direct information about electrical parameters of a specific communications link, e.g., time margin at the receiver of a sampling device. Accordingly, improved techniques for characterizing and testing a communications link are desired.
A technique for characterizing a communications interface includes determining a voltage margin and a timing margin of the interface based on data sampled by a sampling device of a receiver of the interface. In at least one embodiment of the invention, a method for determining margin associated with a receiver circuit of an integrated circuit includes periodically sampling a signal over a time period by a receiver sampling circuit of the receiver circuit to generate a sampled version of the signal. The method includes incrementally varying a value of the parameter associated with the signal. The varying of the parameter is through a range of values of the parameter over the time period. The method includes determining a margin value of the receiver circuit associated with the parameter based, at least in part, on the sampled version of the signal.
In at least one embodiment of the invention, an apparatus includes an integrated circuit including a transmitter circuit configured to transmit a first signal over a first communications path. The integrated circuit includes a receiver circuit configured to receive a second signal over a second communications path. At least one of the transmitter circuit and the receiver circuit is configured to incrementally vary a phase alignment of a sample clock signal used by the receiver circuit to sample the second signal, the varying of the phase alignment being through a range of values of the phase alignment over a time period.
The present invention may be better understood, and its numerous objects, features, and advantages made apparent to those skilled in the art by referencing the accompanying drawings.
The use of the same reference symbols in different drawings indicates similar or identical items.
Referring to
The communications link of
In general, voltage margin and timing margin of the sampling device of a receive interface are indicators of the ability of the receive interface to properly recover data received by an integrated circuit node transmitted across a data communications link by another integrated circuit node. In particular, voltage margin and timing margin of the receive interface are indicators of the ability of the receive interface to sample the data during an appropriate phase of the data signal and to distinguish between voltages corresponding to high and low logic levels, respectively. Accordingly, techniques for performing timing margining and voltage margining at the sampling device of the receiver interface provide additional information that is useful in characterizing a communications link and estimating a corresponding system level BER.
Referring to
In at least one embodiment, individual ones of clock phase recovery circuits 204 generate a sample clock signal for sampling the received data signal at the center of a data eye of the received data signal. The phase difference between the received clock signal and the received data signal may be nonstationary, i.e., this phase difference varies during a period of communications link operation. Thus, the delay applied to the received clock signal to generate the sample clock signal is adjusted during the period of communications link operation, accordingly. In at least one embodiment of clock phase recovery circuits 204, the phase difference between the received clock signal and the received data signal at the receiver is less than a particular transport phase difference threshold value (e.g., 3 unit intervals or bit-times). However, the phase difference between the sample clock signal and the received data signal may be greater than that particular transport phase difference threshold value.
An exemplary clock phase recovery circuit (e.g., clock phase recovery circuit 204), consistent with at least one embodiment of the invention, is illustrated in
During data communications operations, control logic circuit 314 generates digital control signals (e.g., PSEL, Wi, and Wi+1) for adjusting the sample clock signal based on a comparison of CAD4_OUT to CAD4_PHI. Control logic circuit 314 controls a phase selection and phase interpolation circuit, (e.g., phase select and phase interpolator circuit 312) to generate the sample clock signal based at least in part on the received clock signal to generate the sample clock signal having a target phase relationship to the received data signal. For example, control logic circuit 314 may generate control signals PSEL, Wi, and Wi+1 to apply an appropriate delay to the received clock signal to generate the sample clock signal to sample the received data signal in substantially the center of the data eye. Referring to
Referring back to
Delay-locked loop 310 includes a feedback loop including phase detector 320, which may be any suitable phase detector that compares the received clock signal to a delayed version of the received clock signal to generate a phase difference signal. That phase difference is applied to delay line 323. For example, delay line 323 may be a voltage-controlled delay line. The phase difference may be converted by phase-to-voltage circuit 322 into a voltage (e.g., P2V_OUT) that is applied to delay line 323 to adjust the delay of individual delay elements of the delay line to be equivalent and to have a duration that provides a cumulative delay of the delay line equal to the period of the received clock. In at least one embodiment of the invention, the delay line is a current-controlled delay line and the phase difference is converted by an appropriate circuit, accordingly. Phase signals φ0, φ1, . . . , φn-1 are versions of the received clock delayed by equivalent increments from next adjacent phase signals. Those phase signals may be generated by tapping off nodes of the delay line. In an exemplary DLL 310, DLL 310 locks at the 180° point of the received clock signal, which is a half-rate clock signal (e.g., 2.6 GHz at a 5.2 Gbps data rate) to provide a total delay that is equal to one unit interval or bit-time (e.g., 192 ps for a 2.6 GHz received clock signal).
In an exemplary embodiment of clock phase recovery circuit 204, DLL 310 is a delay line that includes two complementary delay lines driven by complementary versions of the received clock signal. The two complementary delay lines are tapped after each inverter of the delay lines to provide phase-adjacent signals separated by only one inverter delay, thereby improving phase resolution by a factor of two of the individual delay lines. In such an exemplary DLL 310, DLL 310 locks at the 180° point of the received clock signal, which is a half-rate clock signal (e.g., 2.6 GHz at a 5.2 Gbps data rate) to provide a delay of the individual ones of the complementary delay lines that is equal to one unit interval or bit-time (e.g., 192.3 ps for a 2.6 GHz received clock signal). Delay-locked loop 310 outputs true taps from delay line 323 (e.g., φ0, φ1, . . . , φ5), which provide the first 180° of phase signals. In addition, DLL 310 outputs complement taps (e.g., φ0B, φ1B, . . . , φ5B), which provide the second 180° of phase signals. The 12 phase signals cover the 360° of phase with 30° of separation between adjacent phases, each phase signal providing a delay of (30°/360°)×(1/2.6 GHz)=32.05 ps.
Since DLL 310 outputs only discrete values and the phase difference between the received clock signal and the received data signal may not be exactly one of these discrete values, phase select and phase interpolator circuit 312 selects (e.g., according to PSEL) two adjacent phase signals that have phases with respect to the received clock signal that are nearest to the phase difference to be applied to the received clock signal for use in generating the sample clock signal. Those two adjacent phase signals (e.g., φ1 and φi+1) are received by phase interpolator circuit 326 and a phase interpolation of the two adjacent phase signals may be performed to generate an interpolated clock signal (e.g., PI_OUT) that is used to generate the sample clock signal. Phase interpolator circuit 326 may be any suitable phase interpolation circuit. Phase interpolator designs are well known in the art and are typically dependent upon the particular DLL implementation and electrical parameters of the interface in which they operate.
The phase difference between the received clock signal and the received data signal may not fall exactly between the selected adjacent phase signals and phase interpolator 326 may not apply an equal weight to each of the adjacent phase signals. Rather, phase interpolator 326 may receive control signals (e.g., weighting signals Wi and Wi+1) generated by control logic 314 that indicate an appropriate weighting function for application to phase signals φ1 and φi+1 to generate the signal having an intermediate phase, e.g., PI_OUT. Accordingly, PI_OUT is an interpolated version of φi and φi+1 having a particular phase relationship with the received data signal and is used to generate the sample clock signal, which may be phase aligned with the center of the data eye of the received data signal.
In at least one embodiment of phase interpolator circuit 326, weighting signals Wi and Wi+1 are four bits wide, i.e., each of the phase signals φi and φi+1 may be weighted by sixteen different values. For example, DLL 310 provides only the exemplary discrete values 0°, 30°, 60°, 90°, 120°, . . . , 330° phase shift signals. To obtain a phase shift of 10°, which is between the discrete phase shifts of 0° and 30°, control logic 314 provides a value for Wi that weights φi at ⅔ and a value for Wi+1 that weights φi+1 at ⅓ (e.g., 0°×⅔+30°×⅓=10°).
Referring back to
In at least one embodiment of the invention, in a low-power mode, neither clock nor data are transmitted by transmit interface 110 on CLK or a corresponding data line. However, since phase and control information in clock phase recovery circuit 204 may be stored in a digital state, clock phase recovery circuit 204 may recover from the low-power mode by maintaining or restoring the digital state from a previously known digital state. Upon resumption of data transmission, the clock phase recovery will be faster than if DLL 310 achieves lock from an initialization state. In another low-power mode, transmit interface 110 may send a clock signal on CLK, but not send data on an individual one of CTL or CAD[n:0]. Delay-locked loop 310 may continue to operate and adjust the delay of the delay line 323. Upon resumption of data transmission, the clock phase recovery will be faster than if DLL 310 achieves lock from a previous state or from an initialization state.
In at least one embodiment of clock phase recovery circuit 204, control logic circuit 314 implements a technique for moving phase settings independent of the feedback loop in clock phase recovery circuit 204, thereby providing a mechanism to perform time margining at the input of sampling circuit 305. Since control logic circuit 314 stores phase information in a digital state (e.g., in phase counter 338) of
Referring to
In at least one embodiment of jitter injection circuit 336, a phase movement step of a predetermined value is controlled by a predetermined number of control bits to introduce different sized phase movements from the nominal sample point of the sample clock signal. For example, a phase movement step of two picoseconds associated with eight bits of control provides 128 different phase movements in either direction from the nominal sample point of the sample clock signal. In at least one embodiment of jitter injection circuit 336, a software-accessible control and status register is used to trigger a programmed movement of a phase counter 338 to shift the position of the sample clock signal away from a nominal position (e.g., edge of sample clock in the center of the receive data eye). A sign bit indicates a direction of the shift, e.g., a ‘0’ results in a movement to the left of the nominal position and a ‘1’ results in a movement to the right of the nominal position. The amount of phase movement injected (e.g., in terms of phase interpolator steps) is digitally controlled by multiple bits in the control and status register. For example, a number of bits in the control and status register may be used to control a high phase and a low phase of the jitter injection clock. During the high phase of the jitter injection clock, an individual tick of the sample clock includes a phase movement corresponding to the number of steps and direction indicated in the control and status register. Phase counter circuit 338 generates control signals for phase select and phase interpolation circuit 312, accordingly.
Referring to
Next, integrated circuit 104 may reconfigure receive interface 114 with jitter injection disabled and communications are established between integrated circuit 102 and 104 over transmit interface 110 and receive interface 114, respectively (712). DLL 310 achieves lock of CAD4_SCLK to the center of the received data eye and establishes data communications between integrated circuit 102 and integrated circuit 104 via transmit interface 110 and receive interface 114, respectively. The sample clock signal samples the received data signal at the expected nominal point (714). The sampled data is either stored internal to integrated circuit 102 or communicated off-chip, (716). Integrated circuit 104 may determine whether a BER determined from the sampled data equals or exceeds a threshold BER value. If the BER is within an acceptable range (720), integrated circuit 104 may then enable jitter injection and adjust the sample point by one or more phase interpolator increments in a second direction (718) from the expected nominal sample point. Integrated circuit 104 may continue data communications and storage and/or transfer of data for analysis until a maximum jitter is injected or until a bit-error rate (i.e., BER) determined from the sampled data equals or exceeds a threshold BER value (720).
After performing jitter injection in both directions from the expected nominal sample point, BERs are determined from the stored/communicated data and analyzed (722). For example, the data are analyzed to determine whether the expected nominal sample point is an actual nominal sample point that samples the received data signal in the center of the bit time. The data may also be used to determine timing margin, i.e., the amount that the sample clock may vary from an actual nominal sample point and maintain a BER below a specified BER. That information may be used to configure the interface of the system and/or a plurality of other systems having the same configuration as the margined system (724). For example, integrated circuits 102 and 104 may be included in a reference system on a printed circuit board and coupled to particular devices by traces on the printed circuit board that substantially fix the channel characteristics between respective ones of transmit interface 110 and receive interface 114. Other systems having the same configuration as the reference system (but on other printed circuit boards) may have substantially the same, substantially fixed, channel characteristics. Thus, control settings determined for transmit interface 110 and receive interface 114 of integrated circuits 102 and 104, respectively, may also be used for the plurality of other systems having the same configuration as the reference system.
Referring to
Referring back to
Although transmit voltage margining circuitry and transmit de-emphasis equalization circuitry may be separate circuits in transmit interface 110, in at least one embodiment of the invention, circuitry used for transmit equalization is also used for voltage margining. In at least one embodiment of transmit interface 110, the transmitter equalization circuit implements de-emphasis equalization. The transmit de-emphasis equalization may be pre-cursor (i.e., the amplitude changes in the bit-time before transition of the signal to a new logic value) or post-cursor (i.e., the amplitude changes after transition of the signal to a new logic value) de-emphasis equalization. An exemplary post-cursor transmit de-emphasis equalizer compensates for high-frequency loss characteristics of the channel by using a programmable amount of post-cursor de-emphasis. The differential output level that is transmitted after remaining at the same logic level for more than one bit-time is programmable. For example, an exemplary post-cursor transmit equalization filter may have the following transfer function:
H(z)=1+b1×z−1+b2×z−2+b3×z−3.
The exemplary de-emphasis level for post-cursor transmit de-emphasis equalization may be calculated in dB:
Referring to
Referring back to
Referring to
After the output voltage has been varied over the programmable range, BERs determined from the stored/communicated data are analyzed (1212). For example, the data are analyzed to determine a voltage margin, i.e., the amount that the transmit voltage swing may vary from the full-swing voltage and maintain a BER below a specified BER. The information may be used alone or in combination with time margining information, global frequency margining, global timing margining information, or other combinations thereof, as described above, to configure the communications interface. In addition, a plurality of other systems having the same configuration as the communications interface of a reference system may be based on the margin information.
In at least one embodiment of the invention, integrated circuits 102 and 104 may be included in a reference system on a printed circuit board and coupled to particular devices by traces on the printed circuit board that substantially fix the channel characteristics between respective ones of transmit interface 110 and receive interface 114. In at least one embodiment of the invention integrated circuits 102 and 104 are embedded in a single integrated circuit die included in a reference system and coupled by traces on the integrated circuit die that substantially fix the channel characteristics between respective ones of transmit interface 110 and receive interface 114. In addition, although
If the communications link is configured with one or more parameters (e.g., phase of sample clock or voltage swing levels) causing the communications link to operate near a failure point associated with the one or more of the parameters, adjustment(s) to the one or more parameters (e.g., voltage swing and/or phase of the sample clock) may cause a steep change in the BER. That is, a small adjustment to the one or more parameters may change the BER from a relatively low BER (e.g., one error in every 1012 bit-times) to a relatively high BER (e.g., at least one error in every 106 bit-times). Thus, in some configurations, coarse information at the failure point provided by timing margining and voltage margining at the sampling device of the receiver interface may be insufficient to generate an accurate BER contour plot. Referring to
While circuits and physical structures are generally presumed, it is well recognized that in modern semiconductor design and fabrication, physical structures and circuits may be embodied in computer-readable descriptive form suitable for use in subsequent design, test or fabrication stages. Structures and functionality presented as discrete components in the exemplary configurations may be implemented as a combined structure or component. The invention is contemplated to include circuits, systems of circuits, related methods, and computer-readable medium encodings of such circuits, systems, and methods, all as described herein, and as defined in the appended claims. As used herein, a computer-readable medium includes at least disk, tape, or other magnetic, optical, semiconductor (e.g., flash memory cards, ROM), or electronic medium.
The description of the invention set forth herein is illustrative, and is not intended to limit the scope of the invention as set forth in the following claims. For example, while the invention has been described in an embodiment in which the voltage swing of the signal communicated between transmit interface 110 and receive interface 114 is adjusted by the transmit interface 110, one of skill in the art will appreciate that the teachings herein can be utilized to modify the voltage swing of that signal at the receive interface 114 prior to the sampling device. In addition, while the invention has been described in an embodiment in which the phase of the sample clock communicated between transmit interface 110 and receive interface 114 is adjusted by receive interface 114, one of skill in the art will appreciate that the teachings herein can be utilized to modify the phase of that signal at transmit interface 110. Techniques described herein may be used to decrease a period of time over which a BER is measured during time margining by using voltage margining techniques and/or to decrease a period of time over which a BER is measured during voltage margining by using time margining techniques. Variations and modifications of the embodiments disclosed herein, may be made based on the description set forth herein, without departing from the scope and spirit of the invention as set forth in the following claims.
This application claims benefit under 35 U.S.C. §119 of provisional application No. 60/786,546, filed Mar. 28, 2006, entitled “Method and Apparatus for Link Operations,” naming Gerry R. Talbot, Paul Miranda, Mark D. Hummel, William A. Hughes, and Larry D. Hewitt as inventors, which application is incorporated by reference herein.
Number | Name | Date | Kind |
---|---|---|---|
5285122 | Honda et al. | Feb 1994 | A |
5465065 | Stevens | Nov 1995 | A |
5652530 | Ashuri | Jul 1997 | A |
5742798 | Goldrian | Apr 1998 | A |
5923715 | Ono | Jul 1999 | A |
6300802 | Smetana | Oct 2001 | B1 |
6337590 | Millar | Jan 2002 | B1 |
6433579 | Wang et al. | Aug 2002 | B1 |
6437599 | Groen | Aug 2002 | B1 |
6445223 | Thilenius | Sep 2002 | B1 |
6493409 | Lin et al. | Dec 2002 | B1 |
6496048 | Sikkink | Dec 2002 | B1 |
6504397 | Hart et al. | Jan 2003 | B1 |
6633190 | Alvandpour et al. | Oct 2003 | B1 |
6664814 | Evans et al. | Dec 2003 | B1 |
6665347 | van Bavel et al. | Dec 2003 | B2 |
6670835 | Yoo | Dec 2003 | B2 |
6919742 | McGlinchey | Jul 2005 | B1 |
6920540 | Hampel et al. | Jul 2005 | B2 |
6940302 | Shumarayev et al. | Sep 2005 | B1 |
6959062 | Stubbs | Oct 2005 | B1 |
7109767 | Amick et al. | Sep 2006 | B1 |
7126429 | Mitric | Oct 2006 | B2 |
7145359 | Hein et al. | Dec 2006 | B2 |
7256636 | Kumar et al. | Aug 2007 | B2 |
7271634 | Daga et al. | Sep 2007 | B1 |
7317769 | Tonietto et al. | Jan 2008 | B2 |
7425858 | Daga | Sep 2008 | B1 |
7483688 | Huang et al. | Jan 2009 | B2 |
7492816 | Wong et al. | Feb 2009 | B1 |
7643563 | Huang et al. | Jan 2010 | B2 |
20030002607 | Mooney et al. | Jan 2003 | A1 |
20030128767 | Kudoh | Jul 2003 | A1 |
20030152181 | Stengel et al. | Aug 2003 | A1 |
20030199262 | Chung | Oct 2003 | A1 |
20030226053 | Khieu et al. | Dec 2003 | A1 |
20040046589 | Gauthier et al. | Mar 2004 | A1 |
20040047409 | Lee et al. | Mar 2004 | A1 |
20040125905 | Vlasenko et al. | Jul 2004 | A1 |
20040177301 | Tarango et al. | Sep 2004 | A1 |
20040193972 | Mitlin et al. | Sep 2004 | A1 |
20040202266 | Gregorius et al. | Oct 2004 | A1 |
20050089126 | Zerbe et al. | Apr 2005 | A1 |
20050259774 | Garlepp | Nov 2005 | A1 |
20060188043 | Zerbe et al. | Aug 2006 | A1 |
20070071153 | Eglit | Mar 2007 | A1 |
20070075757 | Kumar et al. | Apr 2007 | A1 |
20070075776 | Garlapati et al. | Apr 2007 | A1 |
20070094428 | Lau | Apr 2007 | A1 |
20070182615 | Aliahmad et al. | Aug 2007 | A1 |
20070185668 | Moll | Aug 2007 | A1 |
20070230553 | Talbot et al. | Oct 2007 | A1 |
20070230646 | Talbot et al. | Oct 2007 | A1 |
20080034378 | Kumar et al. | Feb 2008 | A1 |
20080056426 | Si et al. | Mar 2008 | A1 |
20080295603 | Shin et al. | Dec 2008 | A1 |
Number | Date | Country |
---|---|---|
1601130 | Nov 2005 | EP |
Entry |
---|
Garlepp, Bruno W., et al., “A Portable Digital DLL for High-Speed CMOS Interface Circuits,” IEEE Journal of Solid-State Circuits, vol. 34, No. 5, May 1999, pp. 632-644. |
Maneatis, John G., “Low-Jitter Process-Independent DLL and PLL Based on Self-Biased Techniques,” IEEE Journal of Solid-State Circuits, vol. 31, No. 11, Nov. 1996, pp. 1723-1732. |
Sidiropoulos, Stafanos and Horowitz, Mark A., “A Semidigital Dual Delay-Locked Loop,” IEEE Journal of Solid-State Circuits, vol. 32, No. 11, Nov. 1997, pp. 1683-1692. |
Ng, Hiok-Tiaq, et al., “A Second-Order Semidigital Clock Recovery Circuit Based on Injection Locking,” IEEE Journal of Solid-State Circuits, IEEE Service Center, Piscataway, NJ, US, vol. 38, No. 12, Dec. 2003, pp. 2101-2110. |
Rambus “Phase Interpolator Based CDR,” from URL: http://www.rambus.com/products/innovationslicensing/innovations/interp—cdr.aspx, retrieved Apr. 13, 2006, 6 pages. |
Number | Date | Country | |
---|---|---|---|
20070230513 A1 | Oct 2007 | US |
Number | Date | Country | |
---|---|---|---|
60786546 | Mar 2006 | US |