US7227395B1 - High-performance memory interface circuit architecture - Google Patents

High-performance memory interface circuit architecture Download PDF

Info

Publication number
US7227395B1
US7227395B1 US11/055,125 US5512505A US7227395B1 US 7227395 B1 US7227395 B1 US 7227395B1 US 5512505 A US5512505 A US 5512505A US 7227395 B1 US7227395 B1 US 7227395B1
Authority
US
United States
Prior art keywords
shift control
phase shift
control setting
delay
phase
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, expires
Application number
US11/055,125
Inventor
Joseph Huang
Chiakang Sung
Philip Pan
Yan Chong
Andy L. Lee
Brian D. Johnson
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.)
Tahoe Research Ltd
Original Assignee
Altera 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 Altera Corp filed Critical Altera Corp
Assigned to ALTERA CORPORATION reassignment ALTERA CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: JOHNSON, BRIAN D., SUNG, CHIAKANG, LEE, ANDY L., CHONG, YAN, HUANG, JOSEPH, PAN, PHILIP
Priority to US11/055,125 priority Critical patent/US7227395B1/en
Priority to US11/789,598 priority patent/US7535275B1/en
Publication of US7227395B1 publication Critical patent/US7227395B1/en
Application granted granted Critical
Priority to US12/467,681 priority patent/US7969215B1/en
Priority to US13/168,499 priority patent/US8305121B1/en
Priority to US13/486,670 priority patent/US8680905B1/en
Priority to US13/614,526 priority patent/US8593195B1/en
Priority to US14/214,906 priority patent/US9059716B1/en
Assigned to INTEL CORPORATION reassignment INTEL CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ALTERA CORPORATION
Assigned to TAHOE RESEARCH, LTD. reassignment TAHOE RESEARCH, LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: INTEL CORPORATION
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/0805Details of the phase-locked loop the loop being adapted to provide an additional control signal for use outside the loop
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/081Details of the phase-locked loop provided with an additional controlled phase shifter
    • H03L7/0812Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used
    • H03L7/0814Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used the phase shifting device being digitally controlled
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/081Details of the phase-locked loop provided with an additional controlled phase shifter
    • H03L7/0812Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used
    • H03L7/0818Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used the controlled phase shifter comprising coarse and fine delay or phase-shifting means

Definitions

  • the present invention relates generally to data transmission schemes between various digital devices and more particularly to a high-performance memory interface circuit architecture.
  • a memory device in an electronic system is used for storing various types of data.
  • the data often need to be transmitted to a data processing device in the system, e.g., a central processing unit (CPU) or a programmable logic device (PLD), through a set of communication channels and processed therein to produce certain results.
  • a set of communication channels typically includes one or more channels carrying data signals (DQ) and one channel carrying a data strobe signal (DQS), whose rising/falling edges are used by a device, e.g., a memory controller, that interfaces the memory device with the data processing device to sample the DQ signals.
  • DQ data signals
  • DQS data strobe signal
  • a DQS signal coming out of a memory device is usually configured to be edge-aligned with its associated DQ signals so that there is no phase shift between the two types of signals when they reach the memory controller.
  • the DQS signal is at the center of the data sampling window.
  • FIGS. 1A and 1B schematically illustrate two typical data sampling schemes that are often used by a memory controller: (1) the single-data-rate (SDR) scheme in FIG. 1A in which a DQ signal 160 is sampled once per cycle of DQS signal 120 ; and (2) the double-data-rate (DDR) scheme in FIG. 1B in which a DQ signal 170 is sampled twice per cycle of DQS signal 130 , once on the rising edge of the DQS signal and once on the falling edge.
  • the DQS signals ( 120 , 130 ) are initially edge-aligned with their respective DQ signals ( 160 , 170 ). But a single data bit of the DQ signal 160 is twice as long as a single data bit of the DQ signal 170 .
  • the data sampling window W 90 in FIG. 1B is only about half the data sampling window W 180 in FIG. 1A .
  • a small data sampling window increases the possibility of data sampling errors and therefore compromises efforts toward improving a memory device's performance by increasing its operating frequency.
  • a memory interface circuit architecture that adaptively determines a desired phase delay to center-align a DQS signal to a DQ signal and dynamically adjusts the phase-shifted DQS signal when its sampling edge deviates from the center of the DQ signal's data sampling window.
  • a programmable memory interface circuit includes a programmable DLL delay chain, a phase offset control circuit and a programmable DQS delay chain.
  • the DLL delay chain uses a set of serially connected delay cells, a programmable switch, a phase detector and a digital counter to generate a coarse phase shift control setting.
  • the coarse phase shift control setting is used for generating a fine phase shift control setting, that is also applied to the DQS delay chain.
  • the coarse and fine phase shift control settings work in concert to generate a phase-delayed DQS signal that preferably is center-aligned to its associated DQ signals.
  • FIGS. 1A and 1B schematically illustrate two typical data sampling schemes that are often used by a memory controller.
  • FIG. 2 is a diagram illustrative of a programmable memory interface circuit architecture according to one embodiment of the present invention.
  • FIGS. 3A–3C are three flowcharts summarizing the operations of different components in the programmable memory interface circuit according to one embodiment of the present invention.
  • FIG. 4 is a chart illustrating how the different components in the memory interface circuit coordinate to generate a desired phase delay.
  • FIG. 2 is a diagram illustrative of a programmable memory interface circuit architecture according to one embodiment of the present invention.
  • the interface circuit primarily includes three functionally distinct components, i.e., a programmable delay locked loop (DLL) delay chain 200 , a phase offset control circuit 250 and a programmable DQS delay chain 230 .
  • DLL programmable delay locked loop
  • a pair of DQ and DQS signals coming from a memory device (not shown) enters the interface circuit at respective DQ and DQS terminals at the top-left corner of FIG. 2 .
  • the DQS signal passes through the programmable DQS delay chain 230 and incurs a desired amount of phase delay.
  • the phase-delayed DQS signal is then used to sample the DQ signal at the two latches 245 and 246 with its two opposite edges.
  • phase delay applied to the DQS signal needs to be precise in order to shift the DQS signal's sampling edge exactly to the center of a data sampling window.
  • the phase delay also needs to be dynamically updated if the sampling edge significantly drifts away from the center of the window due to environmental impacts.
  • the programmable DLL delay chain 200 and the phase offset control circuit 250 are configured to generate a phase shift control setting which, when applied to the programmable DQS delay chain 230 , produces the desired phase delay to the DQS signal.
  • the programmable DLL delay chain 200 includes 16 serially connected delay cells 220 that are organized into four sub-chains 201 , 203 , 205 , 207 , each sub-chain having four delay cells 220 .
  • a clock signal CLK is applied to the programmable DLL delay chain 200 at a clock terminal.
  • Each of the 16 delay cells receives the same coarse phase shift control setting 215 and in response thereto causes the same amount of phase delay to the clock signal that passes through the delay cell.
  • the amount of phase delay per cell has two components: a variable component that is determined by phase shift control setting 215 and an intrinsic setting that is determined by the time it takes a signal to traverse the delay cell when the variable component is zero.
  • the output of the 16th delay cell in the series is connected to one input terminal “00” of a programmable switch 209 .
  • the outputs of the 12th, 10th and 8th delay cells in the series are respectively connected to input terminals “01”, “10” and “11” of the programmable switch 209 .
  • the programmable switch 209 is configured to allow one of the phase-delayed clock signals to reach one input terminal of a phase detector 211 .
  • Another input terminal of the phase detector 211 is directly connected to the clock terminal.
  • the phase detector 211 receives two copies of the clock signal, one with virtually no phase delay and the other with a phase delay.
  • the phase detector 211 compares the two copies to determine whether the phase difference between the two copies is exactly 360° (or a clock cycle). If not, the phase detector 211 sends an update instruction to a 6-bit counter 213 which is responsible for updating the coarse phase shift control setting 215 .
  • the 6-bit counter 213 increases or decreases the coarse phase shift control setting 215 by a certain number and the updated coarse phase shift control setting 215 is fed back to adjust the amount of phase delay generated by each delay cell until the two copies of the clock signal overlap one another. In some embodiments, it takes multiple clock cycles for the programmable DLL delay chain 200 to determine an optimal coarse phase shift control setting 215 .
  • the optimal coarse phase shift control setting 215 is subsequently applied to a set of delay cells 240 in the programmable DQS delay chain 230 .
  • a delay cell 240 in the DQS delay chain 230 controlled by the coarse phase shift control setting 215 generates the same phase shift as does a delay cell 220 in the DLL delay chain 200 . Therefore, if the desired phase delay is 90° and the coarse phase shift control setting corresponds to 30° phase delay, a configuration including three delay cells 240 in the DQS delay chain 230 will produce a desired 90°-delayed DQS signal.
  • DDL delay chain 220 can only produce discrete delay values like 22.5°, 30°, 36° or 45°, there are severe limits on the possible delay that can be generated by the programmable DQS delay chain 230 using only the coarse phase shift control setting 215 .
  • a desired phase delay may not be a multiple of the phase delay generated by an individual delay cell 240 controlled by coarse phase shift control setting 215 .
  • coarse phase shift control setting 215 After applying the optimal coarse phase shift control setting 215 to the programmable DQS delay chain 230 , there may still be a residual phase difference between the sampling edge of the DQS signal and the center of the data sampling window of the DQ signal.
  • another phase shift control setting that finely tunes the DQS signal to eliminate or at least reduce the residual phase difference.
  • phase shift control setting 256 is stored in the configuration flip-flops 260 of FIG. 2 .
  • This residual setting may then be added to or subtracted from the coarse phase shift control setting through switch 253 and adder 251 to generate a fine phase shift control setting 216 .
  • an initially center-aligned DQS signal may drift away from the center of a data sampling window due to environmental impacts.
  • the configuration flip-flops 260 may provide a different static residual phase shift control setting 256 from time to time or the intrinsic delay in the delay cells may change. Therefore, a dynamically-generated residual phase shift control setting is needed.
  • a soft core calibration logic 270 in a programmable logic device 280 generates a dynamic residual phase shift control setting 257 in response to the coarse phase shift control setting 215 .
  • This calibration logic 270 periodically or on request, checks if the current DQS signal's sampling edge has missed the center of the data sampling window by comparing a data sampling result with a data sampling pattern stored in the memory device. If the sampling edge has missed the center due to, e.g., PVT variations, the calibration logic 270 updates the dynamic residual phase shift control setting 257 to move the sampling edge back to the center of the data sampling window.
  • the static residual phase shift control setting 256 is registered into a storage device, e.g., a set of configuration flip-flops 260 , and the dynamic residual phase shift control setting 257 is stored in the soft core calibration logic 270 , each setting comprising 6 digital bits.
  • the configuration flip-flops 260 and the soft core calibration logic 270 are, respectively, connected to the two input terminals of a programmable switch 253 in the phase offset control circuit 250 .
  • each residual setting has an associated instruction bit indicating whether the phase offset associated with the setting should be added to or subtracted from the phase delay generated by the coarse phase shift control setting 215 .
  • the two instruction bits are two inputs into another programmable switch 255 in the phase offset control circuit 250 that chooses an instruction bit corresponding to the setting chosen at the switch 253 .
  • the outputs of the two switches 253 and 255 and the coarse phase shift control setting 215 are inputs to adder 251 .
  • the operation of the adder 251 is similar to that of 6-bit counter 213 .
  • the adder 251 determines whether to increase or decrease the coarse phase shift setting 215 by the value present at the output of switch 253 to generate the fine phase shift control setting 216 that is subsequently transmitted to the DQS delay chain 230 to finely tune the phase delay of the DQS signal.
  • the static residual phase shift control setting 256 may be affected by PVT variations. To recover from the PVT variations, the system usually needs to be powered down first in order to re-program the configuration flip-flops 260 . In contrast, if the fine phase shift control setting 216 is a function of the dynamic residual phase shift control setting 257 and its associated instruction bit generated by the soft core calibration logic 270 , the system does not have to be shut down to update the fine shift control setting 216 .
  • the programmable DQS delay chain 230 includes two programmable switches, switch 235 interfacing the coarse and fine phase shift control settings with the leftmost delay cell 240 L and switch 237 interfacing the coarse and fine phase shift settings with the other three cells 240 .
  • switch 235 is programmed so that the leftmost cell 240 L is controlled by the fine phase shift control setting and switch 237 is programmed so that the other three delay cells are controlled by the coarse phase shift control setting.
  • the three delay cells generate one portion of the desired phase delay and the leftmost delay cell contributes another portion that includes the residual phase difference.
  • each delay chain may include a programmable switch that has one input terminal for every unique number of delay cells in the series.
  • Different configurations of the programmable DLL and DQS delay chains generate a wide variety of discrete phase delays. Given that the number of active delay cells in the DLL delay chain is M and the number of active delay cells controlled by the coarse phase shift control setting in the DQS delay chain is N, a coarse phase shift associated with the coarse phase shift control setting can be defined as:
  • V 360 ⁇ ° ⁇ N M Therefore, the programmable DLL and DQS delay chains provide a system designer more flexibility in designing a memory interface circuit.
  • FIGS. 3A–3C are three flowcharts summarizing the operations of different components in the programmable memory interface circuit shown in FIG. 2 .
  • the switch 209 in the DLL delay chain 200 is first programmed to select a set of serially connected delay cells 220 , each delay cell being associated with a coarse phase shift control setting.
  • a clock signal is applied to the set of delay cells to generate at the input to switch 209 a clock signal having a phase delay specified by the coarse control setting.
  • the phase detector measures the phase delay caused by the set of delay cells. If the phase delay is not exactly 360° (step 308 ), the digital counter is prompted by the phase detector to update the coarse phase shift control setting at step 310 . This process continues until the phase delay is exactly 360°.
  • the phase offset control circuit 250 chooses one of the static and dynamic residual control settings.
  • the static residual control setting is pre-computed and stored in a storage device, while the dynamic residual control setting is dynamically generated by the soft core calibration logic 270 .
  • Both the static and dynamic residual control settings are determined in accordance with the coarse phase shift control setting 215 and a desired phase shift of the DQS delay chain 230 . More specifically, a phase delay determined by the static or dynamic residual control setting corresponds to a residual phase difference that cannot be provided by the coarse phase shift control setting.
  • the phase offset control circuit 250 chooses an instruction bit associated with one of the two residual control settings chosen previously.
  • the phase offset control circuit generates a new fine phase shift control setting by summing the coarse control setting and a positive or negative value of one of the static and dynamic residual control settings and then applying the new fine phase shift control setting to the DQS delay chain 230 to finely tune the phase shift of the DQS signal.
  • the DQS delay chain 230 first selects a set of serially connected delay cells 240 .
  • the set of delay cells is divided into two subsets.
  • the two subsets of delay cells are respectively configured by the coarse and fine phase shift control settings.
  • a DQS signal is fed into the DQS delay chain 230 comprising the two subsets of delay cells to produce a desired phase delay that shifts the DQS signal's sampling edge to the center of a corresponding DQ signal's data sampling window. If the fine phase shift control setting used at step 344 is derived from the dynamic control setting, the memory interface circuit can adjust the DQS signal to stay center-aligned with the DQ signal.
  • the following example illustrates how the different components in the memory interface circuit shown in FIG. 2 work in concert to generate a desired phase delay.
  • two delay cells are selected in the DQS delay chain 230 .
  • the two delay cells include the leftmost delay cell 240 L configured by the fine phase shift control setting and a delay cell 240 next to it configured by the coarse phase shift control setting.
  • the intrinsic phase delay from the input to the output of the DQS delay chain 230 is 37° when both settings are 000000 (or 0 in decimal).
  • the intrinsic phase delay for each delay cell is 18.5°. If the desired phase delay is 72°, the leftmost delay cell configured by the fine phase shift control setting will be responsible for generating a 42° phase delay since the delay cell next to it that is configured by the coarse phase shift control setting has a fixed 30° phase delay.
  • phase offset resolution refers to the variation of phase delay associated with a delay cell 220 or 240 when its phase shift control setting changes by one unit.
  • the overall phase delay of the DQS delay chain is substantially close to 72° and the phase-delayed DQS signal can be center-aligned to the DQ signal.
  • the soft core calibration logic can adjust the dynamic control setting and re-align the two signals.
  • a memory interface circuit in accordance with the present invention makes it easier for a designer of a PCB and/or an electronic package since there is a larger timing margin for designing the layout of the routing paths connecting the memory device to other ASIC devices. A larger timing margin also leaves more room for the performance improvement of an electronic system including the memory interface circuit.
  • the present invention is applicable to a wide range of state-of-the-art memory device multiple-data-rate standards, e.g., DDR SDRAM, RLDRAM I and DDR FCRAM.

