Back-up and restoration of data between volatile and flash memory
First Claim
1. A computer program product for controlling back-up of data to flash memory, comprising:
- one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions executable by a computer to perform;
organizing back-up data into stripes, wherein a stripe is a set of pages across all available flash memory devices, dies and planes which have the same block and page address;
maintaining metadata indicating locations of known bad planes and grown bad planes;
using the metadata when writing back-up data to determine which planes to send cache program commands to; and
sending cache program commands to three or more stripes of data simultaneously including providing an indication in a stripe that the stripe is handling a cache program command;
wherein if a grown bad block is encountered whilst saving a stripe of data, the stripe of data is re-written to the next available page address avoiding the grown bad block.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, system, and computer program product are provided for back-up and restoration of data between volatile and flash memory. The method for controlling back-up of data to flash memory includes: organizing back-up data into stripes, wherein a stripe is a set of pages across all available flash memory devices, dies and planes which have the same block and page address; maintaining metadata indicating locations of known bad planes and grown bad planes; using the metadata when writing back-up data to determine which planes to send cache program commands to; and sending cache program commands to three or more stripes of data simultaneously including providing an indication in the stripe that the stripe is handling a cache program command If a grown bad block is encountered whilst saving a stripe of data, the stripe of data is re-written to the next available page address avoiding the grown bad block.
-
Citations
10 Claims
-
1. A computer program product for controlling back-up of data to flash memory, comprising:
-
one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions executable by a computer to perform; organizing back-up data into stripes, wherein a stripe is a set of pages across all available flash memory devices, dies and planes which have the same block and page address; maintaining metadata indicating locations of known bad planes and grown bad planes; using the metadata when writing back-up data to determine which planes to send cache program commands to; and sending cache program commands to three or more stripes of data simultaneously including providing an indication in a stripe that the stripe is handling a cache program command; wherein if a grown bad block is encountered whilst saving a stripe of data, the stripe of data is re-written to the next available page address avoiding the grown bad block. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
Specification