IP Library Granted Patent US 9,741,424
Granted Patent B2
US 9,741,424 · App. 15/271,148 · Granted Aug 22, 2017

Memory controller

Inventors: Frederick A. Ware (Los Altos Hills, CA); Ely K. Tsern (Los Altos, CA); Richard E. Perego (Thornton, CO); Craig E. Hampel (Los Altos, CA)
Assignee: Rambus Inc.
G11C11/4076G06F1/06G06F1/105G06F1/12G06F3/0604G06F3/0658G06F3/0673G06F13/1684G06F13/1689G06F13/1694G06F13/4086G11C5/063G11C7/1051G11C7/1072G11C7/1078G11C7/22G11C7/222G11C8/18G11C11/409G11C11/4096G11C29/02G11C29/022G11C29/023G11C29/028G11C29/50008G11C29/50012G11C7/04
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,741,424
App. No.
15/271,148
Granted
Aug 22, 2017
Kind
B2
Abstract

A memory controller component includes transmit circuitry and adjusting circuitry. The transmit circuitry transmits a clock signal and write data to a DRAM, the write data to be sampled by the DRAM using a timing signal. The adjusting circuitry adjusts transmit timing of the write data and of the timing signal such that an edge transition of the timing signal is aligned with an edge transition of the clock signal at the DRAM.

Claims (36)

1. A memory controller for controlling a dynamic random access memory (DRAM), the memory controller comprising:

first and second buffers to output first and second clock signals to the DRAM, respectively, the first and second clock signals having different cycle times and requiring respective first and second propagation time intervals to propagate from the memory controller to the DRAM;

a first transmit block to output two bits of address information onto each conductor of a first plurality of external conductors during a cycle time of the first clock signal;

a second transmit block to output two bits of data in succession onto each conductor of a second plurality of external conductors during a cycle time of the second clock signal; and

adjustment circuitry to offset a phase of one of the first and second clock signals from a phase of the other to compensate for a difference between the first and second propagation time intervals.

2. The memory controller of claim 1 wherein the adjustment circuitry to offset the phase of one of the first and second clock signals from the phase of the other to compensate for the difference between the first and second propagation time intervals comprises circuitry to adjust the phase of at least one of the first and second clock signals by an amount of time according to the difference between the first and second propagation time intervals.

3. The memory controller of claim 1 wherein the adjustment circuitry to offset the phase of one of the first and second clock signals from the phase of the other to compensate for the difference between the first and second propagation time intervals comprises circuitry to adjust the phase of at least one of the first and second clock signals such that the first and second clock signals are substantially phase aligned upon arrival at the DRAM.

4. The memory controller of claim 3 wherein the circuitry to adjust the phase of at least one of the first and second clock signals such that the first and second clock signals are substantially phase aligned upon arrival at the DRAM comprises circuitry to adjust a transmission time of at least one of the first and second clock signals such that an edge transition of the first clock signal is aligned with an edge transition of the second clock signal at the DRAM.

5. The memory controller of claim 1 wherein the cycle time of the first clock signal is twice that of the second clock signal.

6. The memory controller of claim 1 wherein the adjustment circuitry comprises:

clock generation circuitry to generate a plurality of phase-distributed clock signals having respective phase offsets that are substantially evenly distributed within a cycle time of the second clock signal; and

selection circuitry to select one of the plurality of phase-distributed clock signals to be output by the second buffer as the second clock signal.

7. The memory controller of claim 6 wherein the clock generation circuitry comprises a phase-locked loop circuit.

8. The memory controller of claim 6 wherein the selection circuitry comprises at least one of a multiplexer or a phase interpolator.

9. The memory controller of claim 1 wherein the first transmit block to output two bits of address information onto each conductor of the first plurality of external conductors comprises circuitry to output, to the DRAM, an address value that specifies one or more storage locations within the DRAM and wherein the second transmit block to output two bits of data in succession onto each conductor of the second plurality of external signal conductors comprises circuitry to output, to the DRAM, write data to be stored within the one or more storage locations specified by the address value.

10. The memory controller of claim 1 wherein the first transmit block to output two bits of address information onto each conductor of the first plurality of external signal conductors comprises circuitry to output the two bits of address information onto each conductor of the first plurality of external signal conductors at one or more times having a predetermined phase relation to the first clock signal and wherein the second transmit block to output two bits of data in succession onto each conductor of the second plurality of external conductors comprises circuitry to output the two bits of data at respective times having predetermined phase relations to the second clock signal.

11. A method of operation within a memory controller, the method comprising:

outputting first and second clock signals to a dynamic random access memory (DRAM), the first and second clock signals having different cycle times and requiring respective first and second propagation time intervals to propagate from the memory controller to the DRAM;

outputting two bits of address information onto each conductor of a first plurality of external conductors during a cycle time of the first clock signal;

outputting two bits of data in succession onto each conductor of a second plurality of external conductors during a cycle time of the second clock signal; and

offsetting a phase of one of the first and second clock signals from a phase of the other to compensate for a difference between the first and second propagation time intervals.

12. The method of claim 11 wherein offsetting the phase of one of the first and second clock signals from the phase of the other to compensate for the difference between the first and second propagation time intervals comprises adjusting the phase of at least one of the first and second clock signals by an amount of time according to the difference between the first and second propagation time intervals.

13. The method of claim 11 wherein offsetting the phase of one of the first and second clock signals from the phase of the other to compensate for the difference between the first and second propagation time intervals comprises adjusting the phase of at least one of the first and second clock signals such that the first and second clock signals are substantially phase aligned upon arrival at the DRAM.

14. The method of claim 13 wherein adjusting the phase of at least one of the first and second clock signals such that the first and second clock signals are substantially phase aligned upon arrival at the DRAM comprises adjusting a transmission time of at least one of the first and second clock signals such that an edge transition of the first clock signal is aligned with an edge transition of the second clock signal at the DRAM.

15. The method of claim 11 wherein offsetting the phase of one of the first and second clock signals from the phase of the other to compensate for the difference between the first and second propagation time intervals comprises:

generating a plurality of phase-distributed clock signals having respective phase offsets that are substantially evenly distributed within a cycle time of the second clock signal; and

selecting one of the plurality of phase-distributed clock signals to be output as the second clock signal.

16. The method of claim 15 wherein generating the plurality of phase-distributed clock signals having respective phase offsets that are substantially evenly distributed within the cycle time of the second clock signal comprises generating the plurality of phase-distributed clock signals within a phase-locked loop circuit.

17. The method of claim 15 wherein selecting one of the plurality of phase-distributed clock signals to be output as the second clock signal comprises selecting one of the plurality of phase-distributed clock signals within at least one of a multiplexer or a phase interpolator.

18. The method of claim 11 wherein outputting two bits of address information onto each conductor of the first plurality of external conductors comprises outputting, to the DRAM, an address value that specifies one or more storage locations within the DRAM and wherein outputting two bits of data in succession onto each conductor of the second plurality of external signal conductors comprises outputting, to the DRAM, write data to be stored within the one or more storage locations specified by the address value.

19. The method of claim 11 wherein outputting two bits of address information onto each conductor of the first plurality of external signal conductors comprises outputting the two bits of address information onto each conductor of the first plurality of external signal conductors at one or more times having a predetermined phase relation to the first clock signal and wherein outputting two bits of data in succession onto each conductor of the second plurality of external conductors comprises outputting the two bits of data at respective times having predetermined phase relations to the second clock signal.

20. A memory controller for controlling a dynamic random access memory (DRAM), the memory controller comprising:

means for outputting first and second clock signals to the DRAM, respectively, the first and second clock signals having different cycle times and requiring respective first and second propagation time intervals to propagate from the memory controller to the DRAM;

means for outputting two bits of address information onto each conductor of a first plurality of external conductors during a cycle time of the first clock signal;

means for outputting two bits of data in succession onto each conductor of a second plurality of external conductors during a cycle time of the second clock signal; and

means for offsetting a phase of one of the first and second clock signals from a phase of the other to compensate for a difference between the first and second propagation time intervals.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 10, 2021
From: HIGHLANDS LLC
To: RAMPART ASSET MANAGEMENT, LLC
Reel/Frame 058956/0139 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 2, 2021
From: RAMBUS INC.
To: HIGHLANDS LLC
Reel/Frame 058298/0836 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2016
From: WARE, FREDERICK A.; TSERN, ELY K.; PEREGO, RICHARD E.; HAMPEL, CRAIG E.
To: RAMBUS INC.
Reel/Frame 040732/0710 →
Continuity (11)
Continuation 15070376 · Mar 15, 2016
Continuation 14523922 · Oct 26, 2014
Continuation 14104188 · Dec 12, 2013
Continuation 13899844 · May 22, 2013
Continuation 13543779 · Jul 6, 2012
Continuation 12111816 · Apr 29, 2008
Continuation 11280560 · Nov 15, 2005
Continuation 11094137 · Mar 31, 2005
Continuation 10732533 · Dec 11, 2003
Continuation 09841911 · Apr 24, 2001
Related Publication 20170053691A1 · Feb 23, 2017