Landscapes

  • Dram (AREA)
  • Pulse Circuits (AREA)

Abstract

A programmable memory interface circuit includes a programmable DLL delay chain, a phase offset control circuit and a programmable DQS delay chain. The DLL delay chain uses a set of serially connected delay cells, a programmable switch, a phase detector and a digital counter to generate a coarse phase shift control setting. The coarse phase shift control setting is then used to pre-compute a static residual phase shift control setting or generate a dynamic residual phase shift control setting, one of which is chosen by the phase offset control circuit to be added to or subtracted from the coarse phase shift control setting to generate a fine phase shift control setting. The coarse and fine phase shift control settings work in concert to generate a phase-delayed DQS signal that is center-aligned to its associated DQ signals.

Description

The present invention relates generally to data transmission schemes between various digital devices and more particularly to a high-performance memory interface circuit architecture.
CROSS-REFERENCE TO RELATED APPLICATIONS
“Calibration of memory interface circuitry,” Ser. No. 10/873,669, filed Jun. 21, 2004 and fully incorporated by reference herein; and
“Soft core control of dedicated memory interface hardware in a programmable logic device”, Ser. No. 11/530,708, filed Sep. 11, 2006 and fully incorporated by reference herein.
BACKGROUND OF THE INVENTION
A memory device in an electronic system is used for storing various types of data. The data often need to be transmitted to a data processing device in the system, e.g., a central processing unit (CPU) or a programmable logic device (PLD), through a set of communication channels and processed therein to produce certain results. A set of communication channels typically includes one or more channels carrying data signals (DQ) and one channel carrying a data strobe signal (DQS), whose rising/falling edges are used by a device, e.g., a memory controller, that interfaces the memory device with the data processing device to sample the DQ signals.
A DQS signal coming out of a memory device is usually configured to be edge-aligned with its associated DQ signals so that there is no phase shift between the two types of signals when they reach the memory controller. In practice, to sample the DQ signals accurately, it is preferred that there be a phase delay, e.g., 90° or 72°, between the DQ signals and the DQS signal so that a data sampling edge of the DQS signal is positioned within a data sampling window associated with the DQ signals. Preferably, the DQS signal is at the center of the data sampling window.
The size of a data sampling window depends upon which data sampling scheme is chosen for a memory device. FIGS. 1A and 1B schematically illustrate two typical data sampling schemes that are often used by a memory controller: (1) the single-data-rate (SDR) scheme in FIG. 1A in which a DQ signal 160 is sampled once per cycle of DQS signal 120; and (2) the double-data-rate (DDR) scheme in FIG. 1B in which a DQ signal 170 is sampled twice per cycle of DQS signal 130, once on the rising edge of the DQS signal and once on the falling edge. In both schemes, the DQS signals (120, 130) are initially edge-aligned with their respective DQ signals (160, 170). But a single data bit of the DQ signal 160 is twice as long as a single data bit of the DQ signal 170.
In the SDR scenario, only the rising edges of a 180°-delayed DQS signal 140 are used for sampling the DQ signal 160. By contrast, both the rising and falling edges of a 90°-delayed DQS signal 150 are used for sampling the DQ signal 170 in the DDR scenario. As a result, the data sampling window W90 in FIG. 1B is only about half the data sampling window W180 in FIG. 1A. Clearly, a small data sampling window increases the possibility of data sampling errors and therefore compromises efforts toward improving a memory device's performance by increasing its operating frequency.
Meanwhile, there are many factors, e.g., process, voltage and temperature (PVT), etc., that can change the phase shift between a DQ signal and a DQS signal. Even if a DQS signal is initially center-aligned with a DQ signal, it may subsequently “drift” away from the center of the data sampling window if the environment varies.
In view of the above discussion, it is desirable to develop a memory interface circuit architecture that adaptively determines a desired phase delay to center-align a DQS signal to a DQ signal and dynamically adjusts the phase-shifted DQS signal when its sampling edge deviates from the center of the DQ signal's data sampling window.
SUMMARY OF THE INVENTION
A programmable memory interface circuit includes a programmable DLL delay chain, a phase offset control circuit and a programmable DQS delay chain. The DLL delay chain uses a set of serially connected delay cells, a programmable switch, a phase detector and a digital counter to generate a coarse phase shift control setting. In addition, the coarse phase shift control setting is used for generating a fine phase shift control setting, that is also applied to the DQS delay chain. The coarse and fine phase shift control settings work in concert to generate a phase-delayed DQS signal that preferably is center-aligned to its associated DQ signals.
BRIEF DESCRIPTION OF THE DRAWINGS
The aforementioned features and advantages of the invention as well as additional features and advantages thereof will be more clearly understood hereinafter as a result of a detailed description of preferred embodiments of the invention when taken in conjunction with the drawings.
FIGS. 1A and 1B schematically illustrate two typical data sampling schemes that are often used by a memory controller.
FIG. 2 is a diagram illustrative of a programmable memory interface circuit architecture according to one embodiment of the present invention.
FIGS. 3A–3C are three flowcharts summarizing the operations of different components in the programmable memory interface circuit according to one embodiment of the present invention.
FIG. 4 is a chart illustrating how the different components in the memory interface circuit coordinate to generate a desired phase delay.
Like reference numerals refer to corresponding parts throughout the several views of the drawings.
DETAILED DESCRIPTION OF THE EMBODIMENTS
FIG. 2 is a diagram illustrative of a programmable memory interface circuit architecture according to one embodiment of the present invention. The interface circuit primarily includes three functionally distinct components, i.e., a programmable delay locked loop (DLL) delay chain 200, a phase offset control circuit 250 and a programmable DQS delay chain 230. A pair of DQ and DQS signals coming from a memory device (not shown) enters the interface circuit at respective DQ and DQS terminals at the top-left corner of FIG. 2. The DQS signal passes through the programmable DQS delay chain 230 and incurs a desired amount of phase delay. The phase-delayed DQS signal is then used to sample the DQ signal at the two latches 245 and 246 with its two opposite edges.
As discussed above, the phase delay applied to the DQS signal needs to be precise in order to shift the DQS signal's sampling edge exactly to the center of a data sampling window. The phase delay also needs to be dynamically updated if the sampling edge significantly drifts away from the center of the window due to environmental impacts. The programmable DLL delay chain 200 and the phase offset control circuit 250 are configured to generate a phase shift control setting which, when applied to the programmable DQS delay chain 230, produces the desired phase delay to the DQS signal.
The programmable DLL delay chain 200 includes 16 serially connected delay cells 220 that are organized into four sub-chains 201, 203, 205, 207, each sub-chain having four delay cells 220. A clock signal CLK is applied to the programmable DLL delay chain 200 at a clock terminal. Each of the 16 delay cells receives the same coarse phase shift control setting 215 and in response thereto causes the same amount of phase delay to the clock signal that passes through the delay cell. The amount of phase delay per cell has two components: a variable component that is determined by phase shift control setting 215 and an intrinsic setting that is determined by the time it takes a signal to traverse the delay cell when the variable component is zero. The output of the 16th delay cell in the series is connected to one input terminal “00” of a programmable switch 209. Similarly, the outputs of the 12th, 10th and 8th delay cells in the series are respectively connected to input terminals “01”, “10” and “11” of the programmable switch 209. As a result, there are four versions of the clock signal with different phase delays at the four inputs of the programmable switch 209.
The programmable switch 209 is configured to allow one of the phase-delayed clock signals to reach one input terminal of a phase detector 211. Another input terminal of the phase detector 211 is directly connected to the clock terminal. Thus, the phase detector 211 receives two copies of the clock signal, one with virtually no phase delay and the other with a phase delay. The phase detector 211 compares the two copies to determine whether the phase difference between the two copies is exactly 360° (or a clock cycle). If not, the phase detector 211 sends an update instruction to a 6-bit counter 213 which is responsible for updating the coarse phase shift control setting 215. Accordingly, the 6-bit counter 213 increases or decreases the coarse phase shift control setting 215 by a certain number and the updated coarse phase shift control setting 215 is fed back to adjust the amount of phase delay generated by each delay cell until the two copies of the clock signal overlap one another. In some embodiments, it takes multiple clock cycles for the programmable DLL delay chain 200 to determine an optimal coarse phase shift control setting 215.
For example, if all 16 delay cells 220 are involved in the determination of the optimal coarse phase shift control setting, the phase delay generated by each delay cell will be approximately 360°/16=22.5°. If only 12 delay cells are used, there will be a 30° delay per cell, for 10 delay cells there will be 36° delay per cell; and for 8 delay cells there will be a 45° delay per cell.
The optimal coarse phase shift control setting 215 is subsequently applied to a set of delay cells 240 in the programmable DQS delay chain 230. In one embodiment, since the delay cells in the two delay chains are functionally identical, a delay cell 240 in the DQS delay chain 230 controlled by the coarse phase shift control setting 215 generates the same phase shift as does a delay cell 220 in the DLL delay chain 200. Therefore, if the desired phase delay is 90° and the coarse phase shift control setting corresponds to 30° phase delay, a configuration including three delay cells 240 in the DQS delay chain 230 will produce a desired 90°-delayed DQS signal. However, since DDL delay chain 220 can only produce discrete delay values like 22.5°, 30°, 36° or 45°, there are severe limits on the possible delay that can be generated by the programmable DQS delay chain 230 using only the coarse phase shift control setting 215.
Due to various technical reasons, such as routing path differences and/or rise/fall edge mismatches between the DQ and DQS signals, a desired phase delay may not be a multiple of the phase delay generated by an individual delay cell 240 controlled by coarse phase shift control setting 215. After applying the optimal coarse phase shift control setting 215 to the programmable DQS delay chain 230, there may still be a residual phase difference between the sampling edge of the DQS signal and the center of the data sampling window of the DQ signal. Thus, there is a need for another phase shift control setting that finely tunes the DQS signal to eliminate or at least reduce the residual phase difference.
In some embodiments, given certain information about the electronic system, e.g., the data sampling scheme, the operating frequency, and the specific configuration of the two delay chains, etc., it is possible during system design to pre-compute a phase shift control setting corresponding to the residual phase difference. This pre-computed control setting which may be referred to as the static residual phase shift control setting 256 is stored in the configuration flip-flops 260 of FIG. 2. This residual setting may then be added to or subtracted from the coarse phase shift control setting through switch 253 and adder 251 to generate a fine phase shift control setting 216.
However, as mentioned above, an initially center-aligned DQS signal may drift away from the center of a data sampling window due to environmental impacts. For example, due to PVT variations, the configuration flip-flops 260 may provide a different static residual phase shift control setting 256 from time to time or the intrinsic delay in the delay cells may change. Therefore, a dynamically-generated residual phase shift control setting is needed.
Accordingly, in a preferred embodiment of the invention shown in FIG. 2, a soft core calibration logic 270 in a programmable logic device 280 generates a dynamic residual phase shift control setting 257 in response to the coarse phase shift control setting 215. This calibration logic 270, periodically or on request, checks if the current DQS signal's sampling edge has missed the center of the data sampling window by comparing a data sampling result with a data sampling pattern stored in the memory device. If the sampling edge has missed the center due to, e.g., PVT variations, the calibration logic 270 updates the dynamic residual phase shift control setting 257 to move the sampling edge back to the center of the data sampling window. A more detailed discussion of the soft core calibration logic is found in the above-referenced pending applications “Calibration of memory interface circuitry” and “Soft core control of dedicated memory interface hardware in a programmable logic device”.
As shown in FIG. 2, the static residual phase shift control setting 256 is registered into a storage device, e.g., a set of configuration flip-flops 260, and the dynamic residual phase shift control setting 257 is stored in the soft core calibration logic 270, each setting comprising 6 digital bits. The configuration flip-flops 260 and the soft core calibration logic 270 are, respectively, connected to the two input terminals of a programmable switch 253 in the phase offset control circuit 250. Additionally, each residual setting has an associated instruction bit indicating whether the phase offset associated with the setting should be added to or subtracted from the phase delay generated by the coarse phase shift control setting 215. The two instruction bits are two inputs into another programmable switch 255 in the phase offset control circuit 250 that chooses an instruction bit corresponding to the setting chosen at the switch 253. The outputs of the two switches 253 and 255 and the coarse phase shift control setting 215 are inputs to adder 251. The operation of the adder 251 is similar to that of 6-bit counter 213. Based upon the instruction bit at the switch 255, the adder 251 determines whether to increase or decrease the coarse phase shift setting 215 by the value present at the output of switch 253 to generate the fine phase shift control setting 216 that is subsequently transmitted to the DQS delay chain 230 to finely tune the phase delay of the DQS signal.
As noted above, the static residual phase shift control setting 256 may be affected by PVT variations. To recover from the PVT variations, the system usually needs to be powered down first in order to re-program the configuration flip-flops 260. In contrast, if the fine phase shift control setting 216 is a function of the dynamic residual phase shift control setting 257 and its associated instruction bit generated by the soft core calibration logic 270, the system does not have to be shut down to update the fine shift control setting 216.
The programmable DQS delay chain 230 includes two programmable switches, switch 235 interfacing the coarse and fine phase shift control settings with the leftmost delay cell 240L and switch 237 interfacing the coarse and fine phase shift settings with the other three cells 240. In one embodiment, switch 235 is programmed so that the leftmost cell 240L is controlled by the fine phase shift control setting and switch 237 is programmed so that the other three delay cells are controlled by the coarse phase shift control setting. As a result, the three delay cells generate one portion of the desired phase delay and the leftmost delay cell contributes another portion that includes the residual phase difference.
It will be understood by one skilled in the art that the configurations of the two delay chains 200, 230 shown in FIG. 2 are only for illustrative purposes. For example, in other embodiments, each delay chain may include a programmable switch that has one input terminal for every unique number of delay cells in the series. Different configurations of the programmable DLL and DQS delay chains generate a wide variety of discrete phase delays. Given that the number of active delay cells in the DLL delay chain is M and the number of active delay cells controlled by the coarse phase shift control setting in the DQS delay chain is N, a coarse phase shift associated with the coarse phase shift control setting can be defined as:
V = 360 ° · N M
Therefore, the programmable DLL and DQS delay chains provide a system designer more flexibility in designing a memory interface circuit.
FIGS. 3A–3C are three flowcharts summarizing the operations of different components in the programmable memory interface circuit shown in FIG. 2. At step 302 of FIG. 3A, the switch 209 in the DLL delay chain 200 is first programmed to select a set of serially connected delay cells 220, each delay cell being associated with a coarse phase shift control setting. At step 304, a clock signal is applied to the set of delay cells to generate at the input to switch 209 a clock signal having a phase delay specified by the coarse control setting. At step 306, the phase detector measures the phase delay caused by the set of delay cells. If the phase delay is not exactly 360° (step 308), the digital counter is prompted by the phase detector to update the coarse phase shift control setting at step 310. This process continues until the phase delay is exactly 360°.
At step 320 of FIG. 3B the phase offset control circuit 250 chooses one of the static and dynamic residual control settings. The static residual control setting is pre-computed and stored in a storage device, while the dynamic residual control setting is dynamically generated by the soft core calibration logic 270. Both the static and dynamic residual control settings are determined in accordance with the coarse phase shift control setting 215 and a desired phase shift of the DQS delay chain 230. More specifically, a phase delay determined by the static or dynamic residual control setting corresponds to a residual phase difference that cannot be provided by the coarse phase shift control setting. At step 322, the phase offset control circuit 250 chooses an instruction bit associated with one of the two residual control settings chosen previously. Finally, at step 324, the phase offset control circuit generates a new fine phase shift control setting by summing the coarse control setting and a positive or negative value of one of the static and dynamic residual control settings and then applying the new fine phase shift control setting to the DQS delay chain 230 to finely tune the phase shift of the DQS signal.
At step 340 of FIG. 3C the DQS delay chain 230 first selects a set of serially connected delay cells 240. The set of delay cells is divided into two subsets. At steps 342 and 344, the two subsets of delay cells are respectively configured by the coarse and fine phase shift control settings. At step 346 a DQS signal is fed into the DQS delay chain 230 comprising the two subsets of delay cells to produce a desired phase delay that shifts the DQS signal's sampling edge to the center of a corresponding DQ signal's data sampling window. If the fine phase shift control setting used at step 344 is derived from the dynamic control setting, the memory interface circuit can adjust the DQS signal to stay center-aligned with the DQ signal.
The following example illustrates how the different components in the memory interface circuit shown in FIG. 2 work in concert to generate a desired phase delay. Assume that 12 delay cells 220 are selected in the DLL delay chain. Accordingly, the phase delay generated by each delay cell 220 is 360°/12=30°. Also assume that two delay cells are selected in the DQS delay chain 230. In particular, the two delay cells include the leftmost delay cell 240L configured by the fine phase shift control setting and a delay cell 240 next to it configured by the coarse phase shift control setting. Further assume that the intrinsic phase delay from the input to the output of the DQS delay chain 230 is 37° when both settings are 000000 (or 0 in decimal). Thus, the intrinsic phase delay for each delay cell is 18.5°. If the desired phase delay is 72°, the leftmost delay cell configured by the fine phase shift control setting will be responsible for generating a 42° phase delay since the delay cell next to it that is configured by the coarse phase shift control setting has a fixed 30° phase delay.
In order for the leftmost delay cell to generate exactly a 42° phase delay, the fine phase shift control setting 216 applied to the leftmost delay cell 240L needs to be higher than the coarse phase shift control setting 215 applied to the delay cell 240 next to it. The exact difference between the two control settings depends on an important parameter of the delay cells, i.e., their phase offset resolution. The term “phase offset resolution” refers to the variation of phase delay associated with a delay cell 220 or 240 when its phase shift control setting changes by one unit. For example, if we assume that the coarse control setting 215 generated by the DLL delay chain 200 that produces a 30° phase shift is 010000 (or 16 in decimal), the phase offset resolution of each delay cell is approximately equal to (30°–18.5°)/16=0.719° per unit. Since the fine phase shift control setting must produce a 42° phase shift, the magnitude of the setting should be (42°–18.5°)/0.719°/unit=33 in decimal or 100001 in binary. Thus, the overall phase delay of the DQS delay chain is substantially close to 72° and the phase-delayed DQS signal can be center-aligned to the DQ signal. Furthermore, if the sampling edge of the DQS signal subsequently drifts away from the center of the DQ signal's data sampling window, the soft core calibration logic can adjust the dynamic control setting and re-align the two signals.
Note that a memory interface circuit in accordance with the present invention makes it easier for a designer of a PCB and/or an electronic package since there is a larger timing margin for designing the layout of the routing paths connecting the memory device to other ASIC devices. A larger timing margin also leaves more room for the performance improvement of an electronic system including the memory interface circuit. Finally, it will be understood by one skilled in the art that the present invention is applicable to a wide range of state-of-the-art memory device multiple-data-rate standards, e.g., DDR SDRAM, RLDRAM I and DDR FCRAM.
The foregoing description, for purpose of explanation, has been made with reference to specific embodiments. However, the illustrative embodiments described above are not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in view of the above teachings. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications, to thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated.

Claims (29)

1. A memory interface circuit connecting a memory device and an application device, comprising:
a first delay chain including M delay cells, a phase detector and a digital counter, wherein a subset of the M delay cells, the phase detector and the digital counter are used to generate a coarse phase shift control setting;
a phase offset control circuit configured to combine the coarse phase shift control setting with one of two residual phase shift control settings, a static residual phase shift control setting and a dynamic residual phase shift control setting, to form a fine phase shift control setting; and
a second delay chain including N delay cells that is configured to receive the fine phase shift control setting and the coarse phase shift control setting to produce a desired phase delay in a data sampling signal.
2. The circuit of claim 1, wherein the phase detector in the first delay chain receives at two input terminals a clock signal without a delay and a clock signal delayed by the subset of delay cells, measures a phase difference between the two signals and submits the phase difference to the digital counter.
3. The circuit of claim 2, wherein the digital counter updates the coarse phase shift control setting in accordance with the phase difference submitted by the phase detector and applies the updated coarse phase shift control setting to the subset of delay cells.
4. The circuit of claim 1, wherein the first delay chain includes a programmable switch that selects the number of delay cells in the subset.
5. The circuit of claim 1, wherein the phase detector in the first delay chain receives both a clock signal without a delay and a clock signal delayed by a set of delay cells in accordance with the coarse phase shift control setting, measures a phase difference between the two signals and submits the phase difference to the digital counter, the digital counter having an output that specifies the coarse phase shift control setting, said coarse phase shift control setting being changed until the phase difference between the two clock signals is substantially close to 360°.
6. The circuit of claim 1, wherein the phase offset control circuit includes a first programmable switch for choosing one of the static and dynamic residual phase shift control settings and a second programmable switch for choosing one of two instruction bits, each instruction bit being associated with one of the two residual phase shift control settings.
7. The circuit of claim 6, wherein the phase offset control circuit includes an adder configured to add to or subtract from the coarse phase shift control setting one of the static and dynamic residual phase shift control settings in accordance with its associated instruction bit to generate the fine phase shift control setting.
8. The circuit of claim 1, wherein the static residual phase shift control setting is stored in a series of configuration flip-flops.
9. The circuit of claim 1, wherein the dynamic residual phase shift control setting is generated by a soft core calibration logic residing in a programmable logic device.
10. The circuit of claim 1 wherein the second delay chain includes a first programmable switch for choosing one of the coarse and fine phase shift control settings for each delay cell in the second delay chain and a second programmable switch that determines the number of delay cells in the second delay chain.
11. A circuit for generating a signal having a desired phase delay, comprising:
a first circuit for generating a coarse phase shift control setting in accordance with the desired phase delay;
a second circuit for generating a fine phase shift control setting in accordance with both the desired phase delay and the coarse phase shift control setting;
a third circuit comprising a set of delay cells for delaying a signal in accordance with both the coarse and fine phase shift control settings; and
a selection circuit for applying to each delay cell either the fine phase shift control setting or the coarse phase shift control setting to produce the desired phase delay in the signal.
12. The circuit of claim 11, wherein a phase detector in the first circuit receives both a clock signal without a delay and a clock signal delayed by a set of delay cells in accordance with the coarse phase shift control setting, measures a phase difference between the two signals and submits the phase difference to a digital counter having an output that specifies the coarse phase shift control setting, said coarse phase shift control setting being changed until the phase difference between the two clock signals is substantially close to 360°.
13. The circuit of claim 11, wherein the second circuit includes a first programmable switch for choosing one of a static residual phase shift control setting and a dynamic residual phase shift control setting and a second programmable switch for choosing one of two instruction bits, each instruction bit being associated with one of the two residual phase shift control settings.
14. The circuit of claim 13, wherein the static residual phase shift control setting and its associated instruction bit are pre-computed based upon at least the desired phase delay and the coarse phase shift control setting and stored in a series of configuration flip-flops, and the dynamic residual phase shift control setting and its associated instruction bit are dynamically determined by a soft core calibration logic based upon at least the desired phase delay and the coarse phase shift control setting.
15. The circuit of claim 13, wherein the second circuit includes an adder configured to add to or subtract from the coarse phase shift control setting one of the static and dynamic residual phase shift control settings in accordance with its associated instruction bit to generate the fine phase shift control setting.
16. The circuit of claim 13, wherein the static residual phase shift control setting and its associated instruction bit are pre-computed and stored in a series of configuration flip-flops based upon at least the desired phase delay and the coarse phase shift control setting.
17. The circuit of claim 13, wherein the dynamic residual phase shift control setting and its associated instruction bit are dynamically determined by a soft core calibration logic based upon at least the desired phase delay and the coarse phase shift control setting.
18. The circuit of claim 11, wherein a phase detector in the first circuit receives both a clock signal without a delay and a clock signal delayed by a set of delay cells in accordance with the coarse phase shift control setting and generates a phase difference between the two clock signals.
19. The circuit of claim 18, wherein the phase detector submits the phase difference to a digital counter, said digital counter updating the coarse phase shift control setting in accordance with the phase difference.
20. A method for generating a signal having a desired phase delay, comprising:
generating a coarse phase shift control setting using a first set of delay cells, a phase detector, and a digital counter;
generating a fine phase shift control setting in accordance with the desired phase delay and the coarse phase shift control setting; and
configuring a second set of delay cells in accordance with the coarse and fine phase shift control settings such that a signal passing through the second set of delay cells has the desired phase delay.
21. The method of claim 20, wherein configuring the second set of delay cells includes configuring one subset of the delay cells by the fine phase shift control setting and configuring another subset of the delay cells by the coarse phase shift control setting.
22. The method of claim 21, wherein all the delay cells in the second set are configured by the fine phase shift control setting.
23. The method of claim 20, wherein the generating of the fine phase shift control setting includes:
choosing one of a static residual phase shift control setting and a dynamic residual phase shift control setting;
choosing one of two instruction bits, the chosen instruction bit being associated with the chosen residual phase shift control setting; and
adding to or subtracting from the coarse phase shift control setting the chosen residual phase shift control setting in accordance with the chosen instruction bit to generate the fine phase shift control setting.
24. The method of claim 23, wherein the static residual phase shift control setting and its associated instruction bit are pre-computed based upon the desired phase delay and the coarse phase shift control setting and stored in a series of configuration flip-flops, and the dynamic residual phase shift control setting and its associated instruction bit are dynamically determined based upon the desired phase delay and the coarse phase shift control setting in accordance with a calibration algorithm.
25. The method of claim 23, wherein the static residual phase shift control setting and its associated instruction bit are pre-computed and stored in a series of configuration flip-flops based upon at least the desired phase delay and the coarse phase shift control setting.
26. The method of claim 23, wherein the dynamic residual phase shift control setting and its associated instruction bit are dynamically determined by a soft core calibration logic based upon at least the desired phase delay and the coarse phase shift control setting.
27. The method of claim 20, wherein the phase detector receives at two input terminals a clock signal without a delay and a clock signal delayed by the first set of delay cells in accordance with the coarse phase shift control setting measures a phase difference between the two signals and submits the phase difference to the digital counter, which, in turn, updates the coarse phase shift control setting until the phase difference between the two clock signals is substantially close to 360°.
28. The method of claim 20, wherein a phase detector receives at two input terminals both a clock signal without a delay and a clock signal delayed by the first set of delay cells in accordance with the coarse phase shift control setting and generates a phase difference between the two clock signals.
29. The method of claim 28, wherein the phase detector submits the phase difference to a digital counter, said digital counter updating the coarse phase shift control setting in accordance with the phase difference.
US11/055,125 2005-02-09 2005-02-09 High-performance memory interface circuit architecture Expired - Fee Related US7227395B1 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
US11/055,125 US7227395B1 (en) 2005-02-09 2005-02-09 High-performance memory interface circuit architecture
US11/789,598 US7535275B1 (en) 2005-02-09 2007-04-24 High-performance memory interface circuit architecture
US12/467,681 US7969215B1 (en) 2005-02-09 2009-05-18 High-performance memory interface circuit architecture
US13/168,499 US8305121B1 (en) 2005-02-09 2011-06-24 High-performance memory interface circuit architecture
US13/486,670 US8680905B1 (en) 2005-02-09 2012-06-01 Digital PVT compensation for delay chain
US13/614,526 US8593195B1 (en) 2005-02-09 2012-09-13 High performance memory interface circuit architecture
US14/214,906 US9059716B1 (en) 2005-02-09 2014-03-15 Digital PVT compensation for delay chain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/055,125 US7227395B1 (en) 2005-02-09 2005-02-09 High-performance memory interface circuit architecture

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US11/789,598 Continuation US7535275B1 (en) 2005-02-09 2007-04-24 High-performance memory interface circuit architecture

Publications (1)

Publication Number Publication Date
US7227395B1 true US7227395B1 (en) 2007-06-05

Family

ID=38090167

Family Applications (5)

Application Number Title Priority Date Filing Date
US11/055,125 Expired - Fee Related US7227395B1 (en) 2005-02-09 2005-02-09 High-performance memory interface circuit architecture
US11/789,598 Expired - Fee Related US7535275B1 (en) 2005-02-09 2007-04-24 High-performance memory interface circuit architecture
US12/467,681 Active US7969215B1 (en) 2005-02-09 2009-05-18 High-performance memory interface circuit architecture
US13/168,499 Expired - Fee Related US8305121B1 (en) 2005-02-09 2011-06-24 High-performance memory interface circuit architecture
US13/614,526 Expired - Fee Related US8593195B1 (en) 2005-02-09 2012-09-13 High performance memory interface circuit architecture

Family Applications After (4)

Application Number Title Priority Date Filing Date
US11/789,598 Expired - Fee Related US7535275B1 (en) 2005-02-09 2007-04-24 High-performance memory interface circuit architecture
US12/467,681 Active US7969215B1 (en) 2005-02-09 2009-05-18 High-performance memory interface circuit architecture
US13/168,499 Expired - Fee Related US8305121B1 (en) 2005-02-09 2011-06-24 High-performance memory interface circuit architecture
US13/614,526 Expired - Fee Related US8593195B1 (en) 2005-02-09 2012-09-13 High performance memory interface circuit architecture

