Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
CALIBRATION OF SINGLE-ENDED HIGH-SPEED INTERFACES
Document Type and Number:
WIPO Patent Application WO/2014/138081
Kind Code:
A1
Abstract:
A computer implemented method for calibrating signal swing and a trip reference voltage. The signal swing of a system can be calibrated in a symmetric or asymmetric technique through adjustment of a drive parameter such as a supply voltage for a transmitter or a drive termination. The trip reference voltage of the system can also be calibrated in a symmetric or asymmetric technique through sampling of a data pattern to determine an ideal level of the trip reference voltage.

Inventors:
RUBERG ALAN (US)
GONDI SRIKANTH (US)
Application Number:
PCT/US2014/020350
Publication Date:
September 12, 2014
Filing Date:
March 04, 2014
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SILICON IMAGE INC (US)
International Classes:
G11C11/4096; G11C11/4074; G11C11/4093
Foreign References:
US7231306B12007-06-12
US20130002301A12013-01-03
US20110133772A12011-06-09
Other References:
AMIR AMIRKHANY ET AL.: "A 12.8-Gb/s/link Tri-Modal Single-Ended Memory Inter face", SOLID-STATE CIRCUITS, IEEE JOURNAL OF: IEEE, vol. 47, no. 4, April 2012 (2012-04-01), pages 911 - 925
W. T. BEYENE ET AL.: "Design and analysis of 12.8 Gb/s single-ended signaling for memory interface", ELECTRICAL PERFORMANCE OF ELECTRONIC PACKAGING AND SYSTEMS (EPEPS), IEEE 20TH CONFERENCE, October 2011 (2011-10-01), SAN JOSE, CA, pages 135 - 138, XP032070441, DOI: doi:10.1109/EPEPS.2011.6100208
Attorney, Agent or Firm:
MCNELIS, John, T. et al. (Silicon Valley Center801 California Stree, Mountain View CA, US)
Download PDF:
Claims:
What is claimed is:

1. A method for calibrating signal swing of a transmitting device connected to a receiving device via a connection, the method comprising:

driving, at the transmitting device, the connection to produce an output voltage level on the connection;

comparing, at the transmitting device, the output voltage level to a reference voltage level corresponding to a threshold voltage swing; and adjusting, at the transmitting device, a drive parameter affecting the output voltage level based on a result of comparing the output voltage level to the reference voltage level.

2. The method of claim 1, wherein the drive parameter is adjusted until the output voltage level reaches the reference voltage level.

3. The method of claim 1, wherein the transmitting device drives the connection with a supply voltage using a termination, and the transmitting device adjusts the drive parameter affecting the output voltage by adjusting the termination.

4. The method of claim 3, further comprising:

generating, at the transmitting device, the reference voltage level based on an ideal value of the termination and ideal level of the supply voltage.

5. The method of claim 1, wherein the transmitting device drives the connection with a supply voltage using a termination, and the transmitting device adjusts the drive parameter affecting the output voltage by adjusting a level of the supply voltage.

6. The method of claim 1, wherein the connection is a single-ended connection.

7. A transmitting device comprising:

a transmitter interface to couple to a connection to a receiving device, the transmitter interface driving the connection to produce an output voltage level on the connection; and

a comparator to compare the output voltage level to a reference voltage level corresponding to a threshold voltage swing, the transmitting device adjusting a drive parameter affecting the output voltage level based on an output of the comparator.

8. The transmitting device of claim 7, wherein the drive parameter affecting the output voltage level is adjusted until the output voltage level reaches the reference voltage level.

9. The transmitting device of claim 7, wherein the transmitting device drives the connection with a supply voltage using a termination, and the transmitting device adjusts the parameter affecting the output voltage level by adjusting the termination.

10. The transmitting device of claim 9, wherein the transmitting device generates the reference voltage level based on an ideal value of the termination and ideal level of the supply voltage.

11. The transmitting device of claim 7, wherein the transmitting device drives the connection with a supply voltage using a termination, and the transmitting device adjusts the parameter affecting the output voltage level by adjusting a level of the supply voltage.

12. The transmitting device of claim 7, wherein the connection is a single- ended connection.

13. A system comprising :

a transmitting device driving a connection to produce an output voltage level on the connection; and

a receiving device coupled to the transmitting device via the connection, the receiving device comparing the output voltage level to a reference voltage level corresponding to a threshold voltage swing and causing the output voltage level to be adjusted based on a result of comparing the output voltage level to the reference voltage level.

14. The system of claim 13, wherein the receiving device causes the output voltage level to be adjusted until the output voltage level reaches the reference voltage level.

15. The system of claim 13, wherein the transmitting device drives the connection with a supply voltage using a termination, and the receiving device causes the output voltage level to be adjusted by commanding the transmitting device to adjust the termination of the transmitting device based on the result of comparing the output voltage level to the reference voltage level.

16. The system of claim 15, wherein the receiving device generates the reference voltage level based on an ideal value of the termination and ideal level of the supply voltage.

17. The system of claim 13, wherein the transmitting device drives the connection with a supply voltage using a termination, and the receiving device causes the output voltage level to be adjusted by commanding the transmitting device to adjust a level of the supply voltage based on the result of comparing the output voltage level to the reference voltage level.

18. The system of claim 13, wherein the receiving device terminates the connection with a termination, and the receiving device causes the output voltage level to be adjusted by adjusting the termination of the receiving device based on the result of comparing the output voltage level to the reference voltage level.

19. The system of claim 13, wherein the connection is a single-ended connection.

Description:
CALIBRATION OF SINGLE-ENDED HIGH-SPEED INTERFACES

BACKGROUND

1. FIELD OF THE DISCLOSURE

[0001] Embodiments of the present disclosure generally relate to the field of electronic devices and, more particularly, to calibration of single-ended high-speed interfaces.

2. DESCRIPTION OF THE RELATED ART

[0002] An interface may include one or more single -wire connections, and single- ended driver may thus drive a signal on the single-wire connection. A single-wire connection may include, for example, a Dynamic Random Access Memory (DRAM) interface.

[0003] It has been determined that conventional differential interfaces draw constant power during operation regardless of state (e.g., 0 or 1) and do not have optimal bandwidth or pin, which makes them unsuitable for mobile chip-to-chip communications. Single-ended interfaces suffer from high dynamic (e.g., CV2) or static (e.g., V2/R) loads and thus compromise supply signal integrity leading to lower data rates. Conventional high-speed memory standards use V DD 2 (e.g., 600mV) signaling that provides a factor of four in power efficiency as compared to full swing

(e.g., 1.2V CMOS).

[0004] At such low signal swings, power noise, ground noise, V REF noise and accuracy play important roles in signal integrity for single-ended communications. The conventional approach of simply designing components and systems to work together is insufficient because specified tolerances approach operating points. The conventional calibration method depends on common V REF sources shared by different devices, which might not match when used internally by different devices, and resistors that are not calibrated, but controlled in steps that cause quantization errors, have process-voltage-temperature (PVT) variations, and exhibit poor linearity.

