Back-up and restoration of data between volatile and flash memory
First Claim
Patent Images
1. A method for back-up of data to flash memory, comprising:
- organizing backed-up data into one or more stripes, wherein a stripe comprises a set of pages across all available flash memory devices which have a same block and page address; and
responsive to encountering an error in a block of flash memory during back-up of a particular stripe of data, performing;
re-writing the particular stripe of data starting at a next available page address and excluding a page of flash memory for the block having the error;
writing subsequent stripes of data in the block having the error to pages excluding the page of flash memory for the block having the error; and
embedding metadata for the particular stripe of data, the metadata including an indication of a location of the block having the error.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, a method for back-up of data to flash memory is provided. Backed up data is organized into one or more stripes, wherein a stripe comprises a set of pages across all available flash memory devices which have a same block and page address. Responsive to encountering an error in a block of flash memory during back-up of a particular stripe of data, the particular stripe of data is rewritten starting at a next available page address and excluding a page of flash memory for the block having the error. Subsequent stripes of data in the block having the error are written to pages excluding the page of flash memory for the block having the error.
36 Citations
19 Claims
-
1. A method for back-up of data to flash memory, comprising:
-
organizing backed-up data into one or more stripes, wherein a stripe comprises a set of pages across all available flash memory devices which have a same block and page address; and responsive to encountering an error in a block of flash memory during back-up of a particular stripe of data, performing; re-writing the particular stripe of data starting at a next available page address and excluding a page of flash memory for the block having the error; writing subsequent stripes of data in the block having the error to pages excluding the page of flash memory for the block having the error; and embedding metadata for the particular stripe of data, the metadata including an indication of a location of the block having the error. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system for back-up of data to flash memory, comprising:
-
one or more computer processors; a stripe component for organizing backed-up data into one or more stripes, wherein a stripe comprises a set of pages across all available flash memory devices which have a same block and page address; a grown bad block component for performing, with the one or more computer processors, responsive to encountering an error in a block of flash memory during back-up of a particular stripe of data; re-writing, with the one or more computer processors, the particular stripe of data starting at a next available page address and excluding a page of flash memory for the block having the error; and writing, with the one or more computer processors, subsequent stripes of data in the block having the error to pages excluding the page of flash memory for the block having the error; and a metadata component for embedding, with the one or more computer processors, metadata for the particular stripe of data, the metadata including an indication of a location of the block having the error. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A computer program product for back-up of data to flash memory, the computer program product comprising:
a non-transitory computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising; organizing backed up data into one or more stripes, wherein a stripe comprises a set of pages across all available flash memory devices which have a same block and page address; and responsive to encountering an error in a block of flash memory during back-up of a particular stripe of data, performing; re-writing the particular stripe of data starting at a next available page address and excluding a page of flash memory for the block having the error; writing subsequent stripes of data in the block having the error to pages excluding the page of flash memory for the block having the error; and embedding metadata for the particular stripe of data, the metadata including an indication of a location of the block having the error. - View Dependent Claims (18, 19)
Specification