# US 12,216,936 B2 · Storage device controlling target operation based on collected performance information and operating method thereof

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

- Number: US 12,216,936 B2
- Document ID: US12216936B2
- Status: Granted
- Kind: B2
- Application number: 18/297,551
- Filed: 2023-04-07
- Published: 2024-05-30
- Granted: 2025-02-04
- Earliest claimed: 2022-11-30
- Assignees: SK hynix Inc.
- Applicants: SK hynix Inc.
- Inventors: Jin Woo Kim
- Web page: https://patentgrep.com/patent/US12216936B2

## CPC

- G06F 3/0659: {Command handling arrangements, e.g. command buffers, queues, command scheduling}
- G06F 3/0611: {in relation to response time}
- G06F 3/064: {Management of blocks}
- G06F 3/0673: {Single storage device}
- G06F 3/0679: {Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A storage device may store performance information of the storage device in a target memory area including one or more of a plurality of memory blocks on determination that a set target condition is satisfied. And the storage device may control a target operation based on the stored performance information.

## Claims

### Claim 1

A storage device comprising:
a memory including a plurality of memory blocks; and
a controller configured to:
store performance information of the storage device in a target memory area including one or more of the plurality of memory blocks on determination that a target condition is satisfied; and
control a target operation based on the stored performance information,
wherein the performance information includes a size A of data written, during a reference time period, in a first memory area including one or more first type memory blocks from among the plurality of memory blocks, and a size B of data written, due to a failure to write to the first memory area during the reference time period, in a second memory area including one or more second type memory blocks from among the plurality of memory blocks, and
wherein the first type memory blocks operate at a higher speed than the second type memory blocks.

### Claim 2 (depends on 1)

The storage device according to claim 1,
wherein the target condition is satisfied when a cumulative size of write-requested data from outside of the storage device, after the reference time period, is a multiple of a unit size.

### Claim 3 (depends on 1)

The storage device according to claim 1,
wherein the target operation is an operation of storing write-requested data from outside of the storage device in the memory; and
wherein the controller is configured to increase a size of the first memory area by a reference size when a ratio of B to A is greater than or equal to a threshold ratio.

### Claim 4 (depends on 3)

The storage device according to claim 3,
wherein the controller is configured to decrease the size of the first memory area by the reference size after all data stored in the first memory area is flushed to the second type memory blocks from among the plurality of memory blocks.

### Claim 5 (depends on 1)

The storage device according to claim 1,
wherein the performance information includes a size C of invalid data stored in the memory at a time when a size of a free space included in the memory is changed.

### Claim 6 (depends on 5)

The storage device according to claim 5,
wherein the target operation is a garbage collection operation, and
wherein the controller is configured to:
execute the garbage collection operation when the size of the free space included in the memory is less than a threshold free space size,
increase the threshold free space size when the size C is greater than or equal to a first threshold invalid data size, and
decrease the threshold free space size when the size C is less than a second threshold invalid data size; and
wherein the first threshold invalid data size is greater than the second threshold invalid data size.

### Claim 7 (depends on 1)

The storage device according to claim 1,
wherein the performance information includes a size D of invalidated data among data migrated by a garbage collection operation during the reference time period.

### Claim 8 (depends on 7)

The storage device according to claim 7,
wherein the target operation is a wear leveling operation, and
wherein the controller is configured to further determine whether to execute the wear leveling operation when the size D is greater than or equal to a threshold data size.

### Claim 9 (depends on 1)

The storage device according to claim 1,
wherein the performance information includes a size E of data requested to be written from outside of the storage device during the reference time period and a size F of a free space increased through a garbage collection operation during the reference time period.

### Claim 10 (depends on 9)

The storage device according to claim 9,
wherein the target operation is the garbage collection operation, and
wherein the controller is configured to:
execute the garbage collection operation when a size of the free space included in the memory is less than a threshold free space size,
increase the threshold free space size when the size E is greater than the size F by a threshold difference value or more, and
decrease the threshold free space size when the size F is greater than the size E by a threshold difference value or more.

### Claim 11

A method for operating a storage device, comprising:
determining a target condition is satisfied;
measuring performance information of the storage device on determination that the target condition is satisfied;
storing the performance information in a target memory area including one or more of a plurality of memory blocks in a memory; and
controlling a target operation based on the stored performance information,
wherein the performance information includes a size A of data written, during a reference time period, in a first memory area including one or more first type memory blocks from among the plurality of memory blocks, and a size B of data written, due to a failure to write to the first memory area during the reference time period, in a second memory area including one or more second type memory blocks from among the plurality of memory blocks, and
wherein the first type memory blocks operate at a higher speed than the second type memory blocks.

### Claim 12 (depends on 11)

The method according to claim 11,
wherein the target operation is an operation of storing write-requested data from outside of the storage device in the memory; and
wherein the controlling the target operation increases a size of the first memory area by a reference size when a ratio of B to A is greater than or equal to a threshold ratio.

### Claim 13 (depends on 11)

The method according to claim 11,
wherein the performance information includes a size C of invalid data stored in the memory at a time when a size of a free space included in the memory is changed.

### Claim 14 (depends on 13)

The method according to claim 13,
wherein the target operation is a garbage collection operation, and
wherein the controlling the target operation includes determining a threshold free space size based on the size C; and
executing the garbage collection operation when the size of the free space included in the memory is less than the threshold free space size; and
wherein the determining the threshold free space size based on the size C increases the threshold free space size when the size C is greater than or equal to a first threshold invalid data size, and decreases the threshold free space size when the size C is less than a second threshold invalid data size; and
wherein the first threshold invalid data size is greater than the second threshold invalid data size.

### Claim 15 (depends on 11)

The method according to claim 11,
wherein the performance information includes a size D of invalidated data among data migrated by a garbage collection operation during the reference time period.

### Claim 16 (depends on 15)

The method according to claim 15,
wherein the target operation is a wear leveling operation, and
wherein the controlling the target operation further determines whether to execute the wear leveling operation when the size D is greater than or equal to a threshold data size.

### Claim 17 (depends on 11)

The method according to claim 11,
wherein the performance information includes a size E of data requested to be written from outside of the storage device during the reference time period and a size F of a free space increased through a garbage collection operation during the reference time period.

### Claim 18 (depends on 17)

The method according to claim 17,
wherein the target operation is the garbage collection operation, and
wherein the controlling the target operation includes determining a threshold free space size based on the size E and the size F; and
executing the garbage collection operation when a size of the free space included in the memory is less than the threshold free space size; and
wherein the determining the threshold free space size based on the size E and the size F increases the threshold free space size when the size E is greater than the size F by a threshold difference value or more, and decreases the threshold free space size when the size F is greater than the size E by a threshold difference value or more.