Country Status (1)

Country Link
US (5) US7227395B1 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060184844A1 (en) * 2005-01-31 2006-08-17 Fujitsu Limited Synchronous data transfer circuit, computer system and memory system
US20060245473A1 (en) * 2005-04-28 2006-11-02 Cheng Roger K Integrating receivers for source synchronous protocol
US20060245519A1 (en) * 2005-04-28 2006-11-02 Cheng Roger K Calibrating integrating receivers for source synchronous protocol
US7535275B1 (en) * 2005-02-09 2009-05-19 Altera Corporation High-performance memory interface circuit architecture
US20090128208A1 (en) * 2007-11-02 2009-05-21 Taek-Sang Song Apparatus and method for detecting duty ratio of signals in semiconductor device circuit
US8237475B1 (en) * 2008-10-08 2012-08-07 Altera Corporation Techniques for generating PVT compensated phase offset to improve accuracy of a locked loop
US20120263000A1 (en) * 2007-08-09 2012-10-18 Altera Corporation Programmable control block for dual port sram application
US20120324152A1 (en) * 2006-04-04 2012-12-20 Ming-Shiang Lai Memory controller with bi-directional buffer for achieving high speed capability and related method thereof
CN104240748A (en) * 2013-06-19 2014-12-24 瑞昱半导体股份有限公司 Oversampling method for data signal and oversampling device for data signal
US20150121117A1 (en) * 2013-10-31 2015-04-30 Fujitsu Limited Signal control circuit, information processing apparatus, and signal control method
US9224444B1 (en) * 2014-10-24 2015-12-29 Xilinx, Inc. Method and apparatus for VT invariant SDRAM write leveling and fast rank switching
CN109075796A (en) * 2017-11-23 2018-12-21 深圳欣锐科技股份有限公司 Phase-lock technique, device and equipment
US10999654B2 (en) * 2019-07-10 2021-05-04 Cisco Technology, Inc. Multiple port network device with differential ports for reduced electromagnetic interference at optical modules
CN115910147A (en) * 2022-11-25 2023-04-04 湖南兴芯微电子科技有限公司 Delay-adjustable PSRAM interface control module and controller

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9917590B2 (en) * 2015-06-03 2018-03-13 Marvell World Trade Ltd. Delay locked loop
US9614533B2 (en) * 2015-06-19 2017-04-04 Intel Corporation Digital phase control with programmable tracking slope
US9627031B1 (en) * 2016-03-11 2017-04-18 Mediatek Inc. Control methods and memory systems using the same
KR102687267B1 (en) 2016-12-15 2024-07-22 에스케이하이닉스 주식회사 Semiconductor Apparatus, Semiconductor System and Training Method
KR102523101B1 (en) 2018-01-10 2023-04-18 삼성전자주식회사 Read margin control circuit determining data valid window, memory controller including the same, and electronic device
KR102662555B1 (en) * 2019-07-05 2024-05-03 삼성전자주식회사 Delay locked loop circuit and semiconductor memory device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3984771A (en) * 1975-10-20 1976-10-05 Rca Corporation Accurate digital phase/frequency extractor
US6628154B2 (en) * 2001-07-31 2003-09-30 Cypress Semiconductor Corp. Digitally controlled analog delay locked loop (DLL)
US6677794B2 (en) * 2001-12-28 2004-01-13 Hynix Semiconductor Inc. Clock synchronization device
US20060017480A1 (en) * 2004-07-22 2006-01-26 Feng Lin Method and apparatus to set a tuning range for an analog delay

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5491673A (en) * 1994-06-02 1996-02-13 Advantest Corporation Timing signal generation circuit
KR100197563B1 (en) * 1995-12-27 1999-06-15 윤종용 Digital delay synchronous loop circuit using synchronous delay line
KR100269316B1 (en) * 1997-12-02 2000-10-16 윤종용 Delayed locked loop & phase locked loop merged with synchronous delay circuit
US6100735A (en) * 1998-11-19 2000-08-08 Centillium Communications, Inc. Segmented dual delay-locked loop for precise variable-phase clock generation
US7200769B1 (en) * 2001-08-29 2007-04-03 Altera Corporation Self-compensating delay chain for multiple-date-rate interfaces
DE10149104B4 (en) * 2001-10-05 2005-10-27 Infineon Technologies Ag Semiconductor device for processing data and method for detecting an operating state
US7028206B2 (en) * 2002-12-16 2006-04-11 William Kenneth Waller Circuit and method for generating a local clock signal synchronized to an externally generated reference clock signal
CN1275455C (en) * 2003-01-27 2006-09-13 松下电器产业株式会社 Image signal processing device and image sigual processing method
KR100515071B1 (en) * 2003-04-29 2005-09-16 주식회사 하이닉스반도체 Delay locked loop device
US6927605B2 (en) * 2003-11-07 2005-08-09 Hewlett-Packard Development Company, L.P. System and method for dynamically varying a clock signal
US7202719B2 (en) * 2004-09-30 2007-04-10 Motorola, Inc. Method and apparatus for frequency synthesis
US7227395B1 (en) * 2005-02-09 2007-06-05 Altera Corporation High-performance memory interface circuit architecture
US7737741B2 (en) * 2007-09-20 2010-06-15 Micron Technology, Inc. Periodic signal delay apparatus, systems, and methods
US8237475B1 (en) * 2008-10-08 2012-08-07 Altera Corporation Techniques for generating PVT compensated phase offset to improve accuracy of a locked loop

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3984771A (en) * 1975-10-20 1976-10-05 Rca Corporation Accurate digital phase/frequency extractor
US6628154B2 (en) * 2001-07-31 2003-09-30 Cypress Semiconductor Corp. Digitally controlled analog delay locked loop (DLL)
US6677794B2 (en) * 2001-12-28 2004-01-13 Hynix Semiconductor Inc. Clock synchronization device
US20060017480A1 (en) * 2004-07-22 2006-01-26 Feng Lin Method and apparatus to set a tuning range for an analog delay

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060184844A1 (en) * 2005-01-31 2006-08-17 Fujitsu Limited Synchronous data transfer circuit, computer system and memory system
US7711973B2 (en) * 2005-01-31 2010-05-04 Fujitsu Limited Synchronous data transfer circuit, computer system and memory system
US7535275B1 (en) * 2005-02-09 2009-05-19 Altera Corporation High-performance memory interface circuit architecture
US20060245473A1 (en) * 2005-04-28 2006-11-02 Cheng Roger K Integrating receivers for source synchronous protocol
US20060245519A1 (en) * 2005-04-28 2006-11-02 Cheng Roger K Calibrating integrating receivers for source synchronous protocol
US7602859B2 (en) * 2005-04-28 2009-10-13 Intel Corporation Calibrating integrating receivers for source synchronous protocol
US20120324152A1 (en) * 2006-04-04 2012-12-20 Ming-Shiang Lai Memory controller with bi-directional buffer for achieving high speed capability and related method thereof
US8588015B2 (en) * 2007-08-09 2013-11-19 Altera Corporation Programmable control block for dual port SRAM application
US20120263000A1 (en) * 2007-08-09 2012-10-18 Altera Corporation Programmable control block for dual port sram application
US20090128208A1 (en) * 2007-11-02 2009-05-21 Taek-Sang Song Apparatus and method for detecting duty ratio of signals in semiconductor device circuit
US8237475B1 (en) * 2008-10-08 2012-08-07 Altera Corporation Techniques for generating PVT compensated phase offset to improve accuracy of a locked loop
CN104240748A (en) * 2013-06-19 2014-12-24 瑞昱半导体股份有限公司 Oversampling method for data signal and oversampling device for data signal
CN104240748B (en) * 2013-06-19 2017-04-12 瑞昱半导体股份有限公司 Oversampling method for data signal and oversampling device for data signal
US9552310B2 (en) * 2013-10-31 2017-01-24 Fujitsu Limited Signal control circuit, information processing apparatus, and signal control method
US20150121117A1 (en) * 2013-10-31 2015-04-30 Fujitsu Limited Signal control circuit, information processing apparatus, and signal control method
US9224444B1 (en) * 2014-10-24 2015-12-29 Xilinx, Inc. Method and apparatus for VT invariant SDRAM write leveling and fast rank switching
CN109075796A (en) * 2017-11-23 2018-12-21 深圳欣锐科技股份有限公司 Phase-lock technique, device and equipment
CN109075796B (en) * 2017-11-23 2022-07-05 深圳欣锐科技股份有限公司 Phase locking method, device and equipment
US10999654B2 (en) * 2019-07-10 2021-05-04 Cisco Technology, Inc. Multiple port network device with differential ports for reduced electromagnetic interference at optical modules
CN115910147A (en) * 2022-11-25 2023-04-04 湖南兴芯微电子科技有限公司 Delay-adjustable PSRAM interface control module and controller
CN115910147B (en) * 2022-11-25 2023-08-18 湖南兴芯微电子科技有限公司 Delay-adjustable PSRAM interface control module and controller

