ADVANCED MANAGEMENT OF A NON-VOLATILE MEMORY
First Claim
1. A method of managing a non-volatile memory device, the method comprising:
- receiving data sectors;
wherein each data sector belongs to a memory space subset out of multiple memory space subsets;
wherein the multiple memory space subsets comprise a plurality of logical memory blocks;
writing each data sector into a data block that is allocated to a memory space subset that is associated with the data sector;
wherein the data block belongs to a buffer of the non-volatile memory device;
maintaining a management data structure that comprises location metadata about a location of each data sector in the buffer; and
merging, if a criterion is fulfilled and before the buffer becomes full, data sectors stored at different data blocks and belong to a same set of logical memory blocks into a sequential portion of the non-volatile memory device, wherein the sequential portion differs from the buffer.
10 Assignments
0 Petitions
Accused Products
Abstract
A method of managing a non-volatile memory device, the method comprising: receiving data sectors; writing each data sector into a data block that is allocated to a memory space subset that is associated with the data sector; wherein the data block belongs to a buffer of the non-volatile memory device; maintaining a management data structure that comprises location metadata about a location of each data sector in the buffer; and merging, if a criterion is fulfilled and before the buffer becomes full, data sectors stored at different data blocks and belong to a same set of logical memory blocks into a sequential portion of the non-volatile memory device, wherein the sequential portion differs from the buffer.
15 Citations
20 Claims
-
1. A method of managing a non-volatile memory device, the method comprising:
-
receiving data sectors;
wherein each data sector belongs to a memory space subset out of multiple memory space subsets;
wherein the multiple memory space subsets comprise a plurality of logical memory blocks;writing each data sector into a data block that is allocated to a memory space subset that is associated with the data sector;
wherein the data block belongs to a buffer of the non-volatile memory device;maintaining a management data structure that comprises location metadata about a location of each data sector in the buffer; and merging, if a criterion is fulfilled and before the buffer becomes full, data sectors stored at different data blocks and belong to a same set of logical memory blocks into a sequential portion of the non-volatile memory device, wherein the sequential portion differs from the buffer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer readable medium that stores instructions that once executed by a memory controller cause the memory controller to:
- receive data sectors;
wherein each data sector belongs to a memory space subset out of multiple memory space subsets;
wherein the multiple memory space subsets comprise a plurality of logical memory blocks;
write each data sector into a data block that is allocated to a memory space subset that is associated with the data sector;
wherein the data block belongs to a buffer of the non-volatile memory device;
maintain a management data structure that comprises location metadata about a location of each data sector in the buffer; and
merge, if a criterion is fulfilled and before the buffer becomes full, data sectors stored at different data blocks and belong to a same set of logical memory blocks into a sequential portion of the non-volatile memory device, wherein the sequential portion differs from the buffer.
- receive data sectors;
-
20. A method of managing a non-volatile memory device, the method comprising:
-
receiving data sectors;
wherein each data sector belongs to a memory space subset out of multiple memory space subsets;
wherein the multiple memory space subsets comprise a plurality of memory space fragments;
wherein each memory space fragment comprises logical memory blocks;writing each data sector into a data block that is allocated to a memory space fragment that is associated with the data sector;
wherein the data block belongs to a sub-buffer;
wherein multiple sub-buffers form a buffer of the non-volatile memory device;maintaining a management data structure that comprises location metadata about a location of each data sector in the buffer; and merging, if a criterion is fulfilled and before a certain sub-buffer becomes full, data sectors stored at different data blocks of the certain sub-buffer, the data sectors belong to a same set of logical memory blocks, wherein the merging is done into a sequential portion of the non-volatile memory device, wherein the sequential portion differs from the buffer.
-
Specification