Systems and methods for storing and recovering controller data in non-volatile memory devices
AssigneeMicron Technology, Inc.
InventorCory Reche
Life of this patent
Estimating the term…
Abstract
Systems and methods are disclosed for storing the firmware and other data of a flash memory controller, such as using a RAID configuration across multiple flash memory devices or portions of a single memory device. In various embodiments, the firmware and other data used by a controller, and error correction information, such as parity information for RAID configuration, may be stored across multiple flash memory devices, multiple planes of a multi-plane flash memory device, or across multiple blocks or pages of a single flash memory device. The controller may detect the failure of a memory device or a portion thereof, and reconstruct the firmware and/or other data from the other memory devices or portions thereof.
Claims26
A method of operating at least one non-volatile memory device, comprising:
- storing portions of at least one of a program executable by a memory controller or operating data associated with a program executable by the memory controller across multiple memory devices or multiple portions of the memory device;
- and storing error correction information associated with the at least one of a program executable by the memory controller or operating data associated with a program executable by the memory controller across predetermined portions of multiple memory devices or multiple predetermined segmented portions of a memory device, wherein in the event of a respective failure of one of the memory devices or one of the portions of the memory device, the memory controller can recover the at least one of a program executable by the memory controller or operating data associated with a program executable by the memory controller based upon the stored error correction information.
A method of operating at least one non-volatile memory device, comprising:
- detecting a failure of one or more portions of the at least one memory device;
- and restoring portions of at least one of a program executable by a memory controller coupled to the memory device or operating data associated with a program executable by the memory controller from multiple functioning predetermined segmented portions of the memory device.
A system, comprising:
- a non-volatile memory device;
- and a memory controller coupled to the memory device and configured to store portions of at least one of a program executable by the memory controller or operating data associated with a program executable by the memory controller across predetermined portions of multiple memory devices or multiple predetermined segmented portions of a memory device.
A system comprising;
- a non-volatile memory device;
- a memory controller coupled to the memory device;
- and
- firmware stored on the memory device and configured to allow the memory controller to operate the memory device, wherein the firmware is divided and stored across multiple predetermined segmented portions of the memory device.
A method of operating a memory device, comprising:
- storing firmware and error correction information associated with the firmware for the memory device across multiple predetermined segmented portions of the memory device, wherein the firmware is executable by a memory controller.
Dependencies are inferred from the claim text.