SUMMARY

[0005] Embodiments of the present disclosure are generally directed to calibration of single-ended high-speed interfaces. In some embodiments, a method, device, or system is disclosed for calibration of single-ended high-speed interfaces. The method comprisesdriving, at the transmitting device, the connection to produce an output voltage level on the connection; comparing, at the transmitting device, the output voltage level to a reference voltage level corresponding to a threshold voltage swing; and adjusting, at the transmitting device, a drive parameter affecting the output voltage level based on a result of comparing the output voltage level to the reference voltage level.

[0006] In one embodiment, the connection is single ended. In one embodiment, the driver parameter is adjusted until the output voltage level reaches the reference voltage level.

[0007] In one embodiment, the transmitting device drives the connection with a supply voltage using a termination, and the transmitting device adjusts the drive parameter affecting the output voltage by adjusting the termination. In one embodiment, the transmitting device generates the reference voltage level based on an ideal value of the termination and ideal level of the supply voltage.

[0008] In another embodiment, the transmitting device drives the connection with a supply voltage using a termination, and the transmitting device adjusts the drive parameter affecting the output voltage by adjusting a level of the supply voltage.

[0009] In one embodiment, a transmitting device is disclosed. The transmitting device comprises a transmitter interface to couple to a connection to a receiving device, the transmitter interface driving the connection to produce an output voltage level on the connection; and a comparator to compare the output voltage level to a reference voltage level corresponding to a threshold voltage swing, the transmitting device adjusting a drive parameter affecting the output voltage level based on an output of the comparator.

[0010] In one embodiment, the connection is a single-ended connection. In one embodiment, the drive parameter affecting the output voltage level is adjusted until the output voltage level reaches the reference voltage level.

[0011] In one embodiment, the transmitting device drives the connection with a supply voltage using a termination, and the transmitting device adjusts the parameter affecting the output voltage level by adjusting the termination. In one embodiment, the transmitting device generates the reference voltage level based on an ideal value of the termination and ideal level of the supply voltage. [0012] In another embodiment, the transmitting device drives the connection with a supply voltage using a termination, and the transmitting device adjusts the parameter affecting the output voltage level by adjusting a level of the supply voltage.

[0013] In one embodiment, a system comprises a transmitting device driving a connection to produce an output voltage level on the connection; and a receiving device coupled to the transmitting device via the connection, the receiving device comparing the output voltage level to a reference voltage level corresponding to a threshold voltage swing and causing the output voltage level to be adjusted based on a result of comparing the output voltage level to the reference voltage level.

[0014] In one embodiment of the system, the connection is a single-ended connection. In one embodiment of the system, the receiving device causes the output voltage level to be adjusted until the output voltage level reaches the reference voltage level.

[0015] In one embodiment of the system, the transmitting device drives the connection with a supply voltage using a termination, and the receiving device causes the output voltage level to be adjusted by commanding the transmitting device to adjust the termination of the transmitting device based on the result of comparing the output voltage level to the reference voltage level. In one embodiment, the receiving device generates the reference voltage level based on an ideal value of the termination and ideal level of the supply voltage.

[0016] In another embodiment of the system, the transmitting device drives the connection with a supply voltage using a termination, and the receiving device causes the output voltage level to be adjusted by commanding the transmitting device to adjust a level of the supply voltage based on the result of comparing the output voltage level to the reference voltage level.

[0017] In a further embodiment of the system, the receiving device terminates the connection with a termination, and the receiving device causes the output voltage level to be adjusted by adjusting the termination of the receiving device based on the result of comparing the output voltage level to the reference voltage level.

[0018] Other embodiments of the present disclosure are a method for calibrating a trip reference voltage. The method comprises receiving, at a receiving device, a data pattern from a transmitting device via a connection; sampling, at the receiving device, the data pattern into samples with the trip reference voltage; and adjusting, at the receiving device, the trip reference voltage based on the samples. [0019] In one embodiment, the method further comprises monitoring the samples for data transitions in the data pattern, where the trip reference voltage is adjusted at the receiving device based on the data transitions in the data pattern. In one embodiment, the trip reference voltage is adjusted until a duration of time between the data transitions is maximized. In one embodiment, the method further comprises setting a sampling point to an average of a first time offset of a first data transition and a second time offset of a second data transition. In one embodiment, the connection is a single-ended connection.

[0020] According to another embodiment of the present disclosure, a receiving device is provided. The receiving device comprises a receiver interface to receive a data pattern from a transmitting device via a connection, where the receiving device samples the data pattern with a trip reference voltage and adjusts the trip reference voltage based on the samples.

[0021] In one embodiment, the receiving device monitors the samples for data transitions in the data pattern and adjusts the trip reference voltage based on the data transitions in the data pattern. In one embodiment, the receiving device adjusts the trip reference voltage until a duration of time between the data transitions is maximized. In one embodiment, the receiving device sets a sampling point to an average of a first time offset of a first data transition and a second time offset of a second data transition. In one embodiment, the connection is a single-ended connection.

[0022] According to yet another embodiment of the present disclosure, a transmitting device is provided. The transmitting device comprises a transmitter interface to transmit a data pattern to a receiving device via a connection, the receiving device having a trip reference voltage for sampling the data pattern; and a receiver interface to receive a sampled version of the data pattern from the receiving device, where the transmitting device compares the data pattern to the sampled version of the data pattern and commands the receiving device to adjust the trip reference voltage based on a result of comparing the data pattern to the sampled version of the data pattern.

[0023] In one embodiment, the transmitting device commands the receiving device to increase the trip reference voltage responsive to the result of comparing the data pattern to the sampled version of the data pattern indicating a data error. In one embodiment, the transmitting device commands the receiving device to lower the trip reference voltage responsive to the result of comparing the data pattern to the sampled version of the data pattern indicating a data error. In one embodiment, the transmitting device uses the result to identify a first level of the trip reference voltage producing data errors and to identify a second level of the trip reference voltage producing data errors, and the transmitting device averages the first level and the second level of the trip reference voltage to generate a setting for the trip reference voltage. In one embodiment, the connection is a single-ended connection.

BRIEF DESCRIPTION OF THE DRAWINGS

[0024] The teachings of the embodiments disclosed herein can be readily understood by considering the following detailed description in conjunction with the accompanying drawings.

[0025] FIG. 1 is a data communication system with a single-ended interface, according to one embodiment

[0026] FIG. 2A is a circuit diagram illustrating a full-swing interface, according to one embodiment.

[0027] FIG. 2B is a circuit diagram illustrating a pseudo-open drain interface, according to one embodiment.

[0028] FIGs. 3A-3C are circuit diagrams illustrating a driver model suitable for use as a transmitter interface circuit TX, according to one embodiment.

[0029] FIG. 4 is a flowchart of an external pull-down resistor calibration process performed by the driver model of FIG. 3A-3C, according to one embodiment.

