# US 12,008,257 B2 · Fast purge on storage devices

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

- Number: US 12,008,257 B2
- Document ID: US12008257B2
- Status: Granted
- Kind: B2
- Application number: 17/994,543
- Filed: 2022-11-28
- Published: 2023-06-01
- Granted: 2024-06-11
- Earliest claimed: 2019-08-29
- Assignees: Micron Technology, Inc.
- Applicants: Micron Technology, Inc.
- Inventors: Nadav Grosz
- Web page: https://patentgrep.com/patent/US12008257B2

## CPC

- G06F 3/0652: {Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket}
- G06F 3/0611: {in relation to response time}
- G06F 3/0616: {in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]}
- G06F 3/0623: {in relation to content}
- G06F 3/0679: {Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]}
- G06F 21/79: in semiconductor storage media, e.g. directly-addressable memories
- H04L 9/32: including means for verifying the identity or authority of a user of the system {or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A memory device includes a memory array including memory cells, a communication interface to a host device, and a memory control unit operatively coupled to the memory array and the communication interface. The memory control unit is configured to encrypt write data received via the communication interface to produce encrypted data, program a portion of the memory cells of the memory array with the encrypted data, read the encrypted data from the portion of the memory cells in response to a memory read request, decrypt the read encrypted data to produce read decrypted data only for portions of the read encrypted data not stored in purged regions of the memory array.

## Claims

### Claim 1

A memory device comprising:
a memory array including memory cells;
a communication interface to a host device;
a memory control unit operatively coupled to the memory array and the communication interface, and configured to:
encrypt write data received via the communication interface to produce encrypted data;
program selected memory cells of the memory array with the encrypted data;
mark unmapped regions of memory cells storing encrypted data as purged regions without erasing the encrypted data in response to a purge operation;
decrypt the encrypted data in response to a memory read operation to produce read decrypted data for regions of the memory array that are not purged regions; and
returning predetermined data indicating purged data in response to a memory read operation to a purged region of the memory cells.

### Claim 2 (depends on 1)

The memory device of claim 1, wherein the memory control unit is configured to:
generate a reference structure that indicates the unmapped regions of memory in response to a discard command received via the communication interface; and
mark the unmapped regions contained in the memory as purged regions without erasing the unmapped regions in response to the purge operation.

### Claim 3 (depends on 1)

The memory device of claim 1, wherein the memory control unit includes an encryption engine circuit path and a decryption engine circuit path, and the memory control unit is configured to:
pass the write data received in a write operation through the encryption engine circuit path;
retrieve encrypted data and pass the encrypted data the decryption engine circuit path to produce the read decrypted data; and
bypass the decryption engine circuit path in response to the memory read operation to the purged region of the memory cells.

### Claim 4 (depends on 3)

The memory device of claim 3, wherein the memory control unit is configured to bypass the encryption engine circuit path for data to be written to specified memory addresses.

### Claim 5 (depends on 3)

The memory device of claim 3, wherein the encryption engine circuit path encrypts the write data on the fly using a content encryption key (CEK), and the decryption engine circuit path decrypts data using the CEK.

### Claim 6 (depends on 3)

The memory device of claim 3, wherein the encryption engine circuit path encrypts the write data using symmetric key encryption, and the decryption engine circuit path decrypts data using the symmetric key encryption.

### Claim 7 (depends on 1)

The memory device of claim 1, wherein the predetermined data includes encrypted data.

### Claim 8 (depends on 1)

The memory device of claim 1, including returning the wherein the predetermined data includes all zeros data.

### Claim 9 (depends on 1)

The memory device of claim 1, including returning the wherein the predetermined data includes all ones data.

### Claim 10

A memory system comprising:
a host device; and
a memory device, the memory device including a memory control unit configured to:
receive data from the host device to be written to a portion of memory cells of a memory array of the memory device;
encrypt the data to be written to produce encrypted data;
program the memory cells with the encrypted data;
receive a purge command from the host device and mark unmapped regions of memory cells storing encrypted data as purged regions without erasing the encrypted data in response to the purge operation;
read the encrypted data from the portion of the memory cells; and
decrypt the read encrypted data to produce read decrypted data and transfer the read decrypted data to the host device if the portion of the memory cells is not in a purged region; and
returning predetermined data indicating purged data to the host device without performing an erase operation when the memory read operation from the host device is to a purged region of the memory cells.

### Claim 11 (depends on 10)

The memory system of claim 10, wherein the memory control unit is configured to:
generate a table in memory that indicates the unmapped regions of memory in response to a discard command received via the communication interface; and
mark the unmapped regions contained in the memory as purged regions without erasing the unmapped regions in response to the purge operation.

### Claim 12 (depends on 10)

The memory system of claim 10,
wherein the memory device includes an encryption engine circuit path, a decryption engine circuit path, and a bypass circuit path; and
wherein the memory control unit is configured to:
initiate routing the write data through the encryption engine path in response to a write operation;
initiate routing stored encrypted data through the decryption engine path to produce the read decrypted data; and
initiate routing the encrypted data through the bypass circuit path in response to the memory read operation to the purged region of the memory cells.

### Claim 13 (depends on 12)

The memory system of claim 12, wherein the memory control unit is configured to initiate routing the data received from the host device through the bypass circuit path when the data is to be written to specified memory addresses.

### Claim 14 (depends on 12)

The memory system of claim 12, wherein the encryption engine circuit path encrypts the write data on the fly using a content encryption key (CEK), and the decryption engine circuit path decrypts data using the CEK, and the bypass circuit path neither encrypts or decrypts data.

### Claim 15 (depends on 12)

The memory system of claim 12, wherein the encryption engine circuit path encrypts the write data using symmetric key encryption, and the decryption engine circuit path decrypts data using the symmetric key encryption, and the bypass circuit path neither encrypts or decrypts data.

### Claim 16 (depends on 10)

The memory system of claim 10, wherein the returning the predetermined data includes returning predetermined data that includes the encrypted data to the host device when the memory read operation from the host device is to a purged region of the memory cells.

### Claim 17 (depends on 10)

The memory system of claim 10, wherein the returning the predetermined data includes returning all zeros data to the host device when the memory read operation from the host device is to a purged region of the memory cells.

### Claim 18 (depends on 10)

The memory system of claim 10, wherein the returning the predetermined data includes returning all ones data to the host device when the memory read operation from the host device is to a purged region of the memory cells.
