# US 2019/0171392 A1 · Method of operating storage device capable of reducing write latency

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

- Number: US 2019/0171392 A1
- Document ID: US20190171392A1
- Status: Published application
- Kind: A1
- Application number: 16/020,581
- Filed: 2018-06-27
- Published: 2019-06-06
- Earliest claimed: 2017-12-05
- Assignees: Samsung Electronics Co., Ltd.
- Applicants: Samsung Electronics Co., Ltd.
- Inventors: Jin-woo KIM; Woo-tae CHANG; Wan-soo CHOI
- Web page: https://patentgrep.com/patent/US20190171392A1

## CPC

- G06F 3/0659: {Command handling arrangements, e.g. command buffers, queues, command scheduling}
- G06F 3/0611: {in relation to response time}
- G06F 3/0673: {Single storage device}
- G06F 3/0679: {Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]}
- G06F 13/1673: {using buffers}
- G06F 13/28: using burst mode transfer, e.g. direct memory access {DMA}, cycle steal (G06F13/32 takes precedence)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method of operating a storage device for reducing write latency. The storage device determines whether to support write data support (WDS), fetches a write command selectively including an instant write flag when WDS is supported, updates an address mapping table regarding a controller memory buffer (CMB) without an host direct memory access (HDMA) operation in response to the fetched write command, and generates write command completion message corresponding to the write command.

## Claims

### Claim 1

A method of operating a storage device, the method comprising:
receiving a write command issued by the host;
updating an address mapping table regarding a controller memory buffer (CMB) of the storage device in response to the write command;
generating a write command completion message corresponding to the write command, performed by the CMB, without performing a host direct memory access (HDMA) operation; and
transmitting the write command completion message to the host.

### Claim 2 (depends on 1)

The method of claim 1, wherein the write command issued by the host comprises an instant write flag.

### Claim 3 (depends on 2)

The method of claim 2, wherein the instant write flag indicates that data of a first CMB address targeted by the host is stored in a first device address in the CMB.

### Claim 4 (depends on 3)

The method of claim 3, wherein the updating comprises:
allocating a second device address of a free buffer area in the CMB; and
updating the address mapping table in which the first CMB address points to the second device address.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
receiving a threshold value of a free buffer area in the CMB as a write buffer threshold from the host.

### Claim 6 (depends on 5)

The method of claim 5, further comprising:
receiving a set features command (CMD) including the write buffer threshold from the host; and
setting the free buffer area in the CMB as the write buffer threshold.

### Claim 7 (depends on 5)

The method of claim 5, further comprising:
notifying the host that the free buffer area in the CMB is below the write buffer threshold.

### Claim 8 (depends on 7)

The method of claim 7, wherein the notifying comprises generating asynchronous command completion message including a Below Write Buffer Threshold in response to an asynchronous event request CMD issued by the host.

### Claim 9

A method of operating a storage device, the method comprising:
determining whether to support write data support (WDS) of a write command provided by a host;
in response to determining that WDS is supported, generating a write command completion message, performed by a controller memory buffer (CMB) of the storage device, corresponding to the write command issued by the host without performing a host direct memory access (HDMA) operation and in response to determining that WDS is not supported, generating a write command completion message after performing the HDMA operation in the CMB in response to the write command issued by the host; and
transmitting the write command completion message to the host.

### Claim 10 (depends on 9)

The method of claim 9, wherein the generating the write command completion message, performed by the controller memory buffer (CMB) of the storage device, corresponding to the write command issued by the host without performing the HDMA operation comprises:
updating an address mapping table regarding the CMB by using a free buffer area in the CMB.

### Claim 11 (depends on 9)

The method of claim 9, further comprising:
receiving a threshold value of a free buffer area in the CMB as a write buffer threshold from the host.

### Claim 12 (depends on 11)

The method of claim 11, further comprising:
setting the free buffer area in the CMB as the write buffer threshold.

### Claim 13 (depends on 9)

The method of claim 9, further comprising:
notifying the host that the free buffer area in the CMB is below the write buffer threshold.

### Claim 14 (depends on 9)

The method of claim 9, wherein the HDMA operation comprises:
fetching the write command from the host;
storing data to be written on the storage device from the host, in the CMB; and
copying the data stored in the CMB to a write buffer.

### Claim 15

A method of issuing a command, performed by a host, the method comprising:
issuing a write command including write data support (WDS) to a storage device; and
receiving a write command completion corresponding to the write command,
wherein the WDS is a storage operation to store data based on manipulation of an address of the data in a controller memory buffer (CMB) of the storage device.

### Claim 16 (depends on 15)

The method of claim 15, wherein the write command comprises an instant write flag.

### Claim 17 (depends on 15)

The method of claim 15, further comprising:
issuing to the storage device a synchronous command having a write buffer threshold of a free buffer area, to update an address mapping table regarding a controller memory buffer (CMB) by using the free buffer area in the CMB in response to the write command.

### Claim 18 (depends on 17)

The method of claim 17, wherein the synchronous command is a set features command.

### Claim 19 (depends on 17)

The method of claim 17, further comprising:
issuing an asynchronous command to the storage device; and
receiving an asynchronous command completion message corresponding to the asynchronous command including a Below Write Buffer Threshold.

### Claim 20 (depends on 19)

The method of claim 19, wherein the asynchronous command is an asynchronous event request command.

### Claim at position 21

21-29. (canceled)
