IP Library Granted Patent US 7,197,662
Granted Patent B2
US 7,197,662 · App. 10/284,199 · Granted Mar 27, 2007

Methods and systems for a storage system

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 7,197,662
App. No.
10/284,199
Granted
Mar 27, 2007
Kind
B2
Abstract

A storage system that may include one or more memory sections, one or more switches, and a management system. The memory sections include memory devices and a section controller capable of detecting faults with the memory section and transmitting messages to the management system regarding detected faults. The storage system may include a management system capable of receiving fault messages from the section controllers and removing from, service the faulty memory sections. Additionally, the management system may determine routing algorithms for the one or more switches.

Claims (137)

1. A storage system, comprising:

one or more memory sections, including

one or more memory devices having storage locations for storing data, and

a memory section controller capable of detecting faults in the memory section and transmitting a fault message in response to the detected faults; and one or more switches, including

one or more interfaces for connecting to one or more external devices; and

a switch fabric connected to one or more memory sections and the external device interfaces and interconnecting the memory sections and the external device interfaces based on an algorithm; and

a management system capable of receiving fault messages from the memory section controllers and removing from service the memory section from which the fault message was received, and wherein the management system is further capable of determining an algorithm for use by a switch fabric in interconnecting the memory sections and the external device interfaces, and instructing the switch to execute the determined algorithm,

wherein an interface of the switch is connected to a non-volatile storage device, and wherein the management system is further capable of instructing the non-volatile storage device to load data into one or more of the memory sections via the switch.

2. The storage system of claim 1 , wherein the management system is further capable of instructing the storage system to store a back-up of data stored by one or more of the memory sections into the non-volatile storage device.

3. The storage system of claim 2 , wherein in the event the management system receives a fault message from a memory section, the management system instructs the non-volatile storage device to load the back-up of the faulty memory section's data into a functioning memory section, and wherein the switch directs data requests regarding the faulty memory section's data to the functioning memory section.

4. A storage system, comprising:

one or more memory sections, including

one or more memory devices having storage locations for storing data, and

a memory section controller capable of detecting faults in the memory section and transmitting a fault message in response to the detected faults; and one or more switches, including

one or more interfaces for connecting to one or more external devices; and

a switch fabric connected to one or more memory sections and the external device interfaces and interconnecting the memory sections and the external device interfaces based on an algorithm;

a management system capable of receiving fault messages from the memory section controllers and removing from service the memory section from which the fault message was received, and wherein the management system is further capable of determining an algorithm for use by a switch fabric in interconnecting the memory sections and the external device interfaces, and instructing the switch to execute the determined algorithm; and

an interface for connecting to an external management system such that configuration management may be performed through the external management system.

5. A storage system, comprising:

one or more memory sections, including

one or more memory devices having storage locations for storing data, and

a memory section controller capable of detecting faults in the memory section and transmitting a fault message in response to the detected faults; and

one or more switches, including

one or more interfaces for connecting to one or more external devices; and

a switch fabric connected to one or more memory sections and the external device interfaces and interconnecting the memory sections and the external device interfaces based on an algorithm;

a management system capable of receiving fault messages from the memory section controllers and removing from service the memory section from which the fault message was received, and wherein the management system is further capable of determining an algorithm for use by a switch fabric in interconnecting the memory sections and the external device interfaces, and instructing the switch to execute the determined algorithm; and

one or more pipeline shift registers, including

one or more shift registers for receiving data stored in a memory device and outputting the data in response to receiving one or more clock signals.

6. A storage system, comprising:

one or more memory sections, including

one or more memory devices having storage locations for storing data, and

a memory section controller capable of detecting faults in the memory section and transmitting a fault message in response to the detected faults; and one or more switches, including

one or more interfaces for connecting to one or more external devices; and

a switch fabric connected to one or more memory sections and the external device interfaces and interconnecting the memory sections and the external device interfaces based on an algorithm; and

a management system capable of receiving fault messages from the memory section controllers and removing from service the memory section from which the fault message was received, and wherein the management system is further capable of determining an algorithm for use by a switch fabric in interconnecting the memory sections and the external device interfaces, and instructing the switch to execute the determined algorithm,

wherein one or more memory sections includes a memory interface device for receiving, in response to the memory section receiving a data request, data from a memory device, and the memory interface device combines the requested data and an identifier for use in forwarding the requested data, the address being received by the memory interface device from the memory section controller.

7. The storage system of claim 6 , wherein the identifier for use in forwarding the requested data is an address for a device to which the data are to be forwarded.

8. The storage system of claim 6 , wherein the identifier for use in forwarding the requested data is an identifier for identifying the data that are to be forwarded.

9. The storage system of claim 6 , wherein the data request received by the memory section is forwarded to the memory section controller which determines one or more addresses identifying storage locations in the memory devices responsive to the request and provides the addresses to the memory devices; and wherein the memory devices provide the data in the storage locations identified by the addresses to the memory interface device.

