| CPC G06F 11/1004 (2013.01) [G06F 11/1016 (2013.01); G06F 11/1068 (2013.01)] | 20 Claims |

|
1. A computing system for managing data integrity during a write operation, comprising:
a host device comprising a memory controller configured to:
receive a plurality of original data blocks, each original data block having an associated initial Cyclic Redundancy Check (CRC) value; and
segment and recombine the received original data blocks into logic blocks; and
a storage device configured to:
write the logic blocks to non-volatile memory of the storage device in the write operation;
calculate a new logic block (LB) CRC value for each logic block; and
calculate a combined LB CRC value for the logic blocks by combining the LB CRC values, wherein
the memory controller is further configured to:
combine duplicated copies of a given CRC value for each of the original data blocks to calculate an application CRC value for each original data block;
combine the application CRC values together to calculate a combined data CRC value;
compare the combined data CRC value to the combined LB CRC value to determine whether the combined data CRC value matches the combined LB CRC value; and
responsive to determining that the combined data CRC value matches the combined LB CRC value, generate and output a verification response verifying the integrity of the write operation.
|