# US 9,436,550 B2 · Systems and methods for internal disk drive data compression

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

- Number: US 9,436,550 B2
- Document ID: US9436550B2
- Status: Granted
- Kind: B2
- Application number: 14/082,261
- Filed: 2013-11-18
- Published: 2015-04-30
- Granted: 2016-09-06
- Earliest claimed: 2013-10-31
- Assignees: Avago Technologies General IP (Singapore) Pte. Ltd.
- Applicants: LSI Corporation
- Inventors: Shaohua Yang; Ebad Ahmed
- Web page: https://patentgrep.com/patent/US9436550B2

## CPC

- G06F 11/108: {Parity data distribution in semiconductor storages, e.g. in SSD}
- G06F 11/1076: {Parity data used in redundant arrays of independent storages, e.g. in RAID systems}
- G06F 2211/1009: Cache, i.e. caches used in RAID system with parity
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

The present invention is related to systems and methods for data storage compression. As an example, a system is discussed that includes a semiconductor device having a host interface, a compression circuit operable to compress a write data set received via the host interface, and a write channel circuit operable to apply an encoding algorithm to the compressed data set to yield an encoded data set.

## Claims

### Claim 1

A method for storing data in a hard disk drive, the method comprising:
providing a magnetic storage medium;
receiving a received write data set;
storing the received write data set to the magnetic storage medium as a stored write data set;
determining that the magnetic storage medium is offline;
when the storage medium is offline, accessing the stored write data set from the magnetic storage medium as an accessed write data set;
applying a compression algorithm to the accessed write data set to yield a compressed data set;
encoding the compressed data set in accordance with an encoding algorithm to yield an encoded data set; and
storing the encoded data set to the magnetic storage medium.

### Claim 2 (depends on 1)

The method of claim 1, wherein the magnetic storage medium is a disk platter of a hard disk drive.

### Claim 3 (depends on 1)

The method of claim 1, wherein the method further comprises:
receiving a write command from a host device, wherein the write command includes the write data set.

### Claim 4 (depends on 3)

The method of claim 3, wherein the host device is a computer.

### Claim 5 (depends on 1)

The method of claim 1, wherein the encoding algorithm is a low density parity check encoding algorithm.

### Claim 6

A system, the system comprising:
a host interface circuit configured to receive a write command from a host device, wherein the write command includes a write data set;
a write circuit configured to write the write data set in an uncompressed form as an uncompressed data set to a disk platter;
a read circuit configured to:
determine that the disk platter is offline; and
read the uncompressed data set from the disk platter when the disk platter is offline;
a compression circuit configured to compress the uncompressed data to yield a compressed data set;
an encoding circuit configured to apply an encoding algorithm to the compressed data set to yield an encoded data set; and
wherein the write circuit is further configured to write the encoded data set to the disk platter.

### Claim 7 (depends on 6)

The system of claim 6, wherein the system is implemented on a single semiconductor device, and wherein the compression circuit is configured to compress the write data set prior to encoding by the semiconductor device to yield the compressed data set.

### Claim 8 (depends on 6)

The system of claim 6, wherein the system further comprises:
the disk platter.

### Claim 9 (depends on 6)

The system of claim 6, wherein the encoding circuit is further configured to encode the write data set to yield the uncompressed data set.

### Claim 10 (depends on 9)

The system of claim 9, the system further comprising:
a decoding circuit configured to decode the uncompressed data set received from the read circuit prior to compression by the compression circuit.

### Claim 11 (depends on 1)

The method of claim 1, wherein storing the received write data set to the magnetic storage medium as the stored write data set includes encoding the stored write data set prior to writing to the magnetic storage medium, and wherein accessing the stored write data set from the magnetic storage medium as the accessed write data set includes decoding data from the magnetic storage medium to yield the accessed write data set.

### Claim 12

A storage device, the storage device comprising:
a magnetic storage medium;
a semiconductor device including:
a host interface circuit configured to receive a write command from a host device, wherein the write command includes a write data set;
a write circuit configured to write the write data set in an uncompressed form as an uncompressed data set to the magnetic storage medium;
a read circuit configured to:
determine that the magnetic storage medium is offline; and
read the uncompressed data set from the magnetic storage medium when the magnetic storage medium is offline;
a compression circuit configured to compress the uncompressed data set to yield a compressed data set;
an encoding circuit configured to apply an encoding algorithm to the compressed data set to yield an encoded data set; and
wherein the write circuit is further configured to write the encoded data set to the magnetic storage medium.

### Claim 13 (depends on 12)

The storage device of claim 12, wherein the magnetic storage medium is a disk platter.

### Claim 14 (depends on 12)

The storage device of claim 12, wherein the encoding circuit is further configured to encode the write data set to yield the uncompressed data set.

### Claim 15 (depends on 6)

The system of claim 6, wherein the encoding algorithm is a low density parity check encoding algorithm.

### Claim 16 (depends on 6)

The system of claim 6, wherein the system further comprises the host device.

### Claim 17 (depends on 16)

The system of claim 16, wherein the host device is a computer.

### Claim 18 (depends on 6)

The system of claim 6, wherein the host interface circuit is further configured to receive a read command from the host device.
