# US 10,372,356 B2 · Enhanced data protection in data storage drives

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,372,356 B2
- Document ID: US10372356B2
- Status: Granted
- Kind: B2
- Application number: 15/925,152
- Filed: 2018-03-19
- Published: 2018-07-26
- Granted: 2019-08-06
- Earliest claimed: 2015-09-23
- Assignees: Western Digital Technologies, Inc.
- Applicants: Western Digital Technologies, Inc.
- Inventors: Martin Hassner; Satoshi Yamamoto
- Web page: https://patentgrep.com/patent/US10372356B2

## CPC

- G06F 3/0619: {in relation to data integrity, e.g. data losses, bit errors}
- G06F 3/0653: {Monitoring storage devices or systems}
- G06F 3/0659: {Command handling arrangements, e.g. command buffers, queues, command scheduling}
- G06F 3/0676: {Magnetic disk device}
- G06F 11/0727: {in a storage system, e.g. in a DASD or network based storage system (drivers for digital recording or reproducing units G06F3/06; circuits for error detection or correction within digital recording or reproducing units G11B20/18; for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS], H04L67/1097)}
- G06F 11/076: {by exceeding a count or rate limit, e.g. word- or bit count limit}
- G06F 11/0793: {Remedial or corrective actions (recovery from an exception in an instruction pipeline G06F9/3861; by retry G06F11/1402; for recovering from a failure of a protocol instance or entity H04L69/40)}
- G06F 11/1076: {Parity data used in redundant arrays of independent storages, e.g. in RAID systems}
- G11B 20/10009: {Improvement or modification of read or write signals}
- G11B 20/1217: {on discs}
- G11B 20/1833: {by adding special lists or symbols to the coded information (G11B20/1806, G11B20/1866 take precedence)}
- H03M 13/35: Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
- G11B 5/59627: {Aligning for runout, eccentricity or offset compensation (G11B5/5534, G11B5/59677, G11B5/59688 take precedence)}
- G11B 2020/1238: {track, i.e. the entire a spirally or concentrically arranged path on which the recording marks are located}
- G11B 2020/1292: {Enhancement of the total storage capacity}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G11B: INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER (recording measured values in a way that does not require playback through a transducer G01D9/00; recording or playback apparatus using mechanically marked tape, e.g. punched paper tape, or using unit records, e.g. punched or magnetically marked cards G06K; transferring data from one type of record carrier to another G06K1/18; circuits for coupling output of reproducer to radio receiver H04B1/20; gramophone pick-ups or like acoustic electromechanical transducers or circuits therefor H04R)
- H03M: CODING; DECODING; CODE CONVERSION IN GENERAL (using fluidic means F15C4/00; optical analogue/digital converters G02F7/00; coding, decoding or code conversion, specially adapted for particular applications, see the relevant subclasses, e.g. G01D, G01R, G06F, G06T, G09G, G10L, G11B, G11C, H04B, H04L, H04M, H04N; ciphering or deciphering for cryptography or other purposes involving the need for secrecy G09C)

## Abstract

A data storage device comprises a host interface and a storage control system coupled to the host interface. The storage control system is configured to perform a write process to write data to storage in response to one or more write operations received over the host interface from a host, determine a quality of written data produced by the write process; and in response to when the quality of the written data fails to satisfy one or more quality criteria, obtain data parity information to compensate for the quality of the written data and write the data parity information to storage.

## Claims

### Claim 1

A data storage device, comprising:
a host interface; and
a storage control system coupled to the host interface and configured to:
perform a write process to write data to storage in response to one or more write operations received over the host interface from a host;
determine a quality of written data produced by the write process; and
in response to the quality of the written data failing to satisfy one or more criteria: obtain data parity information from the host to compensate for the quality of the written data; and
write the data parity information to storage in association with the written data.

### Claim 2 (depends on 1)

The data storage device of claim 1 wherein the storage control system is further configured to obtain the data parity information from a data protection node on the host.

### Claim 3 (depends on 2)

The data storage device of claim 2 wherein the storage control system is further configured to indicate the quality of the written data when obtaining the data parity information from the data protection node.

### Claim 4 (depends on 1)

The data storage device of claim 1 wherein, to determine the quality of the written data produced by the write process, the storage control system is configured to detect one or more metrics associated with the write process.

### Claim 5 (depends on 4)

The data storage device of claim 4 wherein the one or more metrics comprise: a position error signal (PES) detected during the write process; and a quantity of parity sectors employed during the write process.

### Claim 6 (depends on 1)

The data storage device of claim 1 wherein the storage control system is further configured to skip write verification after writing the data.

### Claim 7 (depends on 1)

The data storage device of claim 1 wherein the storage comprises one or more of a rotating hard disk and solid-state media.

### Claim 8

A computing system comprising:
a host sub-system; and
a data storage device coupled with the host sub-system via a host interface;
wherein the data storage device is configured to at least:
perform a write process to write data in response to one or more write operations received over the host interface from the host sub-system;
determine a quality of written data produced by the write process; and
in response to the quality of the written data failing to satisfy one or more criteria: obtain data parity information from the host sub-system to compensate for the quality of the written data; and
write the data parity information to storage in association with the written data.

### Claim 9 (depends on 8)

The computing system of claim 8 wherein the data storage device is further configured to obtain the data parity information from a data protection node on the host sub-system.

### Claim 10 (depends on 9)

The computing system of claim 9 wherein the data storage device is further configured to indicate the quality of the written data when obtaining the data parity information from the data protection node.

### Claim 11 (depends on 8)

The computing system of claim 8 wherein, to determine the quality of the written data produced by the write process, the data storage device is configured to detect one or more metrics associated with the write process.

### Claim 12 (depends on 11)

The computing system of claim 11 wherein the one or more metrics comprise: a position error signal (PES) detected during the write process; and a quantity of parity sectors employed during the write process.

### Claim 13 (depends on 12)

The computing system of claim 12 wherein the data storage device is further configured to skip write verification after writing the data.

### Claim 14 (depends on 8)

The computing system of claim 8 wherein the data storage device comprises one or more of a hard disk drive (HDD), a solid-state drive (SSD), and a hybrid drive.

### Claim 15

A method of operating a data storage device, the method comprising:
performing a write process to write data to storage in response to one or more write commands received over a host interface from a host;
determining a quality of written data produced by the write process; and
in response to the quality of the written data failing to satisfy one or more quality criteria: obtaining data parity information from the host to compensate for the quality of the written data; and
writing the data parity information to storage in association with the written data.

### Claim 16 (depends on 15)

The method of claim 15 wherein obtaining the data parity information from the host comprises obtaining the data parity information from a data protection node on the host.

### Claim 17 (depends on 16)

The method of claim 16 further comprising indicating the quality of the written data when obtaining the data parity information from the data protection node.

### Claim 18 (depends on 15)

The method of claim 15 further comprising detecting one or more metrics associated with the write process, wherein the one or more metrics comprise: a position error signal (PES) detected during the write process; and a quantity of parity sectors employed during the write process.

### Claim 19 (depends on 15)

The method of claim 15 further comprising skipping write verification after writing the data.

### Claim 20

A data storage device comprising:
a means for performing a write process to write data in response to one or more write commands received over a host interface from a host;
a means for determining a quality of written data produced the write process;
a means for determining whether the quality of the written data fails to satisfy one or more criteria;
a means for obtaining data parity information from the host to compensate for the quality of the written data in response to the quality of the written data failing to satisfy the one or more criteria; and
a means for writing the data parity information to storage in association with the written data.
