Techniques for non-blocking control information and data synchronization by a data storage device
First Claim
1. An apparatus comprising:
- a non-volatile memory; and
a controller coupled to the non-volatile memory, the controller including;
an interface configured to send control information to a host device, the control information associated with first parity information; and
a circuit configured to determine second parity information associated with the control information,wherein the controller is configured to terminate an operation associated with the control information in response to the first parity information differing from the second parity information, andwherein the controller further includes a dual layer flash translation layer (FTL) having a first control information layer and a second control information layer, and wherein a first operation to store the control information to the non-volatile memory and a second operation to store mapping information to the controller during the first operation are non-blocking operations enabled by the first control information layer and the second control information layer.
4 Assignments
0 Petitions
Accused Products
Abstract
An apparatus includes a non-volatile memory and a controller coupled to the non-volatile memory. The controller includes an interface configured to send control information to a host device. The control information is associated with first parity information. The controller further includes a circuit configured to determine second parity information associated with the control information. The controller is configured to terminate and optionally rollback an operation associated with the control information in response to the first parity information differing from the second parity information. The terminated optionally rolled-back operation associated with the control information may be a non-blocking control sync operation.
40 Citations
18 Claims
-
1. An apparatus comprising:
-
a non-volatile memory; and a controller coupled to the non-volatile memory, the controller including; an interface configured to send control information to a host device, the control information associated with first parity information; and a circuit configured to determine second parity information associated with the control information, wherein the controller is configured to terminate an operation associated with the control information in response to the first parity information differing from the second parity information, and wherein the controller further includes a dual layer flash translation layer (FTL) having a first control information layer and a second control information layer, and wherein a first operation to store the control information to the non-volatile memory and a second operation to store mapping information to the controller during the first operation are non-blocking operations enabled by the first control information layer and the second control information layer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method of operation of a data storage device, the method comprising:
-
sending data from a controller of a data storage device to a memory of a host device; determining first parity information associated with the data before the data is sent to the memory of the host device; after the data is sent to the memory of the host device and in response to initiating an operation associated with the data, determining second parity information associated with the data; and in response to the first parity information differing from the second parity information, terminating the operation, wherein the data includes control information, and wherein the operation includes a non-blocking control sync operation to store the control information to a non-volatile memory while allowing updating of the control information during the storing of the control information. - View Dependent Claims (11, 12, 13)
-
-
14. An apparatus comprising:
-
means for sending data to a memory of a host device; means for determining first parity information based on the data before the data is sent to the memory of the host device, and for determining, after the data is sent to the memory of the host device and in response to initiating an operation associated with the data, second parity information associated with the data; and means for comparing the first parity information to the second parity information to enable termination of the operation in response to the first parity information differing from the second parity information, wherein the data includes control information, and wherein the operation includes a non-blocking control sync operation to store the control information to a non-volatile memory while allowing updating of the control information during the storing of the control information. - View Dependent Claims (15)
-
-
16. A method of operation of a data storage device, the method comprising:
-
performing a first operation to store control information to a non-volatile memory of a data storage device; performing a second operation to store data to a controller of the data storage device during the first operation, the data associated with at least a first logical block address (LBA); and in response to determining that the first LBA is included in a range of LBAs associated with the first operation, selectively updating a first portion of the control information at the non-volatile memory, wherein the first portion of the control information is updated independently of a second portion of the control information, wherein the first portion is associated with a first layer specified by a flash translation layer (FTL) of the data storage device, and wherein the second portion is associated with a second layer specified by the FTL. - View Dependent Claims (17, 18)
-
Specification