Mass storage systems and methods using solid-state storage media and ancillary interfaces for direct communication between memory cards
AssigneeOCZ Storage Solutions Inc.
InventorFranz Michael Schuette
Life of this patent
Estimating the term…
Abstract
A mass storage system comprising multiple memory cards, each with non-volatile memory components, a system bus interface for communicating with a system bus of a host system, and at least one ancillary interface. The ancillary interface is configured for direct communication of commands, addresses and data between the memory cards via a cross-link connector without accessing the system bus interface.
Claims21
A mass storage system for use with a host system comprising at least first and second memory cards, each of the first and second memory cards comprising a memory controller, non-volatile memory components associated with the memory controller, a system bus interface for communicating with a system bus of the host system, and at least a first ancillary interface, the first ancillary interface being configured for direct communication of commands, addresses and data between the first and second memory cards via a cross-link connector, wherein the first and second memory cards are configured to communicate through the system bus interface and the first ancillary interface simultaneously.
A method of increasing performance of a non-volatile solid-state memory-based storage system of a host system, the method comprising:
- configuring multiple memory cards as a super-array in which each of the memory cards has non-volatile memory components, a system bus interface to a system bus of the host system, and an ancillary interface that provides a direct cross-link between the memory cards;
- transmitting commands, addresses and data to the memory cards via the system bus interface;
- and transmitting timing and status information between the memory cards via the ancillary interfaces and the cross-link without accessing the host system or the system bus thereof, wherein transmitting commands, addresses and data via the system bus interface and transmitting timing and status information via the ancillary interface occurs simultaneously.
A method for storing data including parity information across a plurality of memory cards, wherein each of the memory cards has non-volatile memory components, a memory controller, a system bus interface for exchanging commands, addresses and data with a system bus of a host system, an error checking and correction (ECC) engine, and an ancillary interface that provides a direct cross-link between at least a first and a second of the memory cards, the method comprising:
- transferring ECC data to at least the second memory card via the cross-link during writes to the first memory card via the system bus interface;
- and retrieving the ECC data from the second memory card via the cross-link and without accessing the system bus during reads from the first memory card via the system bus interface.
A method for storing data including parity information across a plurality of memory cards, wherein each of the memory cards has non-volatile memory components, a memory controller, a system bus interface for exchanging commands, addresses and data with a system bus of a host system, a parity calculation engine to generate parity values, and an ancillary interface that provides a direct cross-link between at least a first, second and third of the memory cards, the method comprising:
- transferring intermediate parity values from the first and second memory cards to the third memory card via the cross-link during writes to the first and second memory cards via the system bus interface, the intermediate parity data providing redundancy for corresponding data stored on the first and second memory cards;
- and combining the intermediate parity values from the first memory card and the second memory card to generate redundancy information;
- and then storing the redundancy information on at least the third memory card.
Dependencies are inferred from the claim text.