Selective write-once-memory encoding in a flash based disk cache memory
AssigneeInternational Business Machines Corporation
InventorsGanesh Balakrishnan, Anil Krishna
Life of this patent
Estimating the term…
Abstract
In a method for storing data in a flash memory array, the flash memory array includes a plurality of physical pages. The method includes receiving a request to perform a data access operation through a communication bus. The request includes data and a logical page address. The method further includes allocating one or more physical pages of the flash memory array to perform the data access operation. The method further includes, based on a historical usage data of the flash memory array, selectively encoding the data contained in the logical page into the one or more physical pages.
Claims16
A method for storing data in a flash memory array having a plurality of physical pages, the method comprising:
- using a computer, receiving a request to perform a data access operation through a communication bus, the request comprising data and a logical page address;
- allocating one or more physical pages of the flash memory array to perform the data access operation;
- and
- based on a historical usage data of the flash memory array, selectively encoding the data contained in the logical page into the one or more physical pages, wherein selectively encoding the data contained in the logical page into the one or more physical pages comprises:
- determining a probability of a subsequent data access request updating the data contained in the logical page;
- determining whether the probability exceeds a predetermined threshold and;
- in response to determining that the probability exceeds the predetermined threshold, encoding the data contained in the logical page into the one or more physical pages.
A computer program product for storing data in a flash memory array having a plurality of physical pages, the computer program product comprising one or more non-transitory computer-readable tangible storage devices and program instructions stored on at least one of the one or more non-transitory computer-readable tangible storage devices, the program instructions comprising:
- program instructions executable by a computer to receive a request to perform a data access operation through a communication bus, the request comprising data and a logical page address;
- program instructions to allocate one or more physical pages of the flash memory array to perform the data access operation;
- and
- program instructions to, based on a historical usage data of the flash memory array, selectively encode the data contained in the logical page into the one or more physical pages, wherein selectively encoding the data contained in the logical page into the one or more physical pages comprises:
- program instructions to determine corresponding to a probability of a subsequent data access request updating the data contained in the logical page;
- program instructions to determine whether the probability exceeds a predetermined threshold;
- and
- in response to determining that the probability exceeds the predetermined threshold program instructions to encode, the data contained in the logical page into the one or more physical pages.
Dependencies are inferred from the claim text.