DYNAMIC HIGHER-LEVEL REDUNDANCY MODE MANAGEMENT WITH INDEPENDENT SILICON ELEMENTS
First Claim
1. A system comprising:
- means for computing k redundant data portions to protect n-k useful data portions;
means for storing each of the k redundant data portions and each of the n-k useful data portions in separate corresponding areas, each of the corresponding areas in a respective one of n physical devices;
means for, subsequent to a failure such that one of the corresponding areas is no longer usable, computing j redundant data portions to protect n-1-j useful data portions; and
wherein j<
=k.
7 Assignments
0 Petitions
Accused Products
Abstract
A Solid-State Disk (SSD) controller enables dynamic higher-level redundancy mode management with independent silicon elements to provide graceful degradation as non-volatile (e.g. flash) memory elements fail during operation of an SSD implemented by the controller. Higher-level error correction provides correction of lower-level uncorrectable errors. If a failure of one of the non-volatile memory elements is detected, then the higher-level error correction is dynamically transitioned from operating in a current mode to operating in a new mode. The transition includes one or more of reducing free space available on the SSD, rearranging data storage of the SSD, recovering/storing failed user data (if possible), and determining/storing revised higher-level error correction information. Operation then continues in the new mode. If another failure of the non-volatile memory elements is detected, then another transition is made to another new mode.
-
Citations
20 Claims
-
1. A system comprising:
-
means for computing k redundant data portions to protect n-k useful data portions; means for storing each of the k redundant data portions and each of the n-k useful data portions in separate corresponding areas, each of the corresponding areas in a respective one of n physical devices; means for, subsequent to a failure such that one of the corresponding areas is no longer usable, computing j redundant data portions to protect n-1-j useful data portions; and wherein j<
=k. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system comprising:
-
means for operating in a first higher-level redundancy mode comprising means for storing n information portions in n respective non-overlapping areas of memory; means for operating in a second higher-level redundancy mode comprising means for storing n-1 information portions in n-1 respective non-overlapping areas of the memory; means for detecting a failure of a failing one of the n respective non-overlapping areas; means for, in response to the failure, dynamically transitioning from operating via the means for operating in the first higher-level redundancy mode to operating via the means for operating in the second higher-level redundancy mode, the n-1 of the n respective non-overlapping areas being the n respective non-overlapping areas excluding the failing one of the n respective non-overlapping areas; wherein each of the n information portions comprises respective n-k data information portions and respective k redundant information portions computed to protect the respective n-k data information portions; wherein each of the n-1 information portions comprises respective n-1-j data information portions and respective j redundant information portions computed to protect the respective n-1-j data information portions; wherein j<
=k; andwherein each of the n respective non-overlapping areas is in a respective one of n physical devices of the memory. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A system comprising:
-
means for managing one or more flash memories in accordance with a current higher-level redundancy mode in response to read and/or write requests from a computing host; and means for dynamically transitioning the current higher-level redundancy mode in response to detecting a failure of one or more portions of one or more of the flash memories. - View Dependent Claims (18, 19, 20)
-
Specification