US6617895B2 - Method and device for symmetrical slew rate calibration - Google Patents

Method and device for symmetrical slew rate calibration Download PDF

Info

Publication number
US6617895B2
US6617895B2 US09/823,442 US82344201A US6617895B2 US 6617895 B2 US6617895 B2 US 6617895B2 US 82344201 A US82344201 A US 82344201A US 6617895 B2 US6617895 B2 US 6617895B2
Authority
US
United States
Prior art keywords
driver
slew rate
frequency
waveform
pull
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
US09/823,442
Other versions
US20020140475A1 (en
Inventor
John F. Zumkehr
James E. Chandler
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Priority to US09/823,442 priority Critical patent/US6617895B2/en
Assigned to INTEL CORPORATION reassignment INTEL CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CHANDLER, JAMES E., ZUMKEHR, JOHN F.
Publication of US20020140475A1 publication Critical patent/US20020140475A1/en
Priority to US10/441,654 priority patent/US6864731B2/en
Application granted granted Critical
Publication of US6617895B2 publication Critical patent/US6617895B2/en
Priority to US11/075,826 priority patent/US7046062B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/003Modifications for increasing the reliability for protection
    • H03K19/00369Modifications for compensating variations of temperature, supply voltage or other physical parameters
    • H03K19/00384Modifications for compensating variations of temperature, supply voltage or other physical parameters in field effect transistor circuits

Definitions

  • the present invention relates to controlling slew rates in signals. More particularly, the present invention relates to controlling the slew rates in drivers that use a push-pull design.
  • Double Data Rate (“DDR”) devices may use a source-synchronous clocking protocol to transfer data from the memory to the memory controller.
  • the devices also may be known as “doublepump” devices.
  • DDR devices using double transfer rates transfer data to and from the memory using both edges of the data strobes.
  • Drivers that use a push-pull design should have slew rates that are controlled carefully and symmetrically in both high-to-low (“HL”) and low-to-high (“LH”) transitions because data is being sent or received depending on these transitions. If the HL or LH transition times of the control signals significantly differ, the interface may no longer be operable.
  • these slew rates should remain constant even with variation in process, temperature and voltage, and the slew rate should be calibrated for a given process, temperature and voltage.
  • a slow slew rate may result in noise problems, while a fast slew rate may result in ringing within the interfaces.
  • Signal integrity of the DDR interface may demand that the slew rate be carefully controlled to prevent noise problems and ringing.
  • the LH transition may be done by P-doped devices, while the HL transition may be done by N-doped devices.
  • an analog-to-digital (A/D) converter is used. This method makes use of a resistor and changes the drive strength of the transistor driving the resistor. The voltage across the resistor is monitored and when a certain voltage is achieved, the system knows that calibration has been reached. This method is not very dynamic and does not measure the actual slew rate directly, but a parameter that contributes to the slew rate.
  • FIG. 1 is a block diagram of device for calibrating the slew rate for drivers constructed according to an embodiment of the present invention.
  • FIG. 2 is a block diagram of a driver cell constructed according to an embodiment of the present invention.
  • FIG. 3 depicts calibration waveforms that can be used to calibrate slew rats in accordance with an embodiment of the present invention.
  • FIG. 4 is a flow diagram of a method for calibrating the slew rate for drivers according to an embodiment of the present invention.
  • One embodiment of the present invention is directed to a device on a processor having drivers with a slew rate controls.
  • the device includes a driver that outputs a signal having a oscillation frequency.
  • the device also includes a receiver coupled to the driver and a frequency counter to measure the frequency of the output signal.
  • the device also includes a component to calibrate the slew rate for the driver.
  • the calibrated slew rate may be set by controls coupled to the driver according to the frequency.
  • the controls may receive the control values from look up tables correlating to the frequency.
  • Embodiments of the present invention may control the slew rate by varying the pre-driver strength to the output buffers. This process may have the effect of varying the resistance on an RC (resistance/capacitance) constant with the capacitance being fixed by the output transistor gate capacitance.
  • the resistance (strength) of the pre-driver is varied by adding or subtracting parallel drivers as needed. Separate pre-driver strength controls may be provided for the pull-up and the pull-down output transistors so that symmetry as well as slew rate can be maintained.
  • a process monitor device may be used to determine what combination of slew rate controls is best.
  • the slew rate controls may be contained in look up tables that have entries.
  • two calibration setups are provided, one for pull-up and one for pull-down.
  • the calibration uses a frequency based process monitor that measures the transition for the pull-up and pull-down of the output drivers.
  • a processor or its components, may program the slew rate appropriate for the current process.
  • FIG. 1 depicts a device 100 for calibrating the slew rate for drivers on a processor in accordance with an embodiment of the present invention.
  • the drivers are input/output drivers that provide an interface to memory.
  • Driver cell 102 may be one of the drivers.
  • Driver cell 102 may be a buffer that receives and outputs data, and may include a driver 104 and a receiver 106 .
  • Resistors 120 may be coupled to receiver 106 , with an input to receiver 106 coupled to a resistor 120 connected to a voltage.
  • Driver cell 102 preferably is a bi-directional buffer that may be used for all operations.
  • Signal 108 may be output from driver 104 .
  • Signal 108 may be a data signal that is being sent or received from memory to driver cell 102 .
  • Signal 108 includes a frequency value and is a waveform having an amplitude. Further, signal 108 has low-to-high (“LH”) and high-to-low (“HL”) transition phases.
  • Signal 108 can be used to determine the calibration controls appropriate for driver cell 106 .
  • signal 108 oscillates through driver cell 102 .
  • Driver cell 102 may be in an oscillator in that it receives what it is driving out. While in oscillate mode, driver cell 102 brings signal 108 to a solitary waveform and may be a buffer that is used to measure the slew rate of driver cell 102 .
  • Frequency counter 110 measures the frequency of signal 108 and may also determine the period of the waveform of signal 108 . Frequency counter 110 then may pass on the frequency information to calibration control 112 . Calibration control 112 maintains a constant frequency of signal 108 while changing the slew rate of driver cell 102 , if needed. Calibration control 114 sets the slew rate in accordance with calibration control values received at driver cell 102 . In the embodiment of FIG. 1, calibration control 114 sets the slew rate for maxim rise and minimum fall times. Frequency counter 110 also may send frequency information of signal 108 to look up table (“LUT”) 116 . LUT 116 can provide the appropriate calibration control values for the drivers in accordance with the frequency determined by frequency counter 110 . The LUT can be implemented in a sparse format to save gates used for slew rate calibration. In a sparse LUT, the complete table used is stored in another location but only the immediate values needed to maintain the correct slew rate are stored locally.
  • a buffer in the form of driver cell 102 is used to measure the slew rate by determining the frequency of a signal.
  • the driver is programmed to be weak in the direction (pull-up or pull-down) of the calibration but strong in the direction not being calibrated. Ideally this results in a waveform that looks like a saw-tooth waveform and one could just measure the frequency of signal 108 and determine the period of the waveform to get the slew rate. This, however, may not be possible in driver cell 102 . Intrinsic delays will be in the waveform of signal 108 due to logic and gates internal to driver cell 102 .
  • a driver cell 202 is depicted according to an embodiment of the present invention.
  • Driver cell 202 includes driver 204 and receiver 206 . Further, logic elements 208 and 210 are coupled between receiver 206 and driver 204 . These elements 208 and 210 may have delays associated with them in order to get driver cell 202 to oscillate. Further, elements 208 and 210 may represent intrinsic delays in the feedback loop of driver cell 202 . These delays, however, should not have much to do with the transition time of the waveform for the signal through driver cell 202 . Elements 208 and 210 have delays that driver cell 202 may not be able to remove from the waveform. Thus, calibration determinations should account for these intrinsic delays in calibrating the slew rate.
  • FIG. 3 depicts waveforms through a driver to be used for calibrating slew rates in accordance with an embodiment of the present invention.
  • the waveforms may coincide with signal 108 as it passes through driver cell 102 .
  • Waveform A is the waveform of signal 108 with zero calibration.
  • the transition delays are “zeroed out” in that driver cell 102 is run as an oscillator with the slew rate to the maximum amount.
  • the transition times for LH and HL should be as small as they can be.
  • any delay is due to intrinsic delays, as disclosed above. Intrinsic delays may occur by going through the feedback loop, as disclosed with reference to FIG. 2 .
  • Waveform A therefore, represents the portion of the slew rate that should not be able to be removed from signal 108 .
  • Waveform B depicts the pull-up calibration waveform where the LH transition controls are set to a minimum value, and the HL transition controls are set to a maximum value.
  • the frequency of waveform B should be based on the slew rate of a weak pull-up device. Most of the period of waveform B should be for the LH transition.
  • Waveform C depicts the zeroed pull-up calibration waveform for driver cell 102 . Waveform C may be determined by subtracting waveform A from waveform B. This action removes the intrinsic delays from waveform B's pull-up calibration. Waveform C should represent the ideal LH, or pull-up, waveform for driver cell 102 .
  • Waveform D depicts the pull-down calibration waveform where the HL transition controls are set to a minimum value, and the LH transition controls are set to a maximum value.
  • the frequency of waveform D should be based on the slew rate of a weak pull-down device. Most of the period of waveform D should be for the HL transition.
  • Waveform E depicts the zeroed pull-down calibration waveform for driver cell 102 . Waveform E may be determined by subtracting waveform A from waveform D. This action removes the intrinsic delays from waveform D's pull-down calibration. Waveform E should represent the ideal HL, or pull-down, waveform for driver cell 102 .
  • Waveforms C and E then may be used to determine the slew rate controls to be used to produce the slew rate for driver cell 102 .
  • Frequency counter 110 may determine the frequency and period of waveforms C and E for each specific transition.
  • the appropriate controls may be selected for each transition by scaling the resistance appropriately given the frequency calculated during calibration. For instance if the desired pull-up slew rate is ten times that of the value calculated by the weak pull-up, the resistance value of the RC in the pre-driver is multiplied by 10.
  • FIG. 4 depicts a flowchart of a method for calibrating a slew rate in accordance with an embodiment of the present invention.
  • the method may be implemented as instructions stored in a memory and executed by a processor. Further, the instructions may be stored in any computer readable medium.
  • Block 400 starts the method for calibrating the slew rate.
  • Block 402 calculates the intrinsic delays within the driver cell. For example, the parameters of waveform A are calculated.
  • the pull-up delays within the slew rate are calculated.
  • the parameters of waveform B are calculated.
  • the pull-down delays are calculated within the slew rate. For example, waveform D is calculated.
  • the pull-up process monitor and pull-down process monitor are used separately to determine the effect of the settings in waveforms B and D on the period of the buffer in this embodiment.
  • the circuit of FIG. 1 may be used to calculate waveform C by subtracting the intrinsic delays from the pull-up delay waveform B (block 408 ) and to calculate waveform E by subtracting the intrinsic delays from the pull-down delay waveform D (block 412 ).
  • the appropriate values to be used to control the period and frequency of the output signal can be applied to the drivers based on the current process, temperature, and voltage.
  • the respective controls for the pull-up and pull-down slew rates are determined.
  • frequency counter 110 can determine the period of the waveforms and use this information to access LUTs to set the calibration controls.
  • frequency counter 110 may have values from 0-15, or 4 bits, for the frequency of the waveforms.
  • LUT 116 would have 16 entries in the table based on the frequency number detected.
  • the pull-up calibration determination would result in a value that correlates to an entry in LUT 116 .
  • the pull-down calibration determination would result in a value that correlates to an entry within another LUT 116 .
  • Different sets of control values would be available for each calibration.
  • the driver controls are set according to the values in the LUTs.
  • LUTs By using LUTs, solutions are predefined based on mathematical or empirical derived values. According to the detected frequency value for the pull-up and pull-down calibrated waveforms, a certain set of control values would be desirable. Alternatively, embodiments of the present invention may use formulas instead of LUTs. A frequency value would be placed in the formula to determine the appropriate control values for the drivers.
  • the LUTs may be sparse look-up tables. These tables may be stored on-chip. Normally, the LUTs may be stored in a Basic Input/Output System (“BIOS”) memory and accessed each time a frequency determined is made by frequency counter 110 . However, sparse tables may reduce accesses to the BIOS memory by storing averages of certain frequency values after an initial calibration. After the initial calibration, frequency values are read out and averaged into a table on the chip. Preferably, this table is smaller than the LUT in the BIOS memory. For example, sparse LUT may pull out the values surrounding the frequency count value of 2 by averaging the values of 1 and 3, or even 0 and 4. This average values then may be stored in the sparse LUT on-chip.
  • BIOS Basic Input/Output System
  • embodiments of the present invention seek to keep slew rates constant even with variation in process, temperature and voltage by calibrating the slew rate for a given process, temperature and voltage.
  • Embodiments of the present invention may compensate symmetrically where the push-pull driver uses devices that do not track directly with each other. An accurate calibration is done for both the LH and HL transitions.

Abstract

A device and method for calibrating a slew rate is disclosed. The slew rate may be for a driver of a bi-directional buffer. A driver outputs a signal having a frequency. A receiver is coupled to the driver. A frequency counter measures the frequency of the signal. A calibrated slew rate is determined by the frequency of a waveform of the signal. Different waveforms may be determined for the pull-up and pull-down calibrations.

Description

FIELD OF THE INVENTION
The present invention relates to controlling slew rates in signals. More particularly, the present invention relates to controlling the slew rates in drivers that use a push-pull design.
BACKGROUND OF THE INVENTION
High speed interfaces using double or quad transfer rates use clock and data signals that have controlled slew rates. Double Data Rate (“DDR”) devices may use a source-synchronous clocking protocol to transfer data from the memory to the memory controller. The devices also may be known as “doublepump” devices. DDR devices using double transfer rates transfer data to and from the memory using both edges of the data strobes. Drivers that use a push-pull design should have slew rates that are controlled carefully and symmetrically in both high-to-low (“HL”) and low-to-high (“LH”) transitions because data is being sent or received depending on these transitions. If the HL or LH transition times of the control signals significantly differ, the interface may no longer be operable. Thus, these slew rates should remain constant even with variation in process, temperature and voltage, and the slew rate should be calibrated for a given process, temperature and voltage. A slow slew rate may result in noise problems, while a fast slew rate may result in ringing within the interfaces. Signal integrity of the DDR interface may demand that the slew rate be carefully controlled to prevent noise problems and ringing.
Current calibration methods may not compensate symmetrically or adequately in technology where the push-pull driver devices that do not track directly with each other over process, temperature and voltage. For example, in some devices, the LH transition may be done by P-doped devices, while the HL transition may be done by N-doped devices.
In one known method for slew rate calibration an analog-to-digital (A/D) converter is used. This method makes use of a resistor and changes the drive strength of the transistor driving the resistor. The voltage across the resistor is monitored and when a certain voltage is achieved, the system knows that calibration has been reached. This method is not very dynamic and does not measure the actual slew rate directly, but a parameter that contributes to the slew rate.
Thus, a need has arisen in the art to measure slew rate directly without additional elements attached or incorporated into the drivers.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of device for calibrating the slew rate for drivers constructed according to an embodiment of the present invention.
FIG. 2 is a block diagram of a driver cell constructed according to an embodiment of the present invention.
FIG. 3 depicts calibration waveforms that can be used to calibrate slew rats in accordance with an embodiment of the present invention.
FIG. 4 is a flow diagram of a method for calibrating the slew rate for drivers according to an embodiment of the present invention.
DETAILED DESCRIPTION
One embodiment of the present invention is directed to a device on a processor having drivers with a slew rate controls. The device includes a driver that outputs a signal having a oscillation frequency. The device also includes a receiver coupled to the driver and a frequency counter to measure the frequency of the output signal. The device also includes a component to calibrate the slew rate for the driver. The calibrated slew rate may be set by controls coupled to the driver according to the frequency. The controls may receive the control values from look up tables correlating to the frequency.
Embodiments of the present invention may control the slew rate by varying the pre-driver strength to the output buffers. This process may have the effect of varying the resistance on an RC (resistance/capacitance) constant with the capacitance being fixed by the output transistor gate capacitance. The resistance (strength) of the pre-driver is varied by adding or subtracting parallel drivers as needed. Separate pre-driver strength controls may be provided for the pull-up and the pull-down output transistors so that symmetry as well as slew rate can be maintained.
To maintain and set a calibrated slew rate, a process monitor device may be used to determine what combination of slew rate controls is best. The slew rate controls may be contained in look up tables that have entries. To determine the correct setting for the pull-up and pull-down pre-drivers, two calibration setups are provided, one for pull-up and one for pull-down. The calibration uses a frequency based process monitor that measures the transition for the pull-up and pull-down of the output drivers. With this information, a processor, or its components, may program the slew rate appropriate for the current process.
FIG. 1 depicts a device 100 for calibrating the slew rate for drivers on a processor in accordance with an embodiment of the present invention. Preferably, the drivers are input/output drivers that provide an interface to memory. Driver cell 102 may be one of the drivers. Driver cell 102 may be a buffer that receives and outputs data, and may include a driver 104 and a receiver 106. Resistors 120 may be coupled to receiver 106, with an input to receiver 106 coupled to a resistor 120 connected to a voltage. Driver cell 102 preferably is a bi-directional buffer that may be used for all operations.
Signal 108 may be output from driver 104. Signal 108 may be a data signal that is being sent or received from memory to driver cell 102. Signal 108 includes a frequency value and is a waveform having an amplitude. Further, signal 108 has low-to-high (“LH”) and high-to-low (“HL”) transition phases. Signal 108 can be used to determine the calibration controls appropriate for driver cell 106. Preferably, signal 108 oscillates through driver cell 102. Driver cell 102 may be in an oscillator in that it receives what it is driving out. While in oscillate mode, driver cell 102 brings signal 108 to a solitary waveform and may be a buffer that is used to measure the slew rate of driver cell 102.
Frequency counter 110 measures the frequency of signal 108 and may also determine the period of the waveform of signal 108. Frequency counter 110 then may pass on the frequency information to calibration control 112. Calibration control 112 maintains a constant frequency of signal 108 while changing the slew rate of driver cell 102, if needed. Calibration control 114 sets the slew rate in accordance with calibration control values received at driver cell 102. In the embodiment of FIG. 1, calibration control 114 sets the slew rate for maxim rise and minimum fall times. Frequency counter 110 also may send frequency information of signal 108 to look up table (“LUT”) 116. LUT 116 can provide the appropriate calibration control values for the drivers in accordance with the frequency determined by frequency counter 110. The LUT can be implemented in a sparse format to save gates used for slew rate calibration. In a sparse LUT, the complete table used is stored in another location but only the immediate values needed to maintain the correct slew rate are stored locally.
Thus, according to embodiments of the present invention, a buffer in the form of driver cell 102 is used to measure the slew rate by determining the frequency of a signal. The driver is programmed to be weak in the direction (pull-up or pull-down) of the calibration but strong in the direction not being calibrated. Ideally this results in a waveform that looks like a saw-tooth waveform and one could just measure the frequency of signal 108 and determine the period of the waveform to get the slew rate. This, however, may not be possible in driver cell 102. Intrinsic delays will be in the waveform of signal 108 due to logic and gates internal to driver cell 102. Referring to FIG. 2, a driver cell 202 is depicted according to an embodiment of the present invention. Driver cell 202 includes driver 204 and receiver 206. Further, logic elements 208 and 210 are coupled between receiver 206 and driver 204. These elements 208 and 210 may have delays associated with them in order to get driver cell 202 to oscillate. Further, elements 208 and 210 may represent intrinsic delays in the feedback loop of driver cell 202. These delays, however, should not have much to do with the transition time of the waveform for the signal through driver cell 202. Elements 208 and 210 have delays that driver cell 202 may not be able to remove from the waveform. Thus, calibration determinations should account for these intrinsic delays in calibrating the slew rate.
FIG. 3 depicts waveforms through a driver to be used for calibrating slew rates in accordance with an embodiment of the present invention. Referring back to FIG. 1, the waveforms may coincide with signal 108 as it passes through driver cell 102. Waveform A is the waveform of signal 108 with zero calibration. Here, the transition delays are “zeroed out” in that driver cell 102 is run as an oscillator with the slew rate to the maximum amount. When run at the maximum slew rate, the transition times for LH and HL should be as small as they can be. Thus, any delay is due to intrinsic delays, as disclosed above. Intrinsic delays may occur by going through the feedback loop, as disclosed with reference to FIG. 2. Waveform A, therefore, represents the portion of the slew rate that should not be able to be removed from signal 108.
Waveform B depicts the pull-up calibration waveform where the LH transition controls are set to a minimum value, and the HL transition controls are set to a maximum value. The frequency of waveform B should be based on the slew rate of a weak pull-up device. Most of the period of waveform B should be for the LH transition. Waveform C depicts the zeroed pull-up calibration waveform for driver cell 102. Waveform C may be determined by subtracting waveform A from waveform B. This action removes the intrinsic delays from waveform B's pull-up calibration. Waveform C should represent the ideal LH, or pull-up, waveform for driver cell 102.
A similar process is repeated with respect to the pull-down transition. Waveform D depicts the pull-down calibration waveform where the HL transition controls are set to a minimum value, and the LH transition controls are set to a maximum value. The frequency of waveform D should be based on the slew rate of a weak pull-down device. Most of the period of waveform D should be for the HL transition. Waveform E depicts the zeroed pull-down calibration waveform for driver cell 102. Waveform E may be determined by subtracting waveform A from waveform D. This action removes the intrinsic delays from waveform D's pull-down calibration. Waveform E should represent the ideal HL, or pull-down, waveform for driver cell 102.
Waveforms C and E then may be used to determine the slew rate controls to be used to produce the slew rate for driver cell 102. Frequency counter 110 may determine the frequency and period of waveforms C and E for each specific transition. Thus, the appropriate controls may be selected for each transition by scaling the resistance appropriately given the frequency calculated during calibration. For instance if the desired pull-up slew rate is ten times that of the value calculated by the weak pull-up, the resistance value of the RC in the pre-driver is multiplied by 10.
FIG. 4 depicts a flowchart of a method for calibrating a slew rate in accordance with an embodiment of the present invention. The method may be implemented as instructions stored in a memory and executed by a processor. Further, the instructions may be stored in any computer readable medium. Block 400 starts the method for calibrating the slew rate. Block 402 calculates the intrinsic delays within the driver cell. For example, the parameters of waveform A are calculated. In block 404, the pull-up delays within the slew rate are calculated. For example, the parameters of waveform B are calculated. In block 406, the pull-down delays are calculated within the slew rate. For example, waveform D is calculated. In blocks 408 and 412, the pull-up process monitor and pull-down process monitor are used separately to determine the effect of the settings in waveforms B and D on the period of the buffer in this embodiment. In other words, the circuit of FIG. 1 may be used to calculate waveform C by subtracting the intrinsic delays from the pull-up delay waveform B (block 408) and to calculate waveform E by subtracting the intrinsic delays from the pull-down delay waveform D (block 412). With these values, the appropriate values to be used to control the period and frequency of the output signal can be applied to the drivers based on the current process, temperature, and voltage. For example, in blocks 410 and 414, the respective controls for the pull-up and pull-down slew rates are determined.
Referring back to FIG. 1, using the frequency of the determined waveforms, for example, waveforms C and E, frequency counter 110 can determine the period of the waveforms and use this information to access LUTs to set the calibration controls. For example, frequency counter 110 may have values from 0-15, or 4 bits, for the frequency of the waveforms. LUT 116 would have 16 entries in the table based on the frequency number detected. Thus, in block 410, the pull-up calibration determination would result in a value that correlates to an entry in LUT 116. In block 414, the pull-down calibration determination would result in a value that correlates to an entry within another LUT 116. Different sets of control values would be available for each calibration. In block 416 the driver controls are set according to the values in the LUTs.
By using LUTs, solutions are predefined based on mathematical or empirical derived values. According to the detected frequency value for the pull-up and pull-down calibrated waveforms, a certain set of control values would be desirable. Alternatively, embodiments of the present invention may use formulas instead of LUTs. A frequency value would be placed in the formula to determine the appropriate control values for the drivers.
In another embodiment of the present invention, the LUTs, such as LUT 116, may be sparse look-up tables. These tables may be stored on-chip. Normally, the LUTs may be stored in a Basic Input/Output System (“BIOS”) memory and accessed each time a frequency determined is made by frequency counter 110. However, sparse tables may reduce accesses to the BIOS memory by storing averages of certain frequency values after an initial calibration. After the initial calibration, frequency values are read out and averaged into a table on the chip. Preferably, this table is smaller than the LUT in the BIOS memory. For example, sparse LUT may pull out the values surrounding the frequency count value of 2 by averaging the values of 1 and 3, or even 0 and 4. This average values then may be stored in the sparse LUT on-chip.
Thus, embodiments of the present invention seek to keep slew rates constant even with variation in process, temperature and voltage by calibrating the slew rate for a given process, temperature and voltage. Embodiments of the present invention may compensate symmetrically where the push-pull driver uses devices that do not track directly with each other. An accurate calibration is done for both the LH and HL transitions.
Thus, it is apparent that there has been provided, in accordance with the embodiments of the present invention disclosed above, a method and apparatus recovering registers for a register renaming structure. Although the present invention has been disclosed in detail, it should be understood that various changes, substitutions, and alterations may be made herein. Moreover, although software and hardware are described to control certain functions, such functions can be performed using either software, hardware or a combination of software and hardware, as is well known in the art. Other examples are readily ascertainable by one skilled in the art and may be made without departing from the spirit and scope of the present invention as defined by the following claims.

Claims (9)

What is claimed is:
1. A slew rate calibration device, comprising:
a driver that acts as an oscillator having a frequency;
a receiver coupled to said driver;
a frequency counter to measure said frequency; and
a slew rate calibration control coupled to said driver and said frequency counter, said slew rate calibration control to calibrate slew rate in a signal output by said driver in low-to-high and high-to-low transition phases.
2. The device of claim 1, further comprising a look up table for said frequency, wherein said look up table is to store calibrated slew rates.
3. The device of claim 2, further comprising an inverter coupled to said driver, said inverter having a delay.
4. The device of claim 3, wherein said delay is within said calibrated slew-rates.
5. The device of claim 1, further comprising an interconnect coupled to said driver that receives said signal.
6. A calibration device for push-pull drivers on a processor, comprising:
a driver responsive to a slew rate calibration control;
a receiver coupled to said driver, said receiver having a delay;
a frequency counter to measure a frequency of a signal through said driver; and
the slew rate calibration control coupled to said driver and said frequency counter, said slew rate calibration control to determine a slew rate calibration for an output signal by said driver in low-to-high and high-to-low transition phases in accordance with said delays and a look up table that to store calibrated slew rates correlate to said frequency.
7. The device of claim 6, wherein said look up table is a sparse look up table.
8. The device of claim 6, wherein said driver and said receiver comprise a buffer.
9. The device of claim 8, wherein said buffer is an input/output buffer.
US09/823,442 2001-03-30 2001-03-30 Method and device for symmetrical slew rate calibration Expired - Fee Related US6617895B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US09/823,442 US6617895B2 (en) 2001-03-30 2001-03-30 Method and device for symmetrical slew rate calibration
US10/441,654 US6864731B2 (en) 2001-03-30 2003-05-19 Method and device for symmetrical slew rate calibration
US11/075,826 US7046062B2 (en) 2001-03-30 2005-03-08 Method and device for symmetrical slew rate calibration

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/823,442 US6617895B2 (en) 2001-03-30 2001-03-30 Method and device for symmetrical slew rate calibration

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US10/441,654 Division US6864731B2 (en) 2001-03-30 2003-05-19 Method and device for symmetrical slew rate calibration

Publications (2)

Publication Number Publication Date
US20020140475A1 US20020140475A1 (en) 2002-10-03
US6617895B2 true US6617895B2 (en) 2003-09-09

Family

ID=25238781

Family Applications (3)

Application Number Title Priority Date Filing Date
US09/823,442 Expired - Fee Related US6617895B2 (en) 2001-03-30 2001-03-30 Method and device for symmetrical slew rate calibration
US10/441,654 Expired - Fee Related US6864731B2 (en) 2001-03-30 2003-05-19 Method and device for symmetrical slew rate calibration
US11/075,826 Expired - Fee Related US7046062B2 (en) 2001-03-30 2005-03-08 Method and device for symmetrical slew rate calibration

Family Applications After (2)

Application Number Title Priority Date Filing Date
US10/441,654 Expired - Fee Related US6864731B2 (en) 2001-03-30 2003-05-19 Method and device for symmetrical slew rate calibration
US11/075,826 Expired - Fee Related US7046062B2 (en) 2001-03-30 2005-03-08 Method and device for symmetrical slew rate calibration

Country Status (1)

Country Link
US (3) US6617895B2 (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020067645A1 (en) * 2000-12-05 2002-06-06 International Business Machines Corp. Method and system for increasing timing margins without deteriorating a data transfer rate
US6836168B1 (en) * 2002-10-02 2004-12-28 Xilinx, Inc. Line driver with programmable slew rates
US6864731B2 (en) * 2001-03-30 2005-03-08 Intel Corporation Method and device for symmetrical slew rate calibration
US20050071706A1 (en) * 2003-09-29 2005-03-31 Deshmane Mahesh J. Slew rate control mechanism
US20050104624A1 (en) * 2003-11-14 2005-05-19 Zumkehr John F. Internal voltage reference for memory interface
US20050127947A1 (en) * 2003-12-10 2005-06-16 Arnold Barry J. Output buffer slew rate control using clock signal
US20070150197A1 (en) * 2005-12-28 2007-06-28 Srikrishnan Venkataraman Method to control delay between lanes
US20090289678A1 (en) * 2006-09-11 2009-11-26 Freescale Semiconductor , Inc. Method of control slope regulation and control slope regulation apparatus
US20100244714A1 (en) * 2007-11-13 2010-09-30 Freeescale Semiconductor IN.c System and method to improve switching in power switching applications
DE102009054168A1 (en) * 2009-11-23 2011-05-26 Marquardt Gmbh Interface for use in electronic closing system utilized as door closing system for access authorization to transmit data of passenger car, has filter for dimensioning raising edges, where slopes of raising and falling edges are different
US8692600B1 (en) 2013-01-09 2014-04-08 International Business Machines Corporation Multi-protocol driver slew rate calibration system for calibration slew rate control signal values

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6889335B2 (en) * 2001-04-07 2005-05-03 Hewlett-Packard Development Company, L.P. Memory controller receiver circuitry with tri-state noise immunity
US7923982B2 (en) * 2005-09-02 2011-04-12 Panasonic Corporation Semiconductor integrated circuit
US8258798B2 (en) * 2006-12-28 2012-09-04 Stmicroelectronics International N.V. On chip duty cycle measurement module
US7548822B2 (en) * 2007-07-13 2009-06-16 International Business Machines Corporation Apparatus and method for determining the slew rate of a signal produced by an integrated circuit
US20090157340A1 (en) * 2007-12-17 2009-06-18 Kawasaki Microelectronics U.S.A., Inc. Method and system for yield enhancement

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4870629A (en) * 1987-01-30 1989-09-26 Hewlett-Packard Company Method for electronic calibration of a voltage-to-time converter
US5256964A (en) * 1992-07-31 1993-10-26 International Business Machines Corporation Tester calibration verification device
US5469097A (en) * 1993-09-08 1995-11-21 Advanced Micro Devices, Inc. Translator circuit with symmetrical switching delays
US5543976A (en) * 1995-02-09 1996-08-06 Nvision, Inc. Providing transitions of slew rate dependent on pulse frequency
US5621335A (en) * 1995-04-03 1997-04-15 Texas Instruments Incorporated Digitally controlled output buffer to incrementally match line impedance and maintain slew rate independent of capacitive output loading
US5659587A (en) * 1994-11-23 1997-08-19 Tektronix, Inc. Spread spectrum phase-locked loop clock generator with VCO driven by a symmetrical voltage ramp signal
US5949249A (en) * 1997-04-10 1999-09-07 International Business Machines Corporation Driver having inductance-controlled current slew rate
US5959481A (en) * 1997-02-18 1999-09-28 Rambus Inc. Bus driver circuit including a slew rate indicator circuit having a one shot circuit
US6047346A (en) * 1998-02-02 2000-04-04 Rambus Inc. System for adjusting slew rate on an output of a drive circuit by enabling a plurality of pre-drivers and a plurality of output drivers
US6075379A (en) * 1998-01-22 2000-06-13 Intel Corporation Slew rate control circuit
US6081134A (en) * 1997-12-23 2000-06-27 U.S. Philips Corporation Output stage with self calibrating slew rate control
US6166562A (en) * 1997-02-26 2000-12-26 Kabushiki Kaisha Toshiba Semiconductor integrated circuit device
US6172541B1 (en) * 1998-09-14 2001-01-09 Intersil Corporation Driver circuit having load-independent slew rate
US6265921B1 (en) * 1998-09-11 2001-07-24 Stmicroelectronics Gmbh Circuit configuration for shaping slew rate
US6278305B1 (en) * 1998-02-09 2001-08-21 Matsushita Electric Industrial, Ltd. Semiconductor integrated circuit
US6307441B1 (en) * 1997-12-31 2001-10-23 Texas Instruments Incorporated Shape modulation transmit loop with digital frequency control and method for same
US6333654B1 (en) * 2000-03-15 2001-12-25 Nortel Networks Limited Variable power supply technique for use with a high efficiency line driver

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5440258A (en) * 1994-02-08 1995-08-08 International Business Machines Corporation Off-chip driver with voltage regulated predrive
US5703496A (en) * 1995-09-26 1997-12-30 Intel Corporation Method and apparatus for limiting the slew rate of output drivers by selectively programming the threshold voltage of flash cells connected thereto
US5887150A (en) * 1997-06-25 1999-03-23 Adaptec, Inc. SCSI controller having output driver with slew rate control
US6163169A (en) * 1998-08-13 2000-12-19 International Business Machines Corporation CMOS tri-state control circuit for a bidirectional I/O with slew rate control
EP1001535B1 (en) * 1998-11-10 2005-01-26 STMicroelectronics S.r.l. Circuit for controlling the slew rate of the output voltage of a driver in push-pull configuration
US6452428B1 (en) * 1999-11-23 2002-09-17 Intel Corporation Slew rate control circuit
US6351172B1 (en) * 2000-02-29 2002-02-26 Dmel Inc. High-speed output driver with an impedance adjustment scheme
US6549036B1 (en) * 2000-05-31 2003-04-15 Micron Technology, Inc. Simple output buffer drive strength calibration
US6330194B1 (en) * 2000-06-26 2001-12-11 Micron Technology, Inc. High speed I/O calibration using an input path and simplified logic
ITVA20000027A1 (en) * 2000-08-10 2002-02-10 St Microelectronics Srl OUTPUT BUFFER AND PILOTING METHOD OF AN OUTPUT BUFFER.
US6617895B2 (en) * 2001-03-30 2003-09-09 Intel Corporation Method and device for symmetrical slew rate calibration
US6571376B1 (en) * 2002-01-03 2003-05-27 Intel Corporation Method and apparatus for analog compensation of driver output signal slew rate against device impedance variation
US6836168B1 (en) * 2002-10-02 2004-12-28 Xilinx, Inc. Line driver with programmable slew rates

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4870629A (en) * 1987-01-30 1989-09-26 Hewlett-Packard Company Method for electronic calibration of a voltage-to-time converter
US5256964A (en) * 1992-07-31 1993-10-26 International Business Machines Corporation Tester calibration verification device
US5469097A (en) * 1993-09-08 1995-11-21 Advanced Micro Devices, Inc. Translator circuit with symmetrical switching delays
US5659587A (en) * 1994-11-23 1997-08-19 Tektronix, Inc. Spread spectrum phase-locked loop clock generator with VCO driven by a symmetrical voltage ramp signal
US5543976A (en) * 1995-02-09 1996-08-06 Nvision, Inc. Providing transitions of slew rate dependent on pulse frequency
US5621335A (en) * 1995-04-03 1997-04-15 Texas Instruments Incorporated Digitally controlled output buffer to incrementally match line impedance and maintain slew rate independent of capacitive output loading
US5959481A (en) * 1997-02-18 1999-09-28 Rambus Inc. Bus driver circuit including a slew rate indicator circuit having a one shot circuit
US6166562A (en) * 1997-02-26 2000-12-26 Kabushiki Kaisha Toshiba Semiconductor integrated circuit device
US5949249A (en) * 1997-04-10 1999-09-07 International Business Machines Corporation Driver having inductance-controlled current slew rate
US6081134A (en) * 1997-12-23 2000-06-27 U.S. Philips Corporation Output stage with self calibrating slew rate control
US6307441B1 (en) * 1997-12-31 2001-10-23 Texas Instruments Incorporated Shape modulation transmit loop with digital frequency control and method for same
US6075379A (en) * 1998-01-22 2000-06-13 Intel Corporation Slew rate control circuit
US6047346A (en) * 1998-02-02 2000-04-04 Rambus Inc. System for adjusting slew rate on an output of a drive circuit by enabling a plurality of pre-drivers and a plurality of output drivers
US6278305B1 (en) * 1998-02-09 2001-08-21 Matsushita Electric Industrial, Ltd. Semiconductor integrated circuit
US6265921B1 (en) * 1998-09-11 2001-07-24 Stmicroelectronics Gmbh Circuit configuration for shaping slew rate
US6172541B1 (en) * 1998-09-14 2001-01-09 Intersil Corporation Driver circuit having load-independent slew rate
US6333654B1 (en) * 2000-03-15 2001-12-25 Nortel Networks Limited Variable power supply technique for use with a high efficiency line driver

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020067645A1 (en) * 2000-12-05 2002-06-06 International Business Machines Corp. Method and system for increasing timing margins without deteriorating a data transfer rate
US7046062B2 (en) * 2001-03-30 2006-05-16 Intel Corporation Method and device for symmetrical slew rate calibration
US6864731B2 (en) * 2001-03-30 2005-03-08 Intel Corporation Method and device for symmetrical slew rate calibration
US20050189975A1 (en) * 2001-03-30 2005-09-01 Zumkehr John F. Method and device for symmetrical slew rate calibration
US6836168B1 (en) * 2002-10-02 2004-12-28 Xilinx, Inc. Line driver with programmable slew rates
US20050071706A1 (en) * 2003-09-29 2005-03-31 Deshmane Mahesh J. Slew rate control mechanism
US7330993B2 (en) * 2003-09-29 2008-02-12 Intel Corporation Slew rate control mechanism
US7095245B2 (en) 2003-11-14 2006-08-22 Intel Corporation Internal voltage reference for memory interface
US20050104624A1 (en) * 2003-11-14 2005-05-19 Zumkehr John F. Internal voltage reference for memory interface
US20050127947A1 (en) * 2003-12-10 2005-06-16 Arnold Barry J. Output buffer slew rate control using clock signal
US7202702B2 (en) * 2003-12-10 2007-04-10 Hewlett-Packard Development Company, L.P. Output buffer slew rate control using clock signal
US20070150197A1 (en) * 2005-12-28 2007-06-28 Srikrishnan Venkataraman Method to control delay between lanes
US8166215B2 (en) * 2005-12-28 2012-04-24 Intel Corporation Method to control delay between lanes
US20090289678A1 (en) * 2006-09-11 2009-11-26 Freescale Semiconductor , Inc. Method of control slope regulation and control slope regulation apparatus
US7902892B2 (en) * 2006-09-11 2011-03-08 Freescale Semiconductor, Inc. Method of control slope regulation and control slope regulation apparatus
US20100244714A1 (en) * 2007-11-13 2010-09-30 Freeescale Semiconductor IN.c System and method to improve switching in power switching applications
US8384313B2 (en) 2007-11-13 2013-02-26 Freescale Semiconductor, Inc. System and method to improve switching in power switching applications
DE102009054168A1 (en) * 2009-11-23 2011-05-26 Marquardt Gmbh Interface for use in electronic closing system utilized as door closing system for access authorization to transmit data of passenger car, has filter for dimensioning raising edges, where slopes of raising and falling edges are different
US8692600B1 (en) 2013-01-09 2014-04-08 International Business Machines Corporation Multi-protocol driver slew rate calibration system for calibration slew rate control signal values

Also Published As

Publication number Publication date
US20020140475A1 (en) 2002-10-03
US20050189975A1 (en) 2005-09-01
US20030201811A1 (en) 2003-10-30
US7046062B2 (en) 2006-05-16
US6864731B2 (en) 2005-03-08

Similar Documents

Publication Publication Date Title
US7046062B2 (en) Method and device for symmetrical slew rate calibration
US6541996B1 (en) Dynamic impedance compensation circuit and method
US6320438B1 (en) Duty-cycle correction driver with dual-filter feedback loop
KR100681879B1 (en) Device for controlling on-die termination
US6906567B2 (en) Method and structure for dynamic slew-rate control using capacitive elements
KR100532414B1 (en) Output driver having automatic slew rate control scheme and slew rate control method thereof
US6226324B1 (en) Methods and systems for trimming a PWM signal
US7038512B2 (en) Closed-loop independent DLL-controlled rise/fall time control circuit
US7038513B2 (en) Closed-loop independent DLL-controlled rise/fall time control circuit
US7663397B2 (en) Semiconductor device including on-die termination control circuit having pipe line varying with frequency range
US6664805B2 (en) Switched capacitor piecewise linear slew rate control methods for output devices
US7126395B2 (en) Dynamic slew rate controlling method and device for reducing variance in simultaneous switching output
US8441283B2 (en) Integrated circuit
US8334706B2 (en) Impedance calibration mode control circuit
US11031054B1 (en) Apparatuses and methods for pre-emphasis control
US20070170969A1 (en) Electronic system having a clock signal correcting device
US6275074B1 (en) System for propagating a digital signal through a slew-rate limited node and method of operation
US7864183B1 (en) Dynamic switching of memory termination characteristics in a graphics system
US7248636B2 (en) Systems and methods for adjusting an output driver
KR20050003895A (en) Open drain type output buffer circuit capable of controlling pull-up slew rate
US6973398B2 (en) System level reduction of clock skew based on local thermal profiling
US6259282B1 (en) External pull-up resistor detection and compensation of output buffer
US6426651B1 (en) Method and apparatus for improving the performance of buffers using a translator circuit
US20090289684A1 (en) Pulse detection device and pulse detection method
US7688127B2 (en) Method for generating a output clock signal having a output cycle and a device having a clock signal generating capabilities

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTEL CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ZUMKEHR, JOHN F.;CHANDLER, JAMES E.;REEL/FRAME:011703/0451

Effective date: 20010330

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20150909