Method of managing copy operations in flash memories
First Claim
Patent Images
1. A method of managing a memory device, comprising:
- (a) including a main memory in the memory device;
(b) sending to the memory device, by a host of the memory device, a first data chunk;
(c) assigning to said first data chunk a signature;
(d) storing said first data chunk in a first location in said main memory;
(e) copying said first data chunk to a second location in said main memory, thereby producing a copy of said first data chunk; and
(f) assigning to said copy a signature that matches said signature of said first data chunk.
4 Assignments
0 Petitions
Accused Products
Abstract
Upon the arrival at a memory device of one or more data chunks associated with respective logical addresses, each data chunk is assigned a signature, stored in a first location, and copied to a second location. The copy is assigned a signature that matches the signature of its parent data chunk. Before erasing a memory block that includes one or more data chunks, it first is verified that those data chunks have been copied, i.e., that copies of all the data chunks in the block, with matching signatures, exist in the memory device.
-
Citations
24 Claims
-
1. A method of managing a memory device, comprising:
-
(a) including a main memory in the memory device;
(b) sending to the memory device, by a host of the memory device, a first data chunk;
(c) assigning to said first data chunk a signature;
(d) storing said first data chunk in a first location in said main memory;
(e) copying said first data chunk to a second location in said main memory, thereby producing a copy of said first data chunk; and
(f) assigning to said copy a signature that matches said signature of said first data chunk. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A memory device for storing a data chunk sent to the memory device by a host, comprising:
-
(a) a memory; and
(b) a controller operative;
(i) to assign to the data chunk a signature;
(ii) to store the data chunk in a first location in said memory;
(iii) to copy the data chunk to a second location in said memory, thereby producing a copy of the data chunk; and
(iv) to assign to said copy a signature that matches said signature of the data chunk.
-
-
19. A method of managing a memory device that includes a memory, comprising the steps of:
-
(a) successively sending to the memory device, by a host of the memory device, a first data chunk and a second data chunk, both said data chunks being associated with a common logical address;
(b) assigning to each said data chunk a respective signature, wherein said signature of said first data chunk and said signature of said second data chunk together indicate that said second data chunk replaces said first data chunk;
(c) storing said data chunks in respective locations in the memory; and
(d) upon receiving from said host a request to read data associated with said logical address, sending to said host said data chunk whose signature indicates that, of the two data chunks, that data chunk was received second by the memory device.
-
-
20. A memory device for storing a first data chunk and a second data chunk sent to the memory device successively by a host, both data chunks being associated with a common logical address, the memory device comprising:
-
(a) a memory; and
(b) a controller operative;
(i) to assign to each data chunk a respective signature, wherein said signature of the first data chunk and said signature of the second data chunk together indicate that the second data chunk replaces the first data chunk, (ii) to store the data chunks in respective locations in said memory, and (iii) upon receiving from the host a request to read data associated with the logical address, to send to the host the data chunk whose signature indicates that, of the two data chunks, that data chunk was received second by the memory device.
-
-
21. A method of managing a memory device that includes a memory, comprising the steps of:
-
(a) sending to the memory device a sector of data;
(b) storing said sector of data in a first location in the memory using a single write operation; and
(c) copying said sector of data to a second location in the memory using a single write operation;
wherein said storing and said copying are effected in a manner that allows verification that said copying has been effected without reading all of said data from either said location.
-
-
22. A method of managing a memory device that includes a memory, comprising the steps of:
-
(a) sending to the memory device a plurality of sectors of data;
(b) storing said plurality of sectors of data in a first page of the memory using a single write operation; and
(c) copying said plurality of sectors of data to a second page of the memory using a single write operation;
wherein said storing and said copying are effected in a manner that allows verification that said copying has been effected without reading all of said data from either said page.
-
-
23. A memory device comprising:
-
(a) a memory; and
(b) a controller operative;
(i) to store a sector of data in a first location in said memory using a single write operation, and (ii) to copy said sector of data to a second location in said memory using a single write operation;
wherein said storing and said copying are effected in a manner that allows verification that said copying has been effected without reading all of said data from either said location.
-
-
24. A memory device comprising:
-
(a) a memory; and
(b) a controller operative;
(i) to store a plurality of sectors of data in a first page of said memory using a single write operation, and (ii) to copy said plurality of sectors of data to a second page of said memory using a single write operation;
wherein said storing and said copying are effected in a manner that allows verification that said copying has been effected without reading all of said data from either said page.
-
Specification