# US 2013/0159634 A1 · Systems and Methods for Handling Out of Order Reporting in a Storage Device

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

- Number: US 2013/0159634 A1
- Document ID: US20130159634A1
- Status: Published application
- Kind: A1
- Application number: 13/326,367
- Filed: 2011-12-15
- Published: 2013-06-20
- Earliest claimed: 2011-12-15
- Assignees: LSI Corporation
- Inventors: Shaohua Yang; Yang Han; Fan Zhang; Xuebin Wu
- Web page: https://patentgrep.com/patent/US20130159634A1

## CPC

- G06F 7/24: Sorting, i.e. extracting data from one or more carriers, rearranging the data in numerical or other ordered sequence, and rerecording the sorted data on the original carrier or on a different carrier or set of carriers {sorting methods in general}(G06F7/36 takes precedence)
- G06F 3/0604: {Improving or facilitating administration, e.g. storage management}
- G06F 3/0611: {in relation to response time}
- G06F 3/0659: {Command handling arrangements, e.g. command buffers, queues, command scheduling}
- G06F 3/0674: {Disk device}
- G11B 20/10: Digital recording or reproducing
- G11B 20/12: Formatting, e.g. arrangement of data block or words on the record carriers {(within interface between computers and data recorders G06F3/06)}
- G11B 20/18: Error detection or correction; Testing {, e.g. of drop-outs}
- 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)

## Abstract

Various embodiments of the present invention provide systems and methods for handling out of order reporting in a storage device.

## Claims

### Claim 1

A data storage system, the system comprising:
a host operable to request an ordered data set, wherein the ordered data set includes: a first output and a second output, and wherein the first output precedes the second output in the ordered data set;
a storage medium maintaining the ordered data set;
a data processing circuit operable to access the ordered data set from the storage medium, and to process a first processing input corresponding to the first output and a second processing input corresponding to the second output to yield the first output and the second output, wherein the second output is available before the first output; and
wherein the host is further operable to receive the second output before the first output.

### Claim 2 (depends on 1)

The data storage system of claim 1, wherein the host is operable to indicate a valid status corresponding to the second output, and to indicate an invalid status of the first output.

### Claim 3 (depends on 1)

The data storage system of claim 1, wherein, upon receiving the second output, the host is operable to indicate a valid status corresponding to the second output, and to indicate an invalid status of the first output.

### Claim 4 (depends on 3)

The data storage system of claim 3, wherein, upon receiving the first output, the host is operable to modify the indicated invalid status of the first output to indicate a valid status of the first output.

### Claim 5 (depends on 1)

The data storage system of claim 1, wherein the data processing circuit includes:
a data detector circuit operable to apply a data detection algorithm to the first processing input to yield a first detected output, and to apply the data detection algorithm to the second processing input to yield a second detected output;
a data decode circuit operable to apply a data decode algorithm to a first decoder input derived from the first detected output to yield a first decoded output, and to apply the data decode algorithm to a second decoder input derived from the second detected output to yield a second decoded output;
wherein the first output is derived from the first decoded output, and the second output is derived from the second decoded output.

### Claim 6 (depends on 5)

The data processing system of claim 5, wherein the data decode algorithm is a low density parity check algorithm.

### Claim 7 (depends on 5)

The data processing system of claim 5, wherein the data detection algorithm is selected from a group consisting of: a maximum a posteriori data detection algorithm, and a Viterbi data detection algorithm.

### Claim 8 (depends on 1)

The data storage system of claim 1, wherein the data processing circuit is implemented as an integrated circuit.

### Claim 9 (depends on 1)

The data storage system of claim 1, wherein the data processing circuit is operable to report the second output to the host before reporting the first output to the host based at least in part on a retry condition being met.

### Claim 10 (depends on 9)

The data storage system of claim 9, wherein the retry condition is met when a timeout condition occurs.

### Claim 11

A storage control system, wherein the system comprises:
a host circuit operable to:
request an ordered data set from a storage device, wherein the ordered data set includes: a first output and a second output, and wherein the first output precedes the second output in the ordered data set;
receive the second output from the storage device prior to receiving the first output;
upon receiving the second output, indicate a valid status of the second output and an invalid status of the first output; and
upon receiving the first output, modify the invalid status of the first output to indicate a valid status of the first output.

### Claim 12 (depends on 11)

The storage control system of claim 11, wherein the system is implemented as part of a data storage device.

### Claim 13 (depends on 11)

The storage control system of claim 11, wherein the system is implemented as an integrated circuit.

### Claim 14 (depends on 11)

The storage control system of claim 11, wherein the storage device comprises:
a storage medium maintaining the ordered data set;
a data processing circuit operable to access the ordered data set from the storage medium, and to process a first processing input corresponding to the first output and a second processing input corresponding to the second output to yield the first output and the second output, wherein the second output is available before the first output.

### Claim 15 (depends on 14)

The storage control system of claim 14, wherein the data processing circuit includes:
a data detector circuit operable to apply a data detection algorithm to the first processing input to yield a first detected output, and to apply the data detection algorithm to the second processing input to yield a second detected output;
a data decode circuit operable to apply a data decode algorithm to a first decoder input derived from the first detected output to yield a first decoded output, and to apply the data decode algorithm to a second decoder input derived from the second detected output to yield a second decoded output;
wherein the first output is derived from the first decoded output, and the second output is derived from the second decoded output.

### Claim 16 (depends on 15)

The storage control system of claim 15, wherein the data decode algorithm is a low density parity check algorithm.

### Claim 17 (depends on 15)

The storage control system of claim 15, wherein the data detection algorithm is selected from a group consisting of: a maximum a posteriori data detection algorithm, and a Viterbi data detection algorithm.

### Claim 18

A method for data processing in a storage device, the method comprising:
providing a request for an ordered data set, wherein the ordered data set includes:
a first output corresponding to a first decoder input, and
a second output corresponding to a second decoder input, wherein the first output precedes the second output in the ordered data set;
receiving the second output from the storage device prior to receiving the first output;
upon receiving the second output, indicating a valid status of the second output and an invalid status of the first output; and
upon receiving the first output, modifying the invalid status of the first output to indicate a valid status of the first output.

### Claim 19 (depends on 18)

The method of claim 18, wherein the method further comprises:
accessing an encoded data set from a storage medium, wherein the encoded data set corresponds to the ordered data set;
processing the encoded data set to yield the first output and the second output.

### Claim 20 (depends on 19)

The method of claim 19, wherein processing the encoded data set includes applying a data detection algorithm to the encoded data set to yield a first detected output and a second detected output;
applying a data decode algorithm to a first decoder input derived from the first detected output to yield a first decoded output;
applying the data decode algorithm to a second decoder input derived from the second detected output to yield a second decoded output; and
wherein the first output is derived from the first decoded output, and the second output is derived from the second decoded output.
