IP Library Granted Patent US 9,507,739
Granted Patent B2
US 9,507,739 · App. 14/922,388 · Granted Nov 29, 2016

Configurable memory circuit system and method

Inventors: Suresh Natarajan Rajan (San Jose, CA); Keith R. Schakel (San Jose, CA); Michael John Sebastian Smith (Palo Alto, CA); David T. Wang (Thousand Oaks, CA); Frederick Daniel Weber (San Jose, CA)
Assignee: Google Inc.
G06F13/16G06F13/4221G11C7/10G11C11/4063G11C11/40611
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,507,739
App. No.
14/922,388
Granted
Nov 29, 2016
Kind
B2
Abstract

A memory circuit system and method are provided in the context of various embodiments. In one embodiment, an interface circuit remains in communication with a plurality of memory circuits and a system. The interface circuit is operable to interface the memory circuits and the system for performing various functionality (e.g. power management, simulation/emulation, etc.).

Claims (69)

1. A sub-system, comprising:

an interface circuit adapted for coupling with a plurality of physical memory circuits and a system, the interface circuit configured to:

interface the plurality of physical memory circuits and the system for emulating a virtual memory circuit having a refresh cycle time constraint that is different from a refresh cycle time constraint of the plurality of physical memory circuits;

receive a refresh command from the system directed to the virtual memory circuit;

in response to receiving the refresh command from the system directed to the virtual memory circuit, determine a staggered sequence of timings for issuing refresh commands to the plurality of physical memory circuits, wherein the staggered sequence of timings satisfy the refresh cycle time constraint of the virtual memory circuit and the refresh cycle time constraint of the plurality of physical memory circuits; and

based on the staggered sequence of timings, issue refresh commands to respective physical memory circuits,

wherein the refresh cycle time constraint of the virtual memory circuit specifies a minimum refresh cycle time (tRFC) associated with the virtual memory circuit, and

wherein the first refresh command and the second refresh command are issued within a span of time specified by the tRFC associated with the virtual memory circuit.

2. The sub-system of claim 1 , wherein interfacing the plurality of physical memory circuits and the system for emulating the virtual memory circuit comprises:

using the plurality of physical memory circuits to emulate the virtual memory circuit; and

presenting the virtual memory circuit to the system, wherein the virtual memory circuit appears to the system as having the refresh cycle time constraint of the virtual memory circuit.

3. The sub-system of claim 1 , wherein issuing refresh commands to respective physical memory circuits comprises:

based on the staggered sequence of timings, issuing a first refresh command to a first physical memory circuit of the plurality of physical memory circuits; and

based on the staggered sequence of timings, issuing a second refresh command to a second physical memory circuit of the plurality of physical memory circuits, wherein the first refresh command and the second refresh command are issued at different times.

4. The sub-system of claim 3 , wherein issuing the first refresh command to the first physical memory circuit of the plurality of physical memory circuits comprises issuing the first refresh command to a group of physical memory circuits that include the first physical memory circuit.

5. The sub-system of claim 3 , wherein issuing the first refresh command to the first physical memory circuit of the plurality of physical memory circuits comprises issuing a command to the second physical memory circuit to bring the second physical memory circuit into a power down mode.

6. The sub-system of claim 3 , wherein the interface circuit is configured to:

after issuing the first refresh command and the second refresh command, issuing commands to the first physical memory circuit and the second physical memory circuit to bring the first physical memory circuit and the second physical memory circuit into a precharge power down mode.

7. The sub-system of claim 1 ,

wherein a capacity of the virtual memory circuit is larger than a capacity of each of the plurality of physical memory circuits, and

wherein the refresh cycle time constraint of the virtual memory circuit is larger than the refresh cycle time constraint of the plurality of physical memory circuits.

8. An apparatus, comprising:

a plurality of physical memory circuits;

an interface circuit electrically coupled to the plurality of physical memory circuits and a system, the interface circuit configured to:

interface the plurality of physical memory circuits and the system for emulating a virtual memory circuit having a refresh cycle time constraint that is different from a refresh cycle time constraint of the plurality of physical memory circuits;

receive a refresh command from the system directed to the virtual memory circuit;

in response to receiving the refresh command from the system directed to the virtual memory circuit, determine a staggered sequence of timings for issuing refresh commands to the plurality of physical memory circuits, wherein the staggered sequence of timings satisfy the refresh cycle time constraint of the virtual memory circuit and the refresh cycle time constraint of the plurality of physical memory circuits; and

based on the staggered sequence of timings, issue refresh commands to respective physical memory circuits,

wherein the refresh cycle time constraint of the virtual memory circuit specifies a minimum refresh cycle time (tRFC) associated with the virtual memory circuit, and

wherein the first refresh command and the second refresh command are issued within a span of time specified by the tRFC associated with the virtual memory circuit.

9. The apparatus of claim 8 , wherein interfacing the plurality of physical memory circuits and the system for emulating the virtual memory circuit comprises:

using the plurality of physical memory circuits to emulate the virtual memory circuit; and

presenting the virtual memory circuit to the system, wherein the virtual memory circuit appears to the system as having the refresh cycle time constraint of the virtual memory circuit.

10. The apparatus of claim 8 , wherein issuing refresh commands to respective physical memory circuits comprises:

based on the staggered sequence of timings, issuing a first refresh command to a first physical memory circuit of the plurality of physical memory circuits; and

based on the staggered sequence of timings, issuing a second refresh command to a second physical memory circuit of the plurality of physical memory circuits, wherein the first refresh command and the second refresh command are issued at different times.

11. The apparatus of claim 10 , wherein issuing the first refresh command to the first physical memory circuit of the plurality of physical memory circuits comprises issuing the first refresh command to a group of physical memory circuits that include the first physical memory circuit.

12. The apparatus of claim 10 , wherein issuing the first refresh command to the first physical memory circuit of the plurality of physical memory circuits comprises issuing a command to the second physical memory circuit to bring the second physical memory circuit into a power down mode.

13. The apparatus of claim 10 , wherein the interface circuit is configured to:

after issuing the first refresh command and the second refresh command, issuing commands to the first physical memory circuit and the second physical memory circuit to bring the first physical memory circuit and the second physical memory circuit into a precharge power down mode.

14. The apparatus of claim 8 ,

wherein a capacity of the virtual memory circuit is larger than a capacity of each of the plurality of physical memory circuits, and

wherein the refresh cycle time constraint of the virtual memory circuit is larger than the refresh cycle time constraint of the plurality of physical memory circuits.

15. A method, comprising:

interfacing, by an interface circuit, a plurality of physical memory circuits and a system to emulate a virtual memory circuit having a refresh cycle time constraint that is different from a refresh cycle time constraint of the plurality of physical memory circuits;

receiving a refresh command from the system directed to the virtual memory circuit;

in response to receiving the refresh command from the system directed to the virtual memory circuit, determining a staggered sequence of timings for issuing refresh commands to the plurality of physical memory circuits, wherein the staggered sequence of timings satisfy the refresh cycle time constraint of the virtual memory circuit and the refresh cycle time constraint of the plurality of physical memory circuits; and

based on the staggered sequence of timings, issuing refresh commands to respective physical memory circuits,

wherein the refresh cycle time constraint of the virtual memory circuit specifies a minimum refresh cycle time (tRFC) associated with the virtual memory circuit, and

wherein the first refresh command and the second refresh command are issued within a span of time specified by the tRFC associated with the virtual memory circuit.

16. The method of claim 15 , wherein interfacing the plurality of physical memory circuits and the system to emulate the virtual memory circuit comprises:

using the plurality of physical memory circuits to emulate the virtual memory circuit; and

presenting the virtual memory circuit to the system, wherein the virtual memory circuit appears to the system as having the refresh cycle time constraint of the virtual memory circuit.

17. The method of claim 15 , wherein issuing refresh commands to respective physical memory circuits comprises:

based on the staggered sequence of timings, issuing a first refresh command to a first physical memory circuit of the plurality of physical memory circuits; and

based on the staggered sequence of timings, issuing a second refresh command to a second physical memory circuit of the plurality of physical memory circuits, wherein the first refresh command and the second refresh command are issued at different times.

18. The method of claim 17 , wherein the interface circuit is configured to:

after issuing the first refresh command and the second refresh command, issuing commands to the first physical memory circuit and the second physical memory circuit to bring the first physical memory circuit and the second physical memory circuit into a precharge power down mode.

19. The method of claim 15 ,

wherein a capacity of the virtual memory circuit is larger than a capacity of each of the plurality of physical memory circuits, and

wherein the refresh cycle time constraint of the virtual memory circuit is larger than the refresh cycle time constraint of the plurality of physical memory circuits.

20. A sub-system, comprising:

an interface circuit adapted for coupling with a plurality of physical memory circuits and a system, the interface circuit configured to:

interface the plurality of physical memory circuits and the system for emulating a virtual memory circuit having a refresh cycle time constraint that is different from a refresh cycle time constraint of the plurality of physical memory circuits;

receive a refresh command from the system directed to the virtual memory circuit;

in response to receiving the refresh command from the system directed to the virtual memory circuit, determine a staggered sequence of timings for issuing refresh commands to the plurality of physical memory circuits, wherein the staggered sequence of timings satisfy the refresh cycle time constraint of the virtual memory circuit and the refresh cycle time constraint of the plurality of physical memory circuits; and

based on the staggered sequence of timings, issue refresh commands to respective physical memory circuits, the issuing comprising:

based on the staggered sequence of timings, issue a first refresh command to a first physical memory circuit of the plurality of physical memory circuits and issue a command to a second physical memory circuit of the plurality of physical memory circuits to bring the second physical memory circuit into a power down mode; and

based on the staggered sequence of timings, issue a second refresh command to the second physical memory circuit, wherein the first refresh command and the second refresh command are issued at different times.

Assignments (5)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044097/0658 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2015
From: METARAM, INC.
To: GOOGLE INC.
Reel/Frame 036882/0559 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2015
From: METARAM, INC.
To: GOOGLE INC.
Reel/Frame 036882/0713 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2015
From: RAJAN, SURESH NATARAJAN; SCHAKEL, KEITH R.; SMITH, MICHAEL JOHN; WANG, DAVID T.; WEBER, FREDERICK DANIEL
To: METARAM, INC.
Reel/Frame 036958/0433 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2015
From: RAJAN, SURESH NATARAJAN; SCHAKEL, KEITH R.; SMITH, MICHAEL JOHN; WANG, DAVID T.; WEBER, FREDERICK DANIEL
To: GOOGLE INC.
Reel/Frame 036958/0548 →
Continuity (113)
Continuation 14090342 · Nov 26, 2013
Continuation In Part 13367182 · Feb 6, 2012
Continuation 11929636 · Oct 30, 2007
Continuation PCTUS2007016385 · Jul 18, 2007
Continuation In Part 11461439 · Jul 31, 2006
Continuation In Part 11524811 · Sep 20, 2006
Continuation In Part 11524730 · Sep 20, 2006
Continuation In Part 11524812 · Sep 20, 2006
Continuation In Part 11524716 · Sep 20, 2006
Continuation In Part 11538041 · Oct 2, 2006
Continuation In Part 11584179 · Oct 20, 2006
Continuation In Part 11762010 · Jun 12, 2007
Continuation In Part 11762013 · Jun 12, 2007
Continuation In Part 14922388
Continuation 14090342 · Nov 26, 2013
Continuation In Part 12507682 · Jul 22, 2009
Continuation 11461427 · Jul 31, 2006
Continuation In Part 11474075 · Jun 23, 2006
Continuation In Part 14922388
Continuation 14090342 · Nov 26, 2013
Continuation 11672921 · Feb 8, 2007
Continuation In Part 11461437 · Jul 31, 2006
Continuation In Part 11702981 · Feb 5, 2007
Continuation In Part 11702960 · Feb 5, 2007
Continuation In Part 14922388
Continuation 14090342
Continuation In Part 13620425 · Sep 14, 2012
Continuation 13341844 · Dec 30, 2011
Division 11702981 · Feb 5, 2007
Continuation In Part 11461437
Continuation In Part 14922388
Continuation 14090342
Continuation In Part 13615008 · Sep 13, 2012
Continuation 11939440 · Nov 13, 2007
Continuation In Part 11524811
Continuation In Part 11461439
Continuation In Part 14922388
Continuation 14090342
Continuation In Part 13618246 · Sep 14, 2012
Continuation 13280251 · Oct 24, 2011
Continuation 11763365 · Jun 14, 2007
Continuation In Part 11474076 · Jun 23, 2006
Continuation In Part 11515223 · Sep 1, 2006
Continuation In Part 14922388
Continuation 14090342
Continuation In Part 13620565 · Sep 14, 2012
Continuation 11515223
Continuation 14922388
Continuation 14090342
Continuation In Part 13620645 · Sep 14, 2012
Continuation 11929655 · Oct 30, 2007
Continuation 11828181 · Jul 25, 2007
Continuation In Part 11584179
Continuation 11524811
Continuation In Part 11461439
Continuation In Part 14922388
Continuation 14090342
Continuation In Part 13473827 · May 17, 2012
Division 12378328 · Feb 14, 2009
Division 14922388
Continuation 14090342
Continuation In Part 13620793 · Sep 15, 2012
Continuation 12057306 · Mar 27, 2008
Continuation In Part 11611374 · Dec 15, 2006
Continuation In Part 14922388
Continuation 14090342
Continuation In Part 13620424 · Sep 14, 2012
Continuation 13276212 · Oct 18, 2011
Continuation 11611374
Continuation 14922388
Continuation 14090342
Continuation In Part 13597895 · Aug 29, 2012
Continuation 13367259 · Feb 6, 2012
Division 11941589 · Nov 16, 2007
Division 14922388
Continuation 14090342
Continuation In Part 13455691 · Apr 25, 2012
Continuation 12797557 · Jun 9, 2010
Continuation 14922388
Continuation 14090342
Continuation In Part 13620412 · Sep 14, 2012
Continuation 13279068 · Oct 21, 2011
Division 12203100 · Sep 2, 2008
Division 14922388
Continuation 14090342
Continuation In Part 13898002 · May 20, 2013
Continuation 13411489 · Mar 2, 2012
Continuation 11939432 · Nov 13, 2007
Continuation 14922388
Continuation 14090342
Continuation In Part 11515167 · Sep 1, 2006
Continuation In Part 14922388
Continuation 14090342
Continuation In Part 13620199 · Sep 14, 2012
Continuation 12144396 · Jun 23, 2008
Continuation 14922388
Continuation 14090342
Continuation In Part 13620207 · Sep 14, 2012
Continuation 12508496 · Jul 23, 2009
Provisional Application 60693631 · Jun 24, 2005
Provisional Application 60772414 · Feb 9, 2006
Provisional Application 60865624 · Nov 13, 2006
Provisional Application 60865627 · Nov 13, 2006
Provisional Application 60814234 · Jun 16, 2006
Provisional Application 60713815 · Sep 2, 2005
Provisional Application 60823229 · Aug 22, 2006
Provisional Application 61030534 · Feb 21, 2008
Provisional Application 60849631 · Oct 5, 2006
Provisional Application 61185585 · Jun 9, 2009
Provisional Application 61014740 · Dec 18, 2007
Provisional Application 60865623 · Nov 13, 2006
Provisional Application 61083878 · Jul 25, 2008
Related Publication 20160048466A1 · Feb 18, 2016