[0030] FIG. 5 is data communication system for symmetric calibration, according to one embodiment.

[0031] FIG. 6 is a flowchart for a method for calibrating signal swing performed by the data communication system of FIG. 5, according to one embodiment.

[0032] FIG. 7 is an eye diagram illustrating trip reference voltage calibration performed by the data communication system of FIG. 5, according to one

embodiment.

[0033] FIG. 8 is a flowchart of a method for calibrating trip reference voltage performed by the data communication system of FIG. 5, according to one

embodiment.

[0034] FIG. 9 is a data communication system for remote calibration, according to one embodiment. [0035] FIG. 10 is a flowchart of a remote signal swing calibration process performed by the data communication system of FIG. 9, according to one

embodiment.

[0036] FIG. 11 is a flowchart of a remote trip reference voltage calibration process performed by the data communication system of FIG. 9, according to one embodiment.

DETAILED DESCRIPTION

[0037] Reference will now be made in detail to several embodiments, examples of which are illustrated in the accompanying figures. It is noted that wherever practicable similar or like reference numbers may be used in the figures and may indicate similar or like functionality. The figures and accompanying description depict various embodiments for purposes of illustration only. One skilled in the art will readily recognize from the following description that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles described herein.

[0001] Embodiments of the present disclosure solve the following problems existing in the calibration and design of an interface: the receiver threshold reference voltage (V RXREF ) needs to be calibrated for reliable data transmission between the transmitter and receiver, and the transmitter swing (VSW I NG) needs to be minimized to optimize power utilization.

[0002] In some embodiments, a process includes performing calibration of transmitter drive termination according to a conventional process, followed by:

[0003] (1) VSW I NG calibration for a local device, such as a memory controller. Remote termination is engaged and the transmitter drives high. The resulting output voltage is measured at the transmitter side, which is trimmed using a method that depends on the driver architecture to match a reference voltage.

[0004] (2) VSW I NG calibration for a remote device, such as a memory device. If a remote transmitter has limited ability to control its swing (asymmetric case), then the local receiver can measure the swing and adjust its termination resistance.

[0005] (3) V RXREF calibration for a local device. A pattern is output by the remote transmitter to be used to measure the local receiver eye width. The eye width is measured at several receiver reference voltage values, and the reference value that produces longest time of valid data is chosen. Furthermore, the best sampling point can be derived by averaging between the first and last data valid times.

[0006] (4) V RXREF calibration for a remote device. If a remote receiver has limited ability to determine data validity, the received data can be sent back to the

transmitting device for comparison and control.

[0007] An embodiment of a process provides an improvement on single-ended calibration techniques made available through Joint Electron Device Engineering Council (JEDEC) memory standards. Such standards do not have sufficient accuracy for small swings, and the complexity would generally too great to make

improvements on the memory side of a transmission.

[0008] In some embodiments, a process is automated, and it trims based on the actual loading device and channel.

[0009] In some embodiments, low amplitude, single-ended high-speed inter- device communications are more pin and power efficient than differential interfaces in common use. High-speed differential interfaces can benefit from two signals swinging in opposition such that one is of lower amplitude than the other so it is relatively easy to determine the state of the signal. Small swing high-speed single- ended interfaces are more sensitive to changes and noise in the power supply and the reference threshold voltage level {V RXREF ) used to determine the state of the signal. In some embodiments, to compensate for these changes and noise, the single-ended interfaces require calibration of signal swing {V SW I NG) and reference threshold voltage level {V RXREF ) during operation. Conventional approaches have insufficient accuracy for small swings. In some embodiments, a process is disclosed for measuring and optimizing the transmitter signal swings and receiver reference threshold voltage levels on both sides of an interface in the working system with greater accuracy.

[0010] Conventional systems operate at less than half the speed and more than twice the swing of the embodiments of the present disclosure. Such conventional systems rely on simpler calibration schemes that do not depend on the operating data eye or receiver threshold. These methods are dealt with at the design stage rather than with operating devices. This technology compensates for die-to-die differences, on- die device quantization errors, and device PVT differences.

[0011] In cases where the physical layer is unable to calibrate itself, novel methods for remote measurement and control are brought to bear. It is desirable to lower power even further in mobile systems, and in some embodiments a much smaller swing (e.g. 100-400mV) than conventional systems is being proposed.

Embodiments may apply any small swing (e.g., less than V DD /2) to a single-ended galvanic interface that self-calibrates.

[0012] The necessity to lower signal voltage to save power is being driven by the bandwidth required for inter-device communication, particularly with memory devices (e.g., DRAM) connected to application processors.

[0013] FIG. 1 is a data communication system with a single-ended interface, according to one embodiment. The system includes two devices A and B. Each device includes a transmitter interface circuit TX that transmits a single ended signal to the receiver interface circuit RX of the other device. In one embodiment, device A is a memory controller and device B is a memory device, such as a DRAM memory device. Only one transmitter TX and one receiver RX are shown for each device, but in other embodiments each device may have multiple TX and RX interface circuits communicating over multiple single-ended connections.

[0014] The illustrated single-ended interface includes a single galvanic connection. Single-ended signaling has been used successfully in device-to-device communication to transmit multiple Gbit/sec, particularly in the memory area. These interfaces are carefully specified to help overcome noise and signal propagation problems; however, the need to lower voltage swings to save power as bandwidth increases has placed a strain on the ability to use predetermined interface

specifications. Component tolerances and noise margins are also approaching levels required for reliable operation.

