STORAGE SUBSYSTEM WITH MULTIPLE NON-VOLATILE MEMORY ARRAYS TO PROTECT AGAINST DATA LOSSES
First Claim
1. A storage subsystem comprising:
- a first controller connected to, and being capable of writing data to and reading data from, a first solid-state non-volatile memory array;
a second controller connected to, and being capable of writing data to and reading data from, a second solid-state non-volatile memory array; and
a connector for connecting the storage subsystem to a host system, said connector coupled to the first and second controllers such that the first and second controllers are capable of receiving storage access commands from the host system;
wherein the first controller is capable of presenting at least a portion of the first non-volatile memory array to the host system as storage space of a first storage device, and the second controller is capable of presenting at least a portion of the second non-volatile memory array to the host system as storage space of a second storage device.
8 Assignments
0 Petitions
Accused Products
Abstract
A storage subsystem contains multiple non-volatile memory arrays that are accessible to a host system when the storage subsystem is connected thereto. The storage subsystem implements commands and/or modes for enabling the host system to create and use backup copies of files, such that the host system can recover when files become corrupted or otherwise lost. In one embodiment, the storage subsystem presents the non-volatile memory arrays to the host'"'"'s operating system as distinct storage devices (e.g., ATA device 0 and 1), and implements special commands for copying data between these storage devices. The subsystem may alternatively present the memory arrays to the host operating system as a single storage device. The storage subsystem may have a standard form factor, such as a form factor commonly used for memory cards.
144 Citations
32 Claims
-
1. A storage subsystem comprising:
-
a first controller connected to, and being capable of writing data to and reading data from, a first solid-state non-volatile memory array; a second controller connected to, and being capable of writing data to and reading data from, a second solid-state non-volatile memory array; and a connector for connecting the storage subsystem to a host system, said connector coupled to the first and second controllers such that the first and second controllers are capable of receiving storage access commands from the host system; wherein the first controller is capable of presenting at least a portion of the first non-volatile memory array to the host system as storage space of a first storage device, and the second controller is capable of presenting at least a portion of the second non-volatile memory array to the host system as storage space of a second storage device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A storage subsystem, comprising:
-
first and second solid-state non-volatile memory arrays; controller circuitry which is capable of writing data to, and reading data from, each of the first and second non-volatile memory arrays in response to ATA commands received from a host system; and a connector for connecting the storage subsystem to the host system, said connector coupled to the controller circuitry; wherein the controller circuitry is capable of copying data from one of the non-volatile memory arrays to the other non-volatile memory array in response to commands from the host system. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A storage subsystem, comprising:
-
first and second solid-state non-volatile memory arrays; controller circuitry which is capable of writing data to, and reading data from, each of the first and second non-volatile memory arrays in response to commands received from a host system; and a connector for connecting the storage subsystem to the host system, said connector coupled to the controller circuitry; wherein the controller circuitry is capable of maintaining the second non-volatile memory array hidden from the host system while using the second non-volatile memory array to maintain a backup copy of data written by the host system to the first non-volatile memory array, such that the backup copy is maintained transparently to the host system. - View Dependent Claims (30, 31, 32)
-
Specification