Also Published As

Publication number Publication date
US7535275B1 (en) 2009-05-19
US7969215B1 (en) 2011-06-28
US8305121B1 (en) 2012-11-06
US8593195B1 (en) 2013-11-26

Similar Documents

Publication Publication Date Title
US7535275B1 (en) High-performance memory interface circuit architecture
US6693472B2 (en) Method and circuit for adjusting the timing of output data based on an operational mode of output drivers
US7009433B2 (en) Digitally controlled delay cells
US7671647B2 (en) Apparatus and method for trimming static delay of a synchronizing circuit
US7876629B2 (en) Memory control methods capable of dynamically adjusting sampling points, and related circuits
US8593187B2 (en) Delay line off-state control with power reduction
US20080129357A1 (en) Adaptive Integrated Circuit Clock Skew Correction
US20120235721A1 (en) Digital locked loops and methods with configurable operating parameters
US10819357B2 (en) Phase detection circuit, and clock generation circuit and semiconductor apparatus including the phase detection circuit
KR102719259B1 (en) Calibration circuits, memories and calibration methods
KR20160033381A (en) Multi-channel delay locked loop
US7068084B2 (en) Delay locked loop capable of compensating for delay of internal clock signal by variation of driving strength of output driver in semiconductor memory device
KR100766373B1 (en) Clock Generator of Semiconductor Memory
US9106230B1 (en) Input-output circuitry for integrated circuits
US8368444B2 (en) Delay locked loop including a mechanism for reducing lock time
US6573770B1 (en) Programmable leakage current offset for delay locked loop
US10483988B1 (en) Synchronization circuit and method relating to the synchronization circuit
KR101451929B1 (en) Delay locked loop and duty cycle correction method
KR100800139B1 (en) DLL device
US20150078101A1 (en) Methods and apparatuses for alternate clock selection
KR100892636B1 (en) Apparatus and Method for Controlling Clock in Semiconductor Memory Apparatus
US20080272817A1 (en) Integrated Circuit on a Semiconductor Chip with a Phase Shift Circuit and a Method for Digital Phase Shifting
KR20240146300A (en) Calibration device and memory device including the calibration device for a high-speed data i/o operation under a low power condition

Legal Events

Date Code Title Description
AS Assignment

Owner name: ALTERA CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HUANG, JOSEPH;SUNG, CHIAKANG;PAN, PHILIP;AND OTHERS;REEL/FRAME:016279/0319;SIGNING DATES FROM 20050103 TO 20050121

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

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

FP Lapsed due to failure to pay maintenance fee

Effective date: 20190605

AS Assignment

Owner name: INTEL CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ALTERA CORPORATION;REEL/FRAME:060778/0032

Effective date: 20220708

AS Assignment

Owner name: TAHOE RESEARCH, LTD., IRELAND

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INTEL CORPORATION;REEL/FRAME:061827/0686

Effective date: 20220718