Double writing map table entries in a data storage system to guard against silent corruption
Abstract
A method for writing data in a data storage device includes: writing data to a physical memory location in a non-volatile memory; writing, for a first time, to a location in a volatile memory corresponding to a logical address of the data, a physical address of the physical memory location of the non-volatile memory containing the data; and writing, for a second time, to the location in the volatile memory corresponding to the logical address of the data, the address of the physical memory location of the non-volatile memory containing the data. The physical address of the physical memory location is written with appended error detection code information, and the error detection code information is determined based on the logical address of the data.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method for writing data in a data storage device using a control unit, the method comprising:
writing, by the control unit, data to a physical memory location in a non-volatile memory; sending, by the control unit, a first update request corresponding to the data to write a physical address of the physical memory location to a location in a table corresponding to a logical address of the data; and sending, by the control unit, a second update request corresponding to the data to write the physical address of the physical memory location to the location in the table corresponding to the logical address of the data.
2 . The method of claim 1 , wherein sending the second update request reduces a probability of writing the physical address of the physical memory location to a wrong location in the table.
3 . The method of claim 1 , wherein the table resides in a volatile memory.
4 . The method of claim 1 , wherein the table is arranged with memory locations assigned according to a consecutive order.
5 . The method of claim 1 , wherein the first update request and the second update request cause error detection code information to be appended to the physical address written to the table.
6 . The method of claim 5 , wherein the error detection code information is determined based on the logical address of the data.
7 . The method of claim 5 , further comprising detecting incorrect information at a particular location in the table by detecting a mismatch between the error detection code information stored at the particular location and predetermined error detection code information associated with the particular location at the table.
8 . The method of claim 1 , further comprising reading the data from another physical address of the non-volatile memory prior to writing the data to the physical memory location.
9 . The method of claim 8 , further comprising modifying the data read from the other physical address of the non-volatile memory prior to writing the data to the physical memory location.
10 . The method of claim 1 , wherein the non-volatile memory comprises NAND flash memory devices.
11 . The method of claim 3 , wherein the volatile memory is dynamic random access memory (DRAM).
12 . A data storage device, comprising:
a non-volatile memory; a control unit configured to:
write data to a physical memory location in the non-volatile memory;
send a first update request corresponding to the data to write a physical address of the physical memory location to a location in a table corresponding to a logical address of the data; and
send a second update request corresponding to the data to write the physical address of the physical memory location to the location in the table corresponding to the logical address of the data.
13 . The data storage device of claim 12 , wherein the second update request reduces a probability of writing the physical address of the physical memory location to a wrong location in the table.
14 . The data storage device of claim 12 , further comprising a volatile memory configured to maintain the table.
15 . The data storage device of claim 12 , wherein the first update request and the second update request cause error detection code information to be appended to the physical address written to the table.
16 . The data storage device of claim 15 , wherein the error detection code information is determined based on the logical address of the data.
17 . The data storage device of claim 15 , wherein the control unit is configured to detect incorrect information stored at a particular location in the table by detecting a mismatch between the error detection code information stored at the particular location and predetermined error detection code information associated with the particular location at the table.
18 . The data storage device of claim 12 , wherein the control unit is configured to read the data from another physical address of the non-volatile memory prior to writing the data to the physical memory location.
19 . The data storage device of claim 18 , wherein the control unit is configured to modify the data read from the other physical address of the non-volatile memory prior to writing the data to the physical memory location.
20 . The data storage device of claim 12 , wherein the non-volatile memory comprises NAND flash memory devices.Join the waitlist — get patent alerts
Track US2016313936A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.