# US 10,461,775 B2 · Compression aware SSD

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

- Number: US 10,461,775 B2
- Document ID: US10461775B2
- Status: Granted
- Kind: B2
- Application number: 16/111,112
- Filed: 2018-08-23
- Published: 2019-01-03
- Granted: 2019-10-29
- Earliest claimed: 2017-06-20
- Assignees: Samsung Electronics Co., Ltd.
- Applicants: Samsung Electronics Co., Ltd.
- Inventors: Yang Seok Ki; Yongsuk Lee; Jason Martineau
- Web page: https://patentgrep.com/patent/US10461775B2

## CPC

- H03M 7/3088: {employing the use of a dictionary, e.g. LZ78}
- G11B 20/00007: {Time or data compression or expansion (audio compression based on psychoacoustics G10L19/00; data processing for reproducing audio data at different playback speeds G10L21/04; video compression H04N19/00; data compression per se H03M7/30)}
- H03M 7/30: Compression (speech analysis-synthesis for redundancy reduction G10L19/00; for image communication H04N); Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M 7/48: alternating with other codes during the code conversion process, e.g. run-length coding being performed only as long as sufficientlylong runs of digits of the same kind are present
- H03M 7/6064: {Selection of Compressor}
- G11B 20/18: Error detection or correction; Testing {, e.g. of drop-outs}
- G11B 2020/00079: {the compression ratio or quality level being adapted to circumstances, e.g. to the available recording space}
- H03M 7/3097: {Grammar codes}
- 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)
- 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

Embodiments of the present invention include a compression system including one or more compressibility inputs; a compression predictor configured to predict the compressibility of data based on the one or more compressibility inputs; a compressor configured to compress the data; and one or more compression inputs. At least one of the compression predictor or the compressor is configured to determine how to compress the data based on the one or more compression inputs. The one or more compressibility inputs comprise at least one of an object extension dictionary, an object signature dictionary, and an entropy estimation algorithm library. The one or more compression inputs comprise at least one of a quality of service profile, a device performance profile and a compression algorithm performance chart.

## Claims

### Claim 1

A compression system on a storage drive comprising:
one or more compressibility inputs;
a compression predictor configured to predict the compressibility of data based on the one or more compressibility inputs;
a compressor configured to compress the data;
one or more compression inputs,
wherein at least one of the compression predictor or the compressor is configured to determine how to compress the data based on the one or more compression inputs.

### Claim 2 (depends on 1)

The compression system of claim 1, wherein the one or more compressibility inputs comprise at least one of an object extension dictionary, an object signature dictionary, and an entropy estimation algorithm library.

### Claim 3 (depends on 1)

The compression system of claim 1, wherein the one or more compression inputs comprise at least one of a quality of service profile, a device performance profile and a compression algorithm performance database.

### Claim 4 (depends on 1)

The compression system of claim 1, wherein the one or more compression inputs comprises at least a quality of service profile.

### Claim 5 (depends on 2)

The compression system of claim 2, wherein the compression predictor is configured to predict the compressibility of the data based on two or more compressibility inputs, and wherein the two or more compressibility inputs comprise at least two of the object extension dictionary, the object signature dictionary, the entropy estimation algorithm library, a quality of service profile and a device performance profile.

### Claim 6 (depends on 3)

The compression system of claim 3, wherein the compressor is configured to determine how to compress the data based on two or more compression inputs, and wherein the two or more compression inputs comprise at least two of the quality of service profile, the device performance profile, and a compression algorithm performance chart.

### Claim 7

A method of compressing data on a storage drive, the method comprising:
predicting the compressibility of data on the drive based on one or more compressibility inputs;
determining how to compress the data based on one or more compression inputs; and
compressing the data based on the determination of how to compress the data.

### Claim 8 (depends on 7)

The method of claim 7, wherein the drive is a key value storage drive having a key and a value.

### Claim 9 (depends on 8)

The method of claim 8, wherein the one or more compressibility inputs comprise at least one of an object extension dictionary, an object signature dictionary, and an entropy estimation algorithm library.

### Claim 10 (depends on 8)

The method of claim 8, wherein the one or more compressibility inputs comprises at least an object signature dictionary.

### Claim 11 (depends on 9)

The method of claim 9, wherein predicting the compressibility of the data further comprises searching the key for a file extension or a file signature.

### Claim 12 (depends on 11)

The method of claim 11, wherein predicting the compressibility of the data further comprises:
locating the file extension or the file signature; and
analyzing and comparing the file extension or the file signature to information provided by the object extension dictionary or the object signature dictionary, respectively.

### Claim 13 (depends on 7)

The method of claim 7, further comprising storing information regarding compression of the data in a hidden key.

### Claim 14 (depends on 13)

The method of claim 13, further comprising storing commands to initiate recompression of the data in the hidden key.

### Claim 15

A storage drive comprising:
a compression system on the drive comprising:
one or more compressibility inputs;
a compression predictor configured to predict the compressibility of data based on the one or more compressibility inputs;
a compressor configured to compress the data;
one or more compression inputs,
wherein at least one of the compression predictor or the compressor is configured to determine how to compress the data based on the one or more compression inputs.

### Claim 16 (depends on 15)

The storage drive of claim 15, wherein the one or more compressibility inputs comprise at least one of an object extension dictionary, an object signature dictionary, and an entropy estimation algorithm library.

### Claim 17 (depends on 15)

The storage drive of claim 15, wherein the one or more compressibility inputs comprises at least the object signature dictionary.

### Claim 18 (depends on 15)

The storage drive of claim 15, wherein the drive is a key value storage drive.

### Claim 19 (depends on 16)

The storage drive of claim 16, wherein the compression predictor is configured to predict the compressibility of the data based on two or more compressibility inputs, wherein the two or more compressibility inputs comprise at least two of the object extension dictionary, the object signature dictionary, the entropy estimation algorithm library, a quality of service profile and a device performance profile.

### Claim 20 (depends on 18)

The storage drive of claim 18, wherein the one or more compression inputs comprise at least one of a quality of service profile, a device performance profile, and a compression algorithm performance chart.