10. The storage system of claim 6 , wherein the memory devices include outputs, and wherein at least one of the memory interface devices includes:

at least one set of shift registers interconnected in series, wherein at least one of the shift registers receives a clock signal having a shift frequency, and wherein the shift register is capable of shifting data loaded into the shift register to a next one of the shift registers in the set according to shift frequency; and

wherein data from one or more of the outputs of a memory device is loaded into a corresponding shift register in the sets of shift registers and the loaded data is shifted from the shift register to a next one of the shift registers in the set according to the clock signal, such that the shift register maintains its shift frequency during any loading of the data.

11. The storage system of claim 6 , wherein the memory devices include outputs, and wherein at least one of the memory interface devices includes:

at least one set of shift registers interconnected in series, wherein at least one of the shift registers receives a clock signal having a shift frequency, and wherein the shift register is capable of shifting data loaded into the shift register to a next one of the shift registers in the set according to the shift frequency; and

wherein data in the set of shifted registers is loaded according to the clock signal from one or more shift registers in the set into one or more of the memory devices via an input corresponding to the shift register, such that the shift register maintains its shift frequency during any loading of the data.

12. A storage system, comprising:

one or more memory sections, including

one or more memory devices having storage locations for storing data, and

a memory section controller capable of detecting faults in the memory section and transmitting a fault message in response to the detected faults; and

one or more switches, including

one or more interfaces for connecting to one or more external devices; and

a switch fabric connected to one or more memory sections and the external device interfaces and interconnecting the memory sections and the external device interfaces based on an algorithm; and

a management system capable of receiving fault messages from the memory section controllers and removing from service the memory section from which the fault message was received, and wherein the management system is further capable of determining an algorithm for use by a switch fabric in interconnecting the memory sections and the external device interfaces, and instructing the switch to execute the determined algorithm,

wherein the management system includes:

one or more control processors for determining and providing the algorithm to the switch; and

one or more administration processors for collecting statistical data from the one or more switches and the one or more memory sections.

13. A storage system, comprising:

one or more memory sections, including

one or more memory devices having storage locations for storing data, and

a memory section controller capable of detecting faults in the memory section and transmitting a fault message in response to the detected faults; and

one or more switches, including

one or more interfaces for connecting to one or more external devices; and

a switch fabric connected to one or more memory sections and the external device interfaces and interconnecting the memory sections and the external device interfaces based on an algorithm; and

a management system capable of receiving fault messages from the memory section controllers and removing from service the memory section from which the fault message was received, and wherein the management system is further capable of determining an algorithm for use by a switch fabric in interconnecting the memory sections and the external device interfaces, and instructing the switch to execute the determined algorithm,

wherein at least one memory section further includes

a temporary storage device for storing data to be written to a memory device; and

a temporary storage interface device for storing data in and retrieving data from the temporary storage device;

wherein at least one of the switches is capable of, in response to receiving data to be stored in the memory section, forwarding the data to the temporary storage interface device, and wherein the temporary storage interface stores the data in the temporary storage device if a memory device to which the data is to be written is busy, and wherein the temporary storage interface device retrieves the data from the temporary storage device when the memory device is no longer busy and forwards the data to the memory device such that the memory device stores the data.

14. A method for use in a storage system, comprising:

storing data in storage locations in a memory device, the memory device included in a memory section;

a management system determining an algorithm for use by a switch in connecting the memory section and an external device interface;

the management system instructing the switch to execute the determined algorithm;

the switch connecting the memory section to the external device interfaces based on the algorithm;

detecting by a memory section controller a fault in regard to the data stored in the memory device and transmitting a fault message in response to the detected fault to the management system;

receiving the fault message at the management system;

the management system removing from service the memory section from which the fault message was received;

the management system instructing a non-volatile storage device to load data into a memory section via the switch; and

storing the data from the non-volatile storage device in a memory device in the memory section.

15. The method of claim 14 , further comprising:

storing a back-up of data stored by the memory device into the non-volatile storage device.

16. The method of claim 15 , further comprising:

the management system instructing the non-volatile storage device to load the back-up of the faulty memory device's data into a functioning memory device; and

the switch directing a data request regarding the faulty memory device's data to the functioning memory device.

17. A method for use in a storage system, comprising:

storing data in storage locations in a memory device, the memory device included in a memory section;

a management system determining an algorithm for use by a switch in connecting the memory section and an external device interface;

the management system instructing the switch to execute the determined algorithm;

the switch connecting the memory section to the external device interfaces based on the algorithm;

detecting by a memory section controller a fault in regard to the data stored in the memory device and transmitting a fault message in response to the detected fault to the management system;

receiving the fault message at the management system;

the management system removing from service the memory section from which the fault message was received;

a memory interface device in the memory section receiving, in response to the memory section receiving a data request, data from a memory device;

the memory interface device receiving from the memory section controller an identifier for use in forwarding the requested data;

the memory interface device combining the requested data and the identifier, and

the memory interface device forwarding the combined data and identifier to a destination device.

18. The method of claim 17 , further comprising:

forwarding to the memory section controller a data request;

the memory section controller determining one or more addresses identifying storage locations in the memory device responsive to the request;

the memory section controller providing the addresses to the memory devices, and

the memory device providing the data in the storage locations identified by the addresses to the memory interface device.

19. A method for use in a storage system, comprising:

storing data in storage locations in a memory device, the memory device included in a memory section;

a management system determining an algorithm for use by a switch in connecting the memory section and an external device interface;

the management system instructing the switch to execute the determined algorithm;

the switch connecting the memory section to the external device interfaces based on the algorithm;

detecting by a memory section controller a fault in regard to the data stored in the memory device and transmitting a fault message in response to the detected fault to the management system;

receiving the fault message at the management system;

the management system removing from service the memory section from which the fault message was received;

a memory interface device in the memory section receiving, in response to the memory section receiving a data request, data from the memory device;

shifting data in one or more shift registers in a set of shift registers interconnected in series from the shift register to a next one of the shift registers in the set on the basis of a clock signal having a shift frequency, wherein the shift registers are included in the memory interface device;

loading data from the memory device into a corresponding shift register in the set; and

shifting the data loaded into one or more of the shift registers to a next one of the shift registers in the set according to the shift frequency, wherein the shift registers maintains their shift frequency during the loading of the data from the memory devices into the shift registers.

20. A method for use in a storage system, comprising:

storing data in storage locations in a memory device, the memory device included in a memory section;

a management system determining an algorithm for use by a switch in connecting the memory section and an external device interface;

the management system instructing the switch to execute the determined algorithm;

the switch connecting the memory section to the external device interfaces based on the algorithm;

detecting by a memory section controller a fault in regard to the data stored in the memory device and transmitting a fault message in response to the detected fault to the management system;

receiving the fault message at the management system;

the management system removing from service the memory section from which the fault message was received;

a memory interface device in the memory section receiving, in response to the memory section receiving a data request, data from the memory device;

shifting data in one or more shift registers in a set of shift registers interconnected in series from the shift registers to a next one of the shift registers in the set on the basis of a clock signal having a shift frequency, the shift registers included in the memory interface device;

loading data from one or more of the shift registers to the memory device; and

shifting the data loaded from the one or more shift registers to a next one of the shift registers in the set according to the shift frequency after the data is loaded into the memory device, wherein the shift registers maintains their shift frequency during the loading of the data.

21. A method for use in a storage system, comprising:

storing data in storage locations in a memory device, the memory device included in a memory section;

a management system determining an algorithm for use by a switch in connecting the memory section and an external device interface;

the management system instructing the switch to execute the determined algorithm;

the switch connecting the memory section to the external device interfaces based on the algorithm;

detecting by a memory section controller a fault in regard to the data stored in the memory device and transmitting a fault message in response to the detected fault to the management system;

receiving the fault message at the management system;

the management system removing from service the memory section from which the fault message was received;

receiving data to be stored in the memory device;

forwarding the data to a temporary storage interface device;

the temporary storage device storing data to be stored in a temporary storage device if the memory device to which the data is to be written is busy;

the temporary storage interface device retrieving the data from the temporary storage device when the memory device to which the data is to be stored is no longer busy; and

the memory device storing the data.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 2, 2017
From: PARALLEL IRON, LLC
To: MOBILE NETWORKING SOLUTIONS, LLC
Reel/Frame 041446/0006 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2012
From: PARALLEL IRON, LLC
To: PARALLEL IRON, LLC
Reel/Frame 028392/0931 →
CORRECTIVE ASSIGNMENT TO CORRECT THE THE SPELLING OF THE ASSIGNEE NAME IS INCORRECT. PREVIOUSLY RECORDED ON REEL 025660 FRAME 0089. ASSIGNOR(S) HEREBY CONFIRMS THE IT IS CURRENTLY SPELLED PARRALLEL IRON LLC SHOULD BE PARALLEL IRON LLC.. Recorded Feb 4, 2011
From: RING TECHNOLOGY ENTERPRISES OF TEXAS, LLC
To: PARALLEL IRON LLC
Reel/Frame 025746/0410 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2011
From: RING TECHNOLOGY ENTERPRISES OF TEXAS, LLC
To: PARRALLEL IRON LLC
Reel/Frame 025660/0089 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 11, 2009
From: RING TECHNOLOGY ENTERPRISES, INC.
To: RING TECHNOLOGY ENTERPRISES OF TEXAS, LLC
Reel/Frame 023639/0572 →
CHANGE OF NAME Recorded Dec 11, 2009
From: RING TECHNOLOGY ENTERPRISES, LLC
To: RING TECHNOLOGY ENTERPRISES, INC.
Reel/Frame 023639/0460 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2003
From: BULLEN, MELVIN J.; DODD, STEVEN L.; LYNCH, WILLIAM T.; HERBISON, DAVID J.
To: RING TECHNOLOGY ENTERPRISES, LLC
Reel/Frame 013980/0627 →