← Back to Patent Explorer
US6504790B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Configurable DDR write-channel phase advance and delay capability

Assignee: International Business Machines Corp
•
Filing: 2001-08-09
•
Granted: 2003-01-07
•
Expires: 2021-08-09
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The phase of a memory clock signal is adjusted by advancing and/or delaying the phase. A configuration register is used to determine the phase adjustment of the memory clock signal. The value of the configuration register can be changed through software. This flexible phase adjustment technique is valuable in meeting various timing requirements in a source synchronous memory controller.

Inventors

  • 👤 Barry Joe Wolford

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-28 09:05
CPC Classifications
G; G11; G11C; G11C7/00; G11C7/10; G11C7/1051; G11C7/1066; G11C11/00; G11C11/21; G11C11/34; G11C11/40; G11C11/401; G11C11/4063; G11C11/407; G11C11/4076; G11C7/1072; G11C7/22; G11C7/222

Claims Analysis

Total Claims: 15
Claim 1
Independent Claim 653 words
A memory controller for a double data rate (DDR) synchronous dynamic random access memory (SDRAM), the memory controller comprising: a configuration register driven by an internal memory controller clock signal; a first programmable delay connected to the configuration register for receiving a first set of one or more bits from the configuration register and a double-speed clock signal having a frequency twice as large as the frequency of the internal memory controller clock signal; an XOR gate connected to the first programmable delay for receiving a phase-delayed double-speed clock signal from the first programmable delay and a second set of one or more bits from the configuration register; a first flip-flop (FF) receiving a write command load signal and driven by the internal memory controller clock signal; a first multiplexer receiving the output signal of the first FF and the write command load signal and controlled by a first control signal; a second programmable delay connected to the configuration register for receiving the first set of one or more bits from the configuration register and the output signal of the first multiplexer; a second FF receiving data mask and a low write data (DM/WDATA_L) signal and driven by an inverted signal of the internal memory controller clock signal; a third FF receiving data mask and a high write data (DM/WDATA_H) signal and driven by the internal memory controller clock signal; a fourth FF connected to the second programmable delay for receiving the output signal of the second programmable delay and driven by the output signal of the first programmable delay; a fifth FF connected to the fourth FF for receiving the output signal of the fourth FF and driven by the output signal of the first programmable delay; a sixth FF connected to the fifth FF for receiving the output signal of the fifth FF and driven by the output signal of the first programmable delay; an OR gate connected to the fourth FF and the sixth FF for receiving the output signal of the fourth FF and the output signal of the sixth FF; a seventh FF connected to the OR gate for receiving the output signal of the OR gate and driven by the output signal of the first programmable delay; an eighth FF connected to the OR gate for receiving the output signal of the OR gate and driven by the output signal of the first programmable delay; a ninth FF connected to the seventh FF for receiving the output signal of the seventh FF and driven by the output signal of the first programmable delay; a second multiplexer connected to the seventh FF and the ninth FF for receiving the output signal of the seventh FF and the output signal of the ninth FF and controlled by a third set of one or more bits from the configuration register; a tenth FF connected to the second multiplexer for receiving the output signal of the second multiplexer, outputting a write data strobe (DDR_WDQS), and driven by the output signal of the XOR gate; a third multiplexer connected to the second and third FFs for receiving the output signal of the second FF and the output signal of the third FF and controlled by the output signal of the eighth FF; an eleventh FF connected to the third multiplexer for receiving the output signal of the third multiplexer and driven by the output signal of the first programmable delay; a fourth multiplexer connected to the third multiplexer and the eleventh FF for receiving the output signal of the third multiplexer and the output signal of the eleventh FF and controlled by the third set of one or more bits from the configuration register; and a twelfth FF connected to the fourth multiplexer for receiving the output signal of the fourth multiplexer, outputting a write data mask and write data (DDR_DM/WDBUS) signal, and driven by the output signal of the XOR gate.
Claim 2
Dependent Claim 653 words
A memory controller for a double data rate (DDR) synchronous dynamic random access memory (SDRAM), the memory controller comprising: a configuration register driven by an internal memory controller clock signal; a first programmable delay connected to the configuration register for receiving a first set of one or more bits from the configuration register and a double-speed clock signal having a frequency twice as large as the frequency of the internal memory controller clock signal; an XOR gate connected to the first programmable delay for receiving a phase-delayed double-speed clock signal from the first programmable delay and a second set of one or more bits from the configuration register; a first flip-flop (FF) receiving a write command load signal and driven by the internal memory controller clock signal; a first multiplexer receiving the output signal of the first FF and the write command load signal and controlled by a first control signal; a second programmable delay connected to the configuration register for receiving the first set of one or more bits from the configuration register and the output signal of the first multiplexer; a second FF receiving data mask and a low write data (DM/WDATA_L) signal and driven by an inverted signal of the internal memory controller clock signal; a third FF receiving data mask and a high write data (DM/WDATA_H) signal and driven by the internal memory controller clock signal; a fourth FF connected to the second programmable delay for receiving the output signal of the second programmable delay and driven by the output signal of the first programmable delay; a fifth FF connected to the fourth FF for receiving the output signal of the fourth FF and driven by the output signal of the first programmable delay; a sixth FF connected to the fifth FF for receiving the output signal of the fifth FF and driven by the output signal of the first programmable delay; an OR gate connected to the fourth FF and the sixth FF for receiving the output signal of the fourth FF and the output signal of the sixth FF; a seventh FF connected to the OR gate for receiving the output signal of the OR gate and driven by the output signal of the first programmable delay; an eighth FF connected to the OR gate for receiving the output signal of the OR gate and driven by the output signal of the first programmable delay; a ninth FF connected to the seventh FF for receiving the output signal of the seventh FF and driven by the output signal of the first programmable delay; a second multiplexer connected to the seventh FF and the ninth FF for receiving the output signal of the seventh FF and the output signal of the ninth FF and controlled by a third set of one or more bits from the configuration register; a tenth FF connected to the second multiplexer for receiving the output signal of the second multiplexer, outputting a write data strobe (DDR_WDQS), and driven by the output signal of the XOR gate; a third multiplexer connected to the second and third FFs for receiving the output signal of the second FF and the output signal of the third FF and controlled by the output signal of the eighth FF; an eleventh FF connected to the third multiplexer for receiving the output signal of the third multiplexer and driven by the output signal of the first programmable delay; a fourth multiplexer connected to the third multiplexer and the eleventh FF for receiving the output signal of the third multiplexer and the output signal of the eleventh FF and controlled by the third set of one or more bits from the configuration register; and a twelfth FF connected to the fourth multiplexer for receiving the output signal of the fourth multiplexer, outputting a write data mask and write data (DDR_DM/WDBUS) signal, and driven by the output signal of the XOR gate.
Claim 3
Dependent Claim 23 words
The memory controller of claim 1 , wherein the first and second programmable delays delay the phase of the DDR_WDQS and DDR_DM/WDBUS signals.
Claim 4
Dependent Claim 46 words
The memory controller of claim 1 , wherein the first and second programmable delays delay the phase of the DDR_WDQS and DDR_DM/WDBUS signals and the amount of the phase delay is determined by the value of the first set of one or more configuration register bits.
Claim 5
Dependent Claim 36 words
The memory controller of claim 1 , wherein the value of the second set of one or more configuration register bits determines whether the phase of the DDR_WDQS and DDR_DM/WDBUS signals is advanced by 90 degrees.
Claim 6
Dependent Claim 69 words
The memory controller of claim 1 , wherein the value of the second set of one or more configuration register bits determines whether the phase of the DDR_WDQS and DDR_DM/WDBUS signals is advanced by 90 degrees, wherein the second set of one or more configuration register comprises one bit, and wherein the phase is advanced by 90 degrees when the value of the second portion is a logic 1.
Claim 7
Dependent Claim 36 words
The memory controller of claim 1 , wherein the value of the third set of one configuration register bits determines whether the phase of the DDR_WDQS and DDR_DM/WDBUS signals is advanced by 0 or 180 degrees.
Claim 8
Dependent Claim 49 words
The memory controller of claim 1 , wherein the value of the third set of one configuration register bits determines whether the phase of the DDR_WDQS and DDR_DM/WDBUS signals is advanced by 0 or 180 degrees, and wherein the third set of one configuration register bits comprises one bit.
Claim 9
Dependent Claim 36 words
The memory controller of claim 1 , wherein the phase of the DDR_WDQS and DDR_DM/WDBUS signals is configured by determining the value of the first, second, and third sets of one or more configuration register bits.
Claim 10
Dependent Claim 27 words
The memory controller of claim 1 , wherein the DDR_WDQS and DDR_DM/WDBUS signals are used to write data in a DDR SDRAM controlled by the memory controller.
Claim 11
Dependent Claim 72 words
The memory controller of claim 1 , wherein the second multiplexer outputs the output signal of the ninth FF when the third set of one or more configuration register bits comprises one bit and the one bit is a logic 1, and outputs the output signal of the seventh FF when the third set of one or more configuration register bits comprises one bit and the one bit is a logic 0.
Claim 12
Dependent Claim 50 words
The memory controller of claim 1 , wherein the third multiplexer outputs the output signal of the second FF when the output of the eighth FF is a logic 1, and outputs the output signal of the third FF when the output of the eighth FF is a logic 0.
Claim 13
Dependent Claim 72 words
The memory controller of claim 1 , wherein the fourth multiplexer outputs the output signal of the eleventh FF when the third set of one or more configuration register bits comprises one bit and the one bit is a logic 1, and outputs the output signal of the third multiplexer when the third set of one or more configuration register bits comprises one bit and the one bit is a logic 0.
Claim 14
Dependent Claim 15 words
The memory controller of claim 1 , wherein the configuration register is a 32-bit register.
Claim 15
Dependent Claim 18 words
The memory controller of claim 1 , wherein the first control signal is a registered DIMM mode signal.

References Cited (Backward Citations)

US5559751A Cited
US5822255A Cited
US5923613A Cited
US6178123B1 Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2006-01-06 2006-07-08 2007-01-07 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2010-01-06 2010-07-08 2011-01-07 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2014-01-06 2014-07-08 2015-01-07 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag