# US 8,572,310 B2 · Invalidating storage area of non-volatile storage medium based on metadata

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

- Number: US 8,572,310 B2
- Document ID: US8572310B2
- Status: Granted
- Kind: B2
- Application number: 12/955,207
- Filed: 2010-11-29
- Published: 2011-03-24
- Granted: 2013-10-29
- Earliest claimed: 2007-11-06
- Assignees: Samsung Electronics Co., Ltd.
- Applicants: Sang-Jin Oh; Chanik Park
- Inventors: Sang-Jin Oh; Chanik Park
- Web page: https://patentgrep.com/patent/US8572310B2

## CPC

- G06F 3/0644: {Management of space entities, e.g. partitions, extents, pools}
- G06F 3/061: {Improving I/O performance}
- G06F 3/0679: {Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]}
- G06F 16/1847: {specifically adapted to static storage, e.g. adapted to flash memory or SSD}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

In one aspect, meta data corresponding to a non-volatile storage media is read from the non-volatile storage media. Meta data to be updated is detected from the read meta data. Based on the read meta data and the detected meta data to be updated, storage areas of the non-volatile storage media are invalidated.

## Claims

### Claim 1

A method of operating a memory system including a non-volatile storage media, the method comprising:
reading meta data corresponding to the non-volatile storage media from the non-volatile storage media;
detecting meta data to be updated from the read meta data; and
invalidating storage areas of the non-volatile storage media based on the read meta data and the detected meta data to be updated.

### Claim 2 (depends on 1)

The method of claim 1, wherein detecting the meta data to be updated from the read meta data includes detecting meta data corresponding to second storage areas of the non-volatile storage media for which a specific time period has not yet passed since the second storage areas were last accessed.

### Claim 3 (depends on 2)

The method of claim 2, wherein the specific time period corresponds to a flush time of a host that is operatively connected to the memory system.

### Claim 4 (depends on 1)

The method of claim 1, wherein invalidating the storage areas of the non-volatile storage media includes
detecting storage areas from the read meta data which are set as invalid by the read meta data; and
invalidating the detected storage areas, except for second storage areas corresponding to the detected meta data to be updated.

### Claim 5 (depends on 1)

The method of claim 1, wherein the invalidating the storage areas of the non-volatile storage media includes deleting the storage areas of the non-volatile storage media based on the read meta data and the detected meta data to be updated.

### Claim 6

A memory system comprising:
a non-volatile storage media; and
a controller configured to control the non-volatile storage media,
wherein the controller is configured to read meta data corresponding to the non-volatile storage media from the non-volatile storage media, and to invalidate storage areas of the non-volatile storage media based on the read meta data and addresses received from a source external to the memory system.

### Claim 7 (depends on 6)

The memory system of claim 6, wherein the controller is further configured to delete the storage areas of the non-volatile storage media based on the read meta data and the received addresses.

### Claim 8 (depends on 6)

The memory system of claim 6, wherein the controller is further configured to invalidate the storage areas of the non-volatile storage media based on the read meta data and the received addresses when the received addresses correspond to a write command.

### Claim 9 (depends on 6)

The memory system of claim 6, wherein the controller is further configured to detect from the read meta data storage areas of the non-volatile storage media which are set as invalid by the read meta data, and to invalidate the detected storage areas, except for second storage areas corresponding to the received addresses for which a specific time period has not yet passed since the addresses were received.

### Claim 10 (depends on 6)

The memory system of claim 6, wherein the controller is further configured to detect from the read meta data storage areas of the non-volatile storage media which are set as invalid by the read meta data, and to invalidate the detected storage areas while inhibiting invalidation of second storage areas corresponding to the received addresses.

### Claim 11 (depends on 6)

The memory system of claim 6, wherein the controller is further configured to store the received addresses into a memory, to start a count corresponding to the stored addresses, and to invalidate the storage areas of the non-volatile storage media based on the read meta data and the addresses stored in the memory.

### Claim 12 (depends on 11)

The memory system of claim 11, wherein the controller is further configured to delete the stored addresses from the memory when the count corresponding to the stored addresses reaches a specific value.

### Claim 13 (depends on 11)

The memory system of claim 11, wherein the controller is further configured to reset the count corresponding to the stored addresses when the addresses stored in the memory are received from a source external to the memory system.

### Claim 14 (depends on 6)

The memory system of claim 6, wherein the controller is further configured to read bitmap data of the meta data stored in the non-volatile storage media, and to invalidate the storage areas of the non-volatile storage media based on the read bitmap data and the received addresses, where the bitmap data indicates valid storage areas and invalid storage areas of the non-volatile storage media.

### Claim 15 (depends on 14)

The memory system of claim 14, wherein the controller is further configured to store write map data having an identical structure as the bitmap data, to sequentially compare the bitmap data and the write map data, to update the write map data according to the comparison result, and to invalidate the storage areas of the non-volatile storage media based on the bitmap data and the updated write map data.

### Claim 16 (depends on 15)

The memory system of claim 15, wherein the controller is further configured to reset compared data of the write map data when the compared data of the bitmap data indicates an invalid storage area and the compared data of the write map data is in a set state during the comparison operation.

### Claim 17 (depends on 15)

The memory system of claim 15, wherein the controller is further configured to inhibit invalidation of storage areas of the non-volatile storage area corresponding to compared data of the bitmap data when the compared data of the write map data is in a set state during the comparison operation.

### Claim 18 (depends on 15)

The memory system of claim 15, wherein the controller is further configured to set data of the write map data corresponding to the received addresses when the addresses are received.

### Claim 19 (depends on 6)

The memory system of claim 6, wherein the controller and the non-volatile storage media form a Solid State Drive (SSD).

### Claim 20

A computing system comprising:
a non-volatile storage media configured to store meta data;
a controller configured to control the non-volatile storage media; and
a processor configured to read the meta data stored in the non-volatile storage media and to access the non-volatile storage media based on the read meta data,
wherein the controller is further configured to read the meta data stored in the non-volatile storage media and to invalidate storage areas of the non-volatile storage media based on the read meta data, while inhibiting invalidation of second storage areas for which a specific time period has not yet passed since the processor last accessed the second storage areas.