[0015] A first technique for avoiding noise and tolerance problems in a single ended- interface is to maximize the signal swing. FIG. 2A is a circuit diagram illustrating a full-swing interface, according to one embodiment. The illustrated full- swing interface can achieve the maximum voltage easily. For example, the maximum voltage is the power supply level (e.g., V DD )- In this embodiment, the receiver RX is not resistively terminated, but the transmitter-channel-receiver system still has capacitance (Q. The power used by the interface is proportional to CV DD 2 f, where /is the average switching frequency. Note that the power changes significantly with voltage. At multiple Gbit/sec speeds, the transmitter impedance is controlled carefully. Too low impedance causes overshoot that overloads the receiver, shortens the receiver life, and causes ringing that produces errors. Too high impedance causes undershoot, reducing the signal and introducing errors due to noise. [0016] To reduce power and improve signal integrity at high data rates, termination may be introduced at the receiver RX of a single ended- interface, such as in the pseudo-open drain (POD) configuration, as described in JEDEC publication JESD8-19. FIG. 2B is a circuit diagram illustrating a pseudo-open drain interface, according to one embodiment. The illustrated pseudo-open drain interface drives a connection at the transmitter TX to a voltage level (e.g., ground or V DD ) using a transmitter drive termination R DRI V E - In addition, the illustrated pseudo-open drain interface terminates a connection at the receiver RX to a voltage level (e.g. ground) using a receiver termination R TERM - If the transmitter drive termination R DRI V E and receiver termination R TERM impedances are the same, the swing VSW I NG becomes V DD /2. The dynamic power component (C(V DD /2) 2 J) is reduced by a factor of four; however, a static component of (V DD /2) 2 /R is added. Fortunately, no static power is drawn in the state where the transmitter voltage equals the receiver termination voltage. Other than controlling reflections caused by mismatches between transmitter TX, receiver RX, and channel impedances, signal quality is defined by the precision and noise of a threshold reference voltage source V RXREF that defines the trip point between states (e.g., ±3% V DD tolerance including noise as illustrated) and the ratio of the transmitter TX and receiver RX impedances that determine the total signal swing VSW I NG- Imbalances between the transmitter TX and receiver RX impedances not only change the amplitude of the signal but they change the midpoint of the signal in relation to V RXREF - The ideal sampling point is where V RXREF equals VSW I NG^- [0017] In a practical system with 100 or more interfaces being used, manufacturer calibration of precision resistors is impractical. Furthermore, it is unlikely that the integrated circuit process being used supports precision resistors; rather, typical bulk CMOS process supports resistors that exceed ±20% tolerance. In some embodiments, to produce better tolerance, a calibration system is used to provide a process that includes providing an external precision resistor (ZQ) with which a variable internal resistor is calibrated, as described in Micron Technology TN-41-02. Once the 'code' for the calibrated resistor is known, it can be propagated to other nearby resistors. After calibration, the guaranteed tolerance for a memory process is ±10%, more than that for a typical termination resistor (e.g., ±5% maximum). The calibration process is repeated periodically to compensate for power supply and temperature variations.

[0018] FIGs. 3A-3C are circuit diagrams illustrating a driver model suitable for use as a transmitter interface circuit TX, according to an embodiment. Referring now to FIG. 3A, illustrated is a practical example of a driver model for a device. The example driver model includes an 'up' drive P-channel transistor 302 connected to a supply voltage VCA L and a 'down' drive P-channel transistor 304 connected to ground. The driver model also splits drive termination R DRI V E at the transmitter TX into an 'up' drive RU P using P-channel MOSFET transistors, and a 'down' drive RQ D OWN using N-channel MOSFET transistors. The same driver structure can be used at the receiver RX for termination, where the 'down' drive is used for termination R TERM as illustrated in the previous example of FIG. 2B. The driver produces an output voltage VOU T on the channel.

[0019] Referring now to FIG. 3B, details of the RU P and RQ D OWN are illustrated. In the illustrated embodiment, the RU P and RQ D OWN are made up of several calibrated chains in parallel. Each chain RQU P or RQ D OWN is made up of a bulk process resistor Ro, which has larger resistance than required, and weak transistors in parallel

(QO- -QN) for trimming the chain down to the closest correct value possible. The weak transistors (QO- --QN) are MOSFET transistors that have a high resistance when switched on. The chain is controlled by calibration logic (not shown). In addition, the output of the driver is terminated to ground with an external pull-down resistor ZQ. Further, the power source VCA L for the driver circuit and the selection of ZQ depends on the device. VCA L can be independent of or the same as V DD - The value of ZQ may be chosen from a range of 50Ω-100Ω. For example, a typical value of ZQ is 50Ω.

[0020] The driver model structure shown in FIG. 3B corresponds to a first step of a resistor calibration process for the device that sets RQU P to an ideal value equal to ZQ. In the first step performed by the driver model, RQU P is compared to ZQ. The 'up' P-channel transistor 302 is turned on and the 'down' N-channel transistor 304 is turned off, effectively removing it from the circuit. The strategy for calibration is to match RQU P and ZQ by placing them in a series voltage divider circuit and comparing the output voltage VOU T to one half of the power supply voltage (i.e., VI VCA L ) through comparator 306. If the output voltage VOU T is too low, then some weak QO -QN transistors are turned on, lowering the impedance RQU P and raising the voltage VOU T - If the voltage VOU T is too high, then some QO - QN transistors are turned off, raising the impedance RQU P and lowering the voltage. Once the calibration is complete, the calibration logic is copied to nearby RQU P chains for different drivers, possibly including some in other interfaces, to avoid the need to calibrate every interface separately. [0021] Referring now to FIG. 3C, a driver model structure corresponding to a second step of a resistor calibration process is illustrated, according to one

embodiment. For practical reasons, this embodiment compares RQ D OWN to RQU P instead of a second precision resistor. This is done by turning on both of the 'up' and 'down' transistors 302 and 304, causing RQU P and RQ D OWN o form a series voltage divider similar to the first step. The chains in RQ D OWN are the same as for RQU P except that they are made up of N-channel weak transistors and the control is reversed. If the voltage Vou T is too high, then some weak QO—QN transistors are turned on, lowering the impedance RQDOWN and the voltage Vour- If the voltage Vour is too low, then some QO—QN transistor are turned off, raising the impedance RQU P and the voltage. Although the optimization of using RQU P as a reference has system benefits such as using VCA L as an accurate pull-up reference and lowering system cost and complexity, RQU P is only accurate to 10%, which means that the value of RQ D OWN is perturbed, and which will cause a shift in the output swing.

[0022] FIG. 4 is a flowchart of the external pull-down resistor calibration process performed by the driver model of FIG. 3A-C, according to one embodiment. Steps 402 through 426 correspond to FIG. 3B, and step 428 corresponds to FIG. 3C. In step 402, the calibration logic turns on P-channel driver 302 so that the output of the driver model is driven using the RQU P - In step 404, the calibration logic turns off N-channel driver 304, effectively removing RQ D OWN from the circuit. In step 406, the calibration logic engages the external pull-down resistor ZQ. In step 408, the calibration logic determines if the device needs a fast calibration or regular calibration. For example, if the device has previously been calibrated using ZQ and only needs fine tuning, then the calibration logic determines only a fast calibration is needed. If the device has not yet been calibrated, the calibration logic determines that regular calibration is needed.

[0023] If the calibration logic determines that a fast calibration is not appropriate, then in step 410, the calibration logic sets the calibration code to all zeroes, which turns off all the weak Qo...QN transistors in RQU P - In step 412, the calibration logic determines if the output result voltage Vour is larger than one half of the power supply (VIVCA L ) using the output of the comparator 306. If so, in step 414 the calibration logic increments the code to turn on an additional weak QO—QN transistor in RQU P - The process returns to step 412 and the calibration logic determines again if the new output voltage Vour is larger than one half of the power supply voltage (VI VCA L )- The steps 412 and 414 repeat in a loop until the calibration logic determines that the output voltage VOUT is less than or equal to one half of the power supply voltage AVCAL)- Then, in step 426 the calibration logic copies the calibration code to nearby RQUP chains.

