EP1920337A2

Data consolidation and garbage collection in direct data file storage memories

Abstract

This record has no abstract on file.

Term

Term ended

Projected expiry passed 1 August 2026, 0.1 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

16 claims: 6 independent, 10 dependent

  1. 1
    Claims of equivalent WO 2007019220 A2 IT IS CLAIMED:1. For a re-programmable non- volatile memory system having a plurality of blocks of memory cells that are individually erased prior to data being written therein and that operates with an inventory of a minimum number of erased blocks ready to have data stored therein, a method of operation, comprising: receiving data logically addressed by unique file identifiers and offsets within the files, storing the received data of a first file as pages within one or more of the erased blocks that only partially fill one of the erased blocks, thereby leaving erased data storage capacity within the partially filled block, and postponing consolidating valid data from the partially filled block with valid data of a second file into another one of the erased blocks until at least the inventory of the number of erased blocks is deemed insufficient to maintain the minimum number.
  2. 5
    A method of operation of a re-programmable non-volatile memory system having a plurality of blocks of memory cells that are individually erased prior to data being written therein and which receives data having logical addresses of unique file identifiers and offsets within the individual files, wherein:valid data from a first group of two or more blocks partially programmed with data of two or more files are occasionally consolidated into another block, blocks containing valid data from a second group of one or more blocks that also contain obsolete data are occasionally garbage collected, only one of the data consolidation or garbage collection is carried out at one time, and priority is given to garbage collection over data consolidation.
  3. 6
    A method of operation of a re-programmable non- volatile memory system having a plurality of blocks of memory cells that are individually erased prior to data being written therein and which receives data having logical addresses of unique file identifiers and offsets within the individual files, wherein:received data of individual files are programmed into one or more erased blocks in a manner that data of at least a first file may only partially fill a first block and thereby leave erased storage capacity in the first block, subsequent operations on data within the memory system cause at least some of the data of a second file stored in a second block to become obsolete, in response to at least some of the data of the second file in the second block becoming obsolete, any remaining valid data in the second block are copied into a third block, in response to the first block having erased storage capacity, valid data are copied from the first block into a fourth block, and priority is given to the above-recited copying of valid data from the second block into the third block over the above-recited copying of valid data from the first block into the fourth block.
  4. 10
    A re-programmable non-volatile memory system having a plurality of blocks of memory cells that are individually erased prior to data being written therein, wherein:an inventory of a minimum number of erased blocks ready to have data stored therein are maintained, data of files logically addressed by unique file identifiers and offsets within the files are stored in the memory blocks by storing the received data of a first file as pages within one or more of the erased blocks that only partially fill one of the erased blocks, thereby leaving erased data storage capacity within the partially filled block, and consolidation of valid data from the partially filled block with valid data of a second file into another one of the erased blocks is postponed until at least the inventory of the number of erased blocks is deemed insufficient to maintain the minimum number.
  5. 13
    A re-programmable non-volatile memory system having a plurality of blocks of memory cells that are individually erased prior to data being written therein, wherein:data having logical addresses of unique file identifiers and offsets within the individual files are accepted, valid data from a first group of two or more blocks partially programmed with data of two or more files are occasionally consolidated into another block, blocks containing valid data from a second group of one or more blocks that also contain obsolete data are occasionally garbage collected, only one of the data consolidation or garbage collection is carried out at one time, and priority is given to garbage collection over data consolidation.
  6. 14
    A re-programmable non-volatile memory system having a plurality of blocks of memory cells that are individually erased prior to data being written therein, wherein:data having logical addresses of unique file identifiers and offsets within the individual files are accepted, received data of individual files are programmed into one or more erased blocks in a manner that data of at least a first file may only partially fill a first block and thereby leave erased storage capacity in the first block, subsequent operations on data within the memory system cause at least some of the data of a second file stored in a second block to become obsolete, any remaining valid data in the second block are copied into a third block in response to at least some of the data of the second file in the second block becoming obsolete, valid data are copied from the first block into a fourth block in response to the first block having erased storage capacity, and priority is given to the above-recited copying of valid data from the second block into the third block over the above-recited copying of valid data from the first block into the fourth block.