IP Library Granted Patent US 8,433,845
Granted Patent B2
US 8,433,845 · App. 12/756,009 · Granted Apr 30, 2013

Data storage device which serializes memory device ready/busy signals

Inventors: Albert T. Borchers (Santa Cruz, CA); Andrew T. Swing (Los Gatos, CA); Robert S. Sprinkle (San Jose, CA); Jason W. Klaus (Brooklyn, NY)
Assignee: Google Inc.
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 8,433,845
App. No.
12/756,009
Granted
Apr 30, 2013
Kind
B2
Abstract

A data storage device may include a command bus, a status bus, multiple memory devices that are operably coupled to the command bus and to the status bus, and a controller including multiple channel controllers, where the channel controllers are operably coupled to the command bus and to the status bus and each of the channel controllers is arranged and configured to control one or more of the memory devices. The data storage device may include multiple programmable logic devices that are operably coupled to the status bus, where each of the programmable logic devices is configured to retrieve a ready/busy signal from each of the memory devices under control of one of the channel controllers using the status bus, serialize the ready/busy signals and communicate the serialized ready/busy signals to the channel controllers.

Claims (38)

1. A data storage device comprising:

a command bus;

a status bus;

multiple memory devices that are operably coupled to the command bus and to the status bus;

a controller comprising multiple channel controllers, wherein the channel controllers are operably coupled to the command bus and to the status bus and each of the channel controllers is arranged and configured to control one or more of the memory devices; and

multiple programmable logic devices that are operably coupled to the status bus, wherein each of the programmable logic devices is configured to:

retrieve a ready/busy signal from each of the memory devices under control of one of the channel controllers using the status bus;

serialize the ready/busy signals; and

communicate the serialized ready/busy signals to the channel controllers.

2. The data storage device of claim 1 wherein the memory devices comprise flash memory chips.

3. The data storage device of claim 1 wherein the memory devices comprise dynamic random access memory (DRAM) chips.

4. The data storage device of claim 1 wherein the each of the channel controllers is configured to de-serialize the read/busy signals received from the programmable logic devices controlled by the channel controller.

5. The data storage device of claim 1 wherein each of the channel controllers receives a status of the controlled memory devices without polling the status of the controlled memory devices over the command bus.

6. The data storage device of claim 1 the status bus comprises an out-of-band bus that is configured to facilitate communication of a status of the memory devices to the channel controllers.

7. The data storage device of claim 1 further comprising:

a memory board, wherein the memory devices are affixed to the memory board; and

a controller board that is separate from the memory board and that is operably connected to the memory board, wherein the controller is affixed to the controller board.

8. The data storage device of claim 7 wherein the programmable logic devices are affixed to the memory board.

9. A method for determining a status of multiple memory devices, the method comprising:

retrieving, by a programmable logic device, a ready/busy signal from each of multiple memory devices;

serializing the retrieved ready/busy signals; and

communicating the serialized ready/busy signals from the programmable logic device to a channel controller.

10. The method as in claim 9 wherein the multiple memory devices comprise flash memory chips.

11. The method as in claim 9 wherein the multiple memory devices comprise dynamic random access memory (DRAM) chips.

12. The method as in claim 9 wherein retrieving the ready/busy signal comprises retrieving the ready/busy signal from each of the memory devices using an out-of-band status bus.

13. The method as in claim 9 wherein:

retrieving, by the programmable logic device, comprises retrieving, by the programmable logic device, a ready/busy signal from each of a first group of memory devices controlled by a first channel controller and retrieving, by the programmable logic device, a ready/busy signal from each of a second group of memory devices controlled by a second channel controller;

serializing the retrieved ready/busy signals comprises serializing the retrieved ready/busy signals from the first group of memory devices and the second group of memory devices; and

communicating the serialized ready/busy signals comprises communicating the serialized ready/busy signals from the programmable logic device to the first channel controller and the second channel controller.

14. A programmable logic device having instructions stored thereon, wherein the instructions, when executed, cause the programmable logic device to:

retrieve a ready/busy signal from each of multiple memory devices;

serialize the retrieved ready/busy signals; and

communicate the serialized ready/busy signals to a channel controller.

15. The programmable logic device of claim 14 wherein the memory devices comprise flash memory chips.

16. The programmable logic device of claim 14 wherein the memory devices comprise dynamic random access memory (DRAM) chips.

17. The programmable logic device of claim 14 wherein the instructions that, when executed, cause the programmable logic device to retrieve the ready/busy signal comprise instructions that, when executed, cause the programmable logic device to retrieve the ready/busy signal from each of the memory devices using an out-of-band status bus.

18. The programmable logic device of claim 14 wherein the programmable logic device is on a memory board and the channel controller is on a separate controller board.

19. The programmable logic device of claim 14 wherein the instructions that, when executed, cause the programmable logic device to communicate the serialized ready/busy signals comprise instructions that, when executed, cause the programmable logic device to communicate the serialized ready/busy signals to the channel controller without being polled by the channel controller.

Assignments (2)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044101/0299 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2010
From: BORCHERS, ALBERT T.; SWING, ANDREW T.; SPRINKLE, ROBERT S.; KLAUS, JASON W.
To: GOOGLE INC.
Reel/Frame 025091/0788 →
Continuity (6)
Provisional Application 61167709 · Apr 8, 2009
Provisional Application 61187835 · Jun 17, 2009
Provisional Application 61304469 · Feb 14, 2010
Provisional Application 61304468 · Feb 14, 2010
Provisional Application 61304475 · Feb 14, 2010
Related Publication 20100262767A1 · Oct 14, 2010