[0024] If the calibration logic determines that a fast calibration is appropriate, then the calibration logic calibrates the device in one of two possible two directions. In step 416 the calibration logic determines if the output voltage VOUT is larger than one half of the power supply voltage (VI VCAL) using the output of the comparator 305. If so, then in step 418 the calibration logic decrements the calibration code to turn off one more of the weak Qo...QN transistors in RQUP and, and in step 420, determines if the new output voltage VOUT is larger than one half of the power supply voltage (VIVCAL)- If the new output voltage VOUT is still larger than one half of the power supply voltage (VI VCAL), then the calibration logic repeats the step 418 to decrement the calibration code to turn off one more of the weak Qo...QN transistors until the calibration logic determines that the new output voltage VOUT is less than or equal to one half of the power supply (VIVCAL).

[0025] If in step 416 the calibration logic determines that the output result voltage (VOUT) is not larger than one half of the power supply (VIVCAL), then in step 422 the calibration logic increments the calibration code to turn on one more of the weak QO—QN transistors in RQUP, and in step 424, determines if the new output voltage VOUT is larger than one half of the power supply voltage (VI VCAL) using the output of the comparator 305. If the new output voltage VOUT is still not larger than one half of the power supply voltage (VI VCAL), then the calibration logic repeats step 422 to increment the calibration code to turn on one more of the weak QO -QN transistors until the calibration logic determines that the new output voltage VOUT is larger than one half of the power supply voltage (VI VCAL).

[0026] The resulting calibration code is copied to nearby RQUP chains for other transmitters TX in step 426. In step 428, the calibration logic performs RQDOWN calibration by comparing RQDOWN to RQUP, as previously described with respect to FIG. 3C.

[0027] Note that in the POD interface (e.g., from FIG. 2B) that R DRI VE and R TE RM reside in different devices that have different process characteristics, operate at different temperatures, and may have different voltage sources, noise, or routing from the power supply. The two devices react differently to their different environments. In realistic circumstances, the transmitter TX is unable to accurately determine VRXREF at the receiver RX or how it is being put to use by the receiver RX. In single-ended interfaces operating above V DD /2, these problems are overcome by standardizing component tolerances, careful system design, and extensive testing.

[0028] To further improve signal integrity and reduce power (and to make allowances for reducing supply voltage due to process feature size reduction) as bandwidth increases (e.g., by at least 2 times), interfaces with swings smaller than V DD /2 are being deployed. This puts a great burden on the tolerances of R DRI V E , (e.g., RJJ P and R D OWN at the transmitter), R TERM (e.g., R D OWN at the receiver), and V RXREF - [0029] The conventional approach of simply designing components and systems to work together is insufficient because specified tolerances approach operating points as the swing decreases. The conventional calibration method depends on common V RXREF sources that might not match when used internally by different devices, and resistors that are not calibrated, but controlled in steps that cause quantization errors, have PVT (process, voltage, temperature) variations, and exhibit poor linearity.

Errors accumulate when considering that the transmitter and receiver are performing calibration independently.

[0030] Independently calibrating devices causes two problems: The receiver RX threshold reference (V RXEF ) needs to be calibrated for consistency between the transmitter TX and receiver RX, and the transmitter swing (VSW I NG) needs to be minimized to optimize power utilization.

[0031] In some embodiments of the present disclosure, a dynamic closed-loop approach is used to co-calibrate the transmitter TX and receiver RX. The same structures are used to perform the operations; however, calibrating measurements include contributions of R DRI V E and VSW I NG at the transmitter TX, and R TERM and V RXREF at the receiver RX. As a beneficial side-effect, perturbations caused by the channel between transmitter TX and receiver RX are taken into account.

[0032] In some embodiments, a process includes providing stimulus using both the transmitter TX and receiver RX, and making measurements and adjustments within individual devices where PVT variables are consistent and controlled.

[0033] In some embodiments, before starting, the basic calibration described above with reference to FIGs. 3B-3C and 4 may be applied. This may help to bootstrap the fine calibration process since some data exchange will be possible afterwards. It also may have the benefit of helping the new method converge more rapidly. [0034] In some embodiments, there are two main ways to approach co-calibration. One approach assumes that the device including the transmitter TX and the device including the receiver RX are both able to manage calibration on their own, which is referred to as a symmetric approach. FIGs 5-8 that will be described in more detail below correspond to this symmetric approach. The other approach is used when one device is unable to calibrate itself, which is referred to as a simple device. This asymmetric approach relies on one of the devices, referred to as the companion device, to control the calibration of the simple device, as shown in FIGs 9-11. For simplicity, the symmetric approach is described first.

Symmetric Calibration for V wrm

[0035] Referring to FIG. 5, illustrated is a data communication system for symmetric calibration, according to one embodiment. The illustrated symmetric calibration system includes a device A and device B. Device A includes a transmitter interface circuit TX, a comparator 505 and calibration logic A. Device B includes a receiver interface circuit RX and calibration logic B. Device A can be considered as a transmitting device and device B can be considered as a receiving device because device A is transmitting signals to device B. Other components, such as a receiver in device A and a transmitter on device B are excluded for ease of explanation.

Calibration logic A manages calibration within device A and can control the other components through one or more signals (not shown). Calibration logic B manages calibration within device B and can control the other components through one or more signals (not shown). Both device A and device B can manage calibration on their own using calibration logic A and calibration logic B, respectively.

[0036] In this embodiment, the transmitter TX of device A is coupled to a single- ended connection channel. The transmitter TX drives the singled-ended connection channel with a supply voltage level VQA L using termination RQU P . In the illustrated embodiment, the transmitter TX driver uses a pull-up resistor RQU P as the drive termination R DRI V E to drive the connection high. In other embodiments, there may be additional termination resistors other than those shown in FIGs. 3A-3C. For example, besides RQU P , the drive termination R DRI V E may include an additional termination resistor connected between the transmitter TX output and ground. This additional resistor may be adjustable to make the overall drive termination R DRI V E impedance equal to an idealized value such as 50Ω even as RQU P is adjusted. [0037] At the other end of the connection channel is a receiver RX. Receiver RX includes an N-channel transistor 502 that can be switched on to terminate the connection channel to a ground voltage level through termination R TERM - [0038] The transmitter TX generates an output voltage Vour on the connection channel. Device A also includes a comparator 505 that compares the output voltage level Vour to a transmission reference voltage level V TXREF and generates an output signal indicating whether the output voltage level Vour is higher than the transmission reference voltage level V TXREF - The transmission reference voltage level V TXREF represents threshold voltage swing; i.e. a target level of voltage swing VSW I NG for the output voltage Vour- The target voltage swing VSW I NG is typically a low voltage level (e.g. 300 mV) to minimize power consumption.

[0039] The calibration logic A can produce a high-quality transmission reference voltage V TXREF in many ways, including, but not limited to, a matched resistor divider, a precision voltage reference, or a combination of the two. In one embodiment, the transmission reference voltage level V TXREF is generated based on an ideal value of the receiver termination R TERM , an ideal value of the pull-up termination RQU P , an ideal value of the ground level at the receiver RX and an ideal value of the supply voltage level V DD - For example, assume the ideal value for RQU P is 150 ohms, the ideal value for R TERM is 50 ohms and the ideal value for supply voltage VQA L is 2 volts. In this case, the ideal voltage swing VSW I NG can be determined to be 500 mV (50/200 x 2V), so V TXREF would be set to 500 mV.

[0040] In addition, the calibration logic A can adjust up termination RQU P based on the output of the comparator 505 until the output voltage level Vour reaches the transmission reference voltage level V TXREF - For example, the calibration logic A decreases RQU P if the output of the comparator 505 indicates that the output voltage level Vour is larger than the transmission reference voltage level V TXREF - Similarly, the calibration logic A increases RQU P if the output of the comparator 505 indicates that the output voltage level Vour is smaller than the transmission reference voltage level VTXREF-

[0041] In some embodiments, a first step for calibrating signal swing in the symmetric approach is to engage the receiver termination R TERM and use the transmitter TX to drive the output voltage Vour high using RQU P - The voltage swing VSW I NG of the output voltage Vour can then be calibrated at device A to produce a swing that substantially matches the transmitter reference voltage V TXREF - Vour is measured at device A, which is trimmed using a method that depends on the driver architecture of the transmitter TX. For example, the driver model described herein can make fine-adjustments to R J P as illustrated. In other embodiments, an

architecture that allows for the control of VQA L can simply adjust that voltage source for VQA L - Adjusting the voltage source for VQA L or adjusting the code for R UP are two examples of drive parameters affecting the output voltage VOU T that can be adjusted to adjust the output voltage VOU T.

[0042] In another embodiment, instead of engaging the receiver's R TERM , it may be possible to adjust VSW I NG using an internal or external calibration resistor such as ZQ in place of RTERM-

[0043] FIG. 6 is a flowchart for a method for calibrating signal swing performed by the data communication system of FIG. 5, according to one embodiment. In step 602, the calibration logic A performs ZQ calibration as described above with reference to FIG. 4. In step 604, the calibration logic A turns on P-channel drive transistor 302, which engages termination resistor R UP as the drive termination R DRI V E - In step 606, the calibration logic B turns on N-channel transistor 502 at the receiver RX, which engages termination resistor R TERM - In step 608, the calibration logic A determines if the output voltage level VOU T is larger than the transmission reference voltage level V TXREF - For example, the calibration logic A analyzes the comparison output result of the comparator 505 at device A to determine if VOU T is larger than V TXREF - [0044] If the calibration logic A determines that VOU T is larger than V TXREF , then in step 610 the calibration logic A decrements the calibration code to turn off one more of the weak QO - QN transistors in the RQU P chain. This increases the RQU P resistance and decreases the output voltage VOU T - In step 612, the calibration logic A determines if the new VOU T is still larger than V TXREF - If so, then the calibration logic A repeats step 612 to decrements the calibration code to turn off one more of the weak QO -QN transistors in the RQU P chain until the calibration logic A determines that the new VOU T is not larger than V TXREF and has thus reached V TXREF -

[0045] If in step 608 the calibration logic A determines that VOU T is smaller than V TXREF , then in step 614 the calibration logic A increments the calibration code to turn on one more of the weak Qo- ..QN transistors in the RQU P chain. This decreases the RQU P resistance and increases the output voltage VOU T - In step 616, the calibration logic A determines if the new VOU T is still smaller than V TXREF - If so, then the calibration logic A repeats step 614 to increment the calibration code to turn on one more of the weak Qo- ..QN transistors in the RQU P chain until the calibration logic A determines that the new VOU T is larger than V TXREF and has thus reached V TXREF - The calibration code determined at steps 612 and 616 is copied to nearby RQU P chains for other transmitters TX in step 618.

[0046] This process may be repeated in the other direction to calibrate the VSW I NG for the output voltage VOU T produced by a transmitter (not shown in FIG. 5) of device B.

Symmetric Calibration for VRXREF

[0047] In some embodiments, a second step of the symmetric calibration is to calibrate the trip reference voltage V RXREF - FIG. 7 is an eye diagram illustrating trip reference voltage calibration performed by the data communication system of FIG. 5, according to one embodiment. In this embodiment, the transmitter TX sends a data pattern, such as a pseudo-random binary sequence (PRBS) or simpler pattern, to the receiver RX that exercises a range of frequency components, up to the maximum used for communication. The receiver RX scans the data eye using various values of its V RXREF while monitoring its sampler. The example graph in FIG. 7 illustrates an oversampling detector, but other sampling methods may apply.

[0048] As the calibration logic A changes V RXREF to different levels, the presence of data transitions are monitored by the sampler. The V RXREF that produces the longest contiguous time without transitions is deemed the best choice for V RXREF - The time without transitions is also referred to as "transition-free time" or "transition-free sample time." The minimum transition-free sample time is the beginning of a period without transitions. The maximum transition-free sample time is the end of the period without transitions. In FIG. 7, the minimum and maximum transition-free sample times are shown for one selected value of V RXREF - The selected value of V RXREF is the best value because it is the V RXREF that produces the widest data eye.

[0049] In addition, the sampling point in time can be defined as the mean or median of the minimum and maximum time offsets of the data transitions observed at the V RXREF level, whichever is applicable depending on the sampling method. The minimum and maximum time offsets are shown in FIG. 7 as the minimum and maximum transition- free time.

[0050] FIG. 8 is a flowchart of a method for calibrating trip reference voltage performed by the data communication system of FIG. 5, according to one embodiment. In step 802, the calibration logic A controls the transmitter TX to transmit test data pattern to the receiver RX. In step 804, the calibration logic A determines if a fast calibration is appropriate. Fast calibration is typically appropriate for fine-tuning when the reference voltage V RXREF has already been calibrated in the past.

[0051] If not, then in step 806 the calibration logic B initiates a loop by setting an index to zero and setting an old count to zero. In step 808, the calibration logic B sets V RXREF to a voltage level corresponding to the index value. For example, as shown in FIG. 7, an index of zero may result in a low voltage V RXREF , whereas higher indexes result in higher voltage V RXREF -

[0052] In step 810, the calibration logic B samples the test data pattern and reads minimum and maximum transition-free sample times. In step 812, the calibration logic B determines if the old count is larger than the difference of the maximum and minimum transition- free times. If not, then in step 814 the calibration logic B increases the index by one and saves the difference of the maximum and minimum transition times in the old count. The method then returns to step 808 and repeats steps 808-812 until the calibration logic B determines that the old count is larger than the difference between the maximum and minimum transition-free times. Steps 808 and 814 are an example of adjusting V RXREF - In this way, the calibration logic B finds the V RXREF resulting in the longest contiguous transition-free time and which maximizes the width of the data eye.

[0053] In step 816, the calibration logic B determines whether to use the sample point from the calibration. If yes, then in step 818 the calibration logic B calculates the sample point by dividing the difference of the maximum and minimum transition- free times by two. In step 820, the calibration logic A terminates sending the test pattern to receiver.

[0054] If in step 804 the calibration logic B determines that a fast calibration is appropriate, then in step 822 the calibration logic B reads the minimum and maximum transition-free sample times for the current V RXREF - In step 824, the calibration logic B decreases the index by one and saves the difference of the maximum and minimum transition-free times to the old count. In step 826, the calibration logic sets V RXREF to a voltage level corresponding to the index value. In step 828, the calibration logic B reads the minimum and maximum transition-free sample times and in step 830, the calibration logic determines if the old count is larger than difference between the maximum and minimum transition-free times. If yes, the method turns to step 824 and the calibration logic B repeats the steps 824-830 until the calibration logic B determines that the old count is not larger than the difference between the maximum and minimum transition-free times, causing the method to proceed to step 814.

[0055] This process may be repeated in the other direction to calibrate the V RXREF for the receiver (not shown in FIG. 5) of device A.

Asymmetric Calibration for V WTNG

[0056] FIG. 9 is a data communication system for remote calibration, according to one embodiment. The illustrated data communication system corresponds to the second approach of calibration, i.e., the asymmetric calibration. The data

communication system includes a simple device 902 (e.g., memory device) that may not have the ability to self-calibrate as described above, and a companion device 904 (e.g. a memory controller) to aid in calibration. Both the companion device 902 and the simple device 904 can be considered transmitting or receiving devices, depending on which device is transmitting and which is receiving.

[0057] The companion device 902 includes a transmitter TX1, a receiver RXl, a comparator 905 and companion calibration logic 910. The simple device 904 includes simple calibration logic 912, a receiver RX2 and a transmitter TX2.

Companion calibration logic 910 sends calibration commands to the simple calibration logic 912 during calibration. Transmitter TX1 transmits data to receiver RX2 through one connection channel 950. Transmitter TX2 transmits data to receiver RXl through another connection channel 952. Simplified versions of the transmitters TX1 and TX2 and receivers RXl and RX2 are shown in FIG. 9, and the details of these circuits are similar to those described in previous figures.

[0058] The simple device 904 has the ability to loop data back to the companion device 904 and the ability to be commanded to do so. Data received at RX2 can be looped back through transmitter TX2. Other optional abilities that the simple device 904 might have to make the process more efficient are: commanding its transmitter TX2 to drive 'up' using R UP , controlling V RXREF2 , controlling the transmitter TX2 swing (e.g., via Rup), and generating a test pattern.

[0059] In some embodiments, to start companion-controlled calibration, the companion 902 acts as a receiver and engages its R TERM (e.g., typically R D OWN)- It also commands the simple device 904 to drive in the 'up' direction. The companion's comparator 905 can then be used for calibration according to the companion's V TXREF - If the simple device 904 can be commanded to adjust its VSW I NG, for example by adjusting its voltage source or R DRI V E (typically Rup), then the process proceeds similar to a normal VSW I NG calibration.

[0060] If the simple device 904 has no control, for example it may have fixed R J P and R D OWN values, or ones that are pre-calibrated as described in the prior art (as in the memory case), or have no way to control VSW I NG, then the companion's R TERM can be adjusted to meet the VSW I NG requirement.

[0061] In some embodiments, if there is no ability to command the simple device to drive 'up,' then an optimally efficient VSW I NG cannot be found using this method. Acceptable signal integrity can still be achieved by adjusting the companion device's V RXREFI to match the swing from the transmitter TX2 of the simple device 904.

[0062] In some embodiments, in order to calibrate the companion V RXREFI for receiving from a simple device 904, the simple device 904 may include a test pattern generator, or has the ability to echo a test pattern that is generated by the companion device 902. For example, high-speed memories already have loopback capability that is used to adjust timing. This can be reused for generating an acceptable pattern for adjusting VRXREFI-

[0063] FIG. 10 is a flowchart of a remote signal swing calibration process performed by the data communication system of FIG. 9, according to one

embodiment. In step 1002, the companion calibration logic 912 determines if the simple device 904 can be commanded to drive "up." If the simple device cannot be commanded to drive "up," the process proceeds to companion V RXREF calibration, as described above with reference to FIG. 7. If the simple device can be commanded to drive "up," then in step 1006 the companion calibration logic 910 engages companion R TERM and commands the simple device to drive "up."

[0064] In step 1008, the companion calibration logic 904 determines if the simple device 904 has VSW I NG control. If the simple device does not have VSW I NG control, then in step 1010 the companion calibration logic adjusts R TERM to calibrate VSW I NG using the comparator 905 at the companion side and the V TXREF set by the companion 902. For example, the companion calibration logic 910 adjusts R TERM to calibrate VSW I NG using a similar method as described above with reference to FIGs. 5-6.

[0065] If the simple device 904 has VSW I NG control, then in step 1012 the companion calibration logic 910 commands, via the simple device calibration logic 912, the simple device 904 to adjust VSW I NG of the output voltage VOU T - If VOU T is too low, the simple device 904 is commanded to decrease RU P to increase VSW I NG- If VOU T is too high, the simple device 904 is commanded to increase RU P to decrease VSW I NG- [0066] In step 1014, the companion calibration logic 910 compares the output voltage VOU T to the V TXREF using the comparator 905 at the companion device. In step 1016, the companion calibration logic 910 determines if the output voltage VOU T matches the V TXREF using the output result of the comparator 905. If VOU T does not match V TXREF , then the process returns to step 1012 and the companion calibration logic 910 commands, via the simple device calibration logic 912, the simple device 904 to adjust VSW I NG again. The process repeats steps 1012-1016 until VOU T matches or reaches the VTXREF-

Asymmetric Calibration for VR RKFT .

[0067] Remote calibration of V RXREF2 proceeds differently than for local calibration. The loopback is done digitally; that is, the receiver RX2 samples an incoming data pattern by comparing the current value of V RXREF2 to the incoming data pattern to produce a digital value. This digital value is then transmitted through the loopback port as loopback data, which is essentially a sampled version of the original data pattern. The loopback data can then be observed by the companion device 902 and compared to the original data pattern. When errors are observed in the received loopback signal, then V RXREF2 is adjusted. In one embodiment V RXREF2 adjustment proceeds in one direction until errors in the loopback data are observable, and then in the other direction. The high and low values of V RXREF2 can be averaged to produce the best results.

[0068] If the simple device has V RXREF2 control, which is likely in high-speed memories, then this can be used directly. If there is no V RXREF2 control, then the companion device 902 can adjust its R DRI V E (e.g., usually R UP ) or VSW I NG in transmitter TXl to further change the signal swing. The latter is less optimal because VSW I NG is likely to become higher and use more power.

[0069] FIG. 11 is a flowchart of a remote trip reference voltage calibration process performed by the data communication system of FIG. 9, according to one embodiment. In step 1102, the companion sends a data pattern to the receiver RX2 of the simple device through transmitter TXl . In step 1104, the companion calibration logic 910 determines if the simple device 904 has V RXREF2 adjustment abilities. If the simple device 904 has V RXREF2 adjustment abilities, then in step 1106 the companion calibration logic 910 determines if any data errors are observed in the loopback data, which is received via receiver RX1. If at least one data error is observed, then in step 1108 the companion calibration logic 910 commands, via the simple device calibration logic 912, the simple device 904 to raise V RXREF2 - In step 1110, the companion calibration logic 910 determines again if any data errors are observed in the loopback data after the V RXREF2 is raised. If there is still at least one data error observed, the process returns to step 1108 and steps 1108 and 1110 are repeated until no data error is observed.

[0070] Accordingly, if in step 1106 the companion calibration logic 910 determines that no data error is observed in the loopback data, then in step 1112 the companion calibration logic 910 commands the simple device to lower the V RXREF2 and in step 1114 the companion calibration logic 910 determines again if any data errors are observed after the V RXREF2 is lowered. The process repeats the steps 1112- 1114 until data errors are observed.

[0071] In step 1116, the companion calibration logic saves the adjusted V RXREF2 as Vww- Steps 1106-1116 thus establish a low value for V RXREF2 for which data errors are observed.

[0072] In step 1118, the companion calibration logic 910 raises the V RXREF2 , and in step 1120, determines if any data errors are observed from loopback data received via receiver RX1. The process repeats the steps 1118-1120 until data errors are observed. The resulting V RXREF2 represents a high value for V RXREF2 for which data errors are observed. In step 1122, the companion calibration logic 910 commands the simple device to set the new V RXREF2 as the average of the current V RXREF2 and the Vww- Step 1122 thus averages the lowest V RXREF2 with the highest V RXREF2 - In step 1123, the companion calibration logic stops the pattern generation.

[0073] If the simple device 904 does not have V RXEF2 adjustment, then in step 1124 the companion calibration logic 910 determines if it should adjust VSW I NG or R DRI V E of transmitter TX1. These adjustments are alternatives to adjusting V RXREF2 directly such that V RXREF2 has a value that is approximately half of VSW I NG- [0074] If the companion calibration logic 910 determines to adjust VSW I NG of TXl, then in step 1126 the companion calibration logic 910 saves the VSW I NG- In step 1128, the companion calibration logic lowers the VSW I NG, and in step 1130, determines if any date errors are observed from loopback data received via receiver RX1. If no data error is observed, then the process repeats the steps 1128-1130 until data errors are observed.

[0075] In step 1132, the companion calibration logic 910 adds a predetermined system tolerance (e.g. 50 mV) to the VSW I NG, and in step 1134, determines if the VSW I NG is smaller than the saved value at the beginning. If yes, the companion calibration logic 910 restores the saved VSW I NG, and stops 1123 the pattern generation. Otherwise, the companion calibration logic stops 1123 the pattern generation directly. This results in a VSW I NG for TX1 that may be lower than the original VSW I NG- In one embodiment, adjusting the VSW I NG is adjusting, for example, VQA L from FIG. 3A-3C.

[0076] If the companion calibration logic 910 determines to adjust R DRI V E (e.g., R[ / ) of the transmitter TX1, then in step 1138 the companion calibration logic 910 saves the current R DRI V E - In step 1140, the companion calibration logic 910 raises the R DRI V E , and in step 1142, determines if any data errors are observed from loopback data received via receiver RX1. If no data error is observed, then the process repeats the steps 1140-1142 until data errors are observed.

[0077] In step 1144, the companion calibration logic 910 subtracts a predetermined system tolerance to the R DRI V E , and in step 1146, determines if the R DRI V E is smaller than the saved value at the beginning. If so, then in step 1146 the companion calibration logic 910 restores the saved R DRI V E , and stops 1123 the pattern generation. This results in a R DRI V E for TX1 that may be higher than the original R DRI V E - Otherwise, the companion calibration logic stops 1123 the pattern generation directly.

[0078] In the description above, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without some of these specific details. In other instances, well-known structures and devices are shown in block diagram form. There may be intermediate structure between illustrated components. The components described or illustrated herein may have additional inputs or outputs that are not illustrated or described. The illustrated elements or components may also be arranged in different arrangements or orders, including the reordering of any fields or the modification of field sizes.

[0079] The present invention may include various processes. The processes of the present invention may be performed by hardware components or may be embodied in computer-readable instructions, which may be used to cause a general purpose or special purpose processor or logic circuits programmed with the instructions to perform the processes. Alternatively, the processes may be performed by a

combination of hardware and software.

[0080] Portions of the present invention may be provided as a computer program product, which may include a computer-readable storage medium having stored thereon computer program instructions, which may be used to program a computer (or other electronic devices) to perform a process according to the present invention. The computer-readable storage medium may include, but is not limited to, floppy diskettes, optical disks, CD-ROMs (compact disk read-only memory), and magneto- optical disks, ROMs (read-only memory), RAMs (random access memory), EPROMs (erasable programmable read-only memory), EEPROMs (electrically-erasable programmable read-only memory), magnet or optical cards, flash memory, or other type of media / computer-readable medium suitable for storing electronic instructions. Moreover, the present invention may also be downloaded as a computer program product, wherein the program may be transferred from a remote computer to a requesting computer.

[0081] Many of the methods are described in their most basic form, but processes may be added to or deleted from any of the methods and information may be added or subtracted from any of the described messages without departing from the basic scope of the present invention. It will be apparent to those skilled in the art that many further modifications and adaptations may be made. The particular embodiments are not provided to limit the invention but to illustrate it.

[0082] If it is said that an element "A" is coupled to, with, or together with element "B," element A may be directly coupled to element B or be indirectly coupled through, for example, element C. When the specification states that a component, feature, structure, process, or characteristic A "causes" a component, feature, structure, process, or characteristic B, it means that "A" is at least a partial cause of "B" but that there may also be at least one other component, feature, structure, process, or characteristic that assists in causing "B." If the specification indicates that a component, feature, structure, process, or characteristic "may", "might", or "could" be included, that particular component, feature, structure, process, or characteristic is not required to be included. If the specification refers to "a" or "an" element, this does not mean there is only one of the described elements. [0083] An embodiment is an implementation or example of the invention.

Reference in the specification to "an embodiment," "one embodiment," "some embodiments," or "other embodiments" means that a particular feature, structure, or characteristic described in connection with the embodiments is included in at least some embodiments, but not necessarily all embodiments. The various appearances of "an embodiment," "one embodiment," or "some embodiments" are not necessarily all referring to the same embodiments. It should be appreciated that in the foregoing description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various inventive aspects.

[0084] Upon reading this disclosure, those of skill in the art will appreciate still additional alternative designs for a calibration of single-ended high speed interfaces. Thus, while particular embodiments and applications of the present disclosure have been illustrated and described, it is to be understood that the embodiments are not limited to the precise construction and components disclosed herein and that various modifications, changes and variations which will be apparent to those skilled in the art may be made in the arrangement, operation and details of the method and device of the present disclosure disclosed herein without departing from the spirit and scope of the disclosure as defined in the appended claims.