IP Library › Granted Patent US 12,105,968
Granted Patent B2
US 12,105,968 · App. 17/504,495 · Granted Oct 1, 2024

Systems, methods, and devices for page relocation for garbage collection

Inventors: Heekwon Park (San Jose, CA); Marie Mai Nguyen (Pittsburgh, PA); Yang Seok Ki (Palo Alto, CA)
Assignee: SAMSUNG ELECTRONICS CO., LTD.
G06F3/0631G06F3/0604G06F3/064G06F3/065G06F3/0673G06F12/0882G06F12/0891
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,105,968
App. No.
17/504,495
Granted
Oct 1, 2024
Kind
B2
Abstract

A method for page management in a memory system may include allocating a page of a mirror memory, copying a valid page from a block of device memory at a device to the page of the mirror memory, remapping the valid page from the block of device memory to the mirror memory, and modifying the block of device memory. The method may further include copying the valid page from the mirror memory to a free page at the device, and remapping the valid page from the mirror memory to the free page at the device. The remapping may be performed using a memory coherent interface. The method may further include deallocating a portion of the mirror memory associated with the valid page based on copying the valid page from the mirror memory.

Claims (62)

1. A method comprising:

copying a valid page from a block of device memory at a device to a page of mirror memory;

mapping the valid page from the block of device memory to the mirror memory;

modifying, based on the copying the valid page, an availability of the block of device memory;

receiving a request for an access of the valid page; and

accessing, at the mirror memory, based on the mapping and the request, the valid page; and

copying, based on the modifying, from the mirror memory to the device memory, the valid page.

2. The method of claim 1 , further comprising:

mapping the valid page from the mirror memory to the device memory.

3. The method of claim 2 , wherein the mapping the valid page from the mirror memory to the device memory is performed using a memory coherent interface.

4. The method of claim 2 , further comprising freeing a portion of the mirror memory associated with the valid page based on copying the valid page from the mirror memory.

5. The method of claim 1 , further comprising:

updating the valid page in the mirror memory to generate a modified page in the mirror memory;

copying the modified page from the mirror memory to the device memory; and

mapping the modified page to the device memory.

6. The method of claim 1 , wherein the valid page is associated with a process at a host, the method further comprising freeing, by the process, the valid page from the mirror memory.

7. The method of claim 1 , wherein the mirror memory comprises system memory.

8. The method of claim 1 , wherein:

the device is a first device; and

the mirror memory comprises a memory at a second device.

9. The method of claim 1 , wherein:

the valid page comprises a valid page of a first memory of a first processing element of the device; and

the mirror memory comprises a second memory of a second processing element of the device.

10. The method of claim 1 , further comprising allocating based on an indication from the device, the page of the mirror memory.

11. The method of claim 10 , wherein the indication comprises an interrupt from the device to a device driver.

12. A system comprising:

a storage device comprising a block of memory;

a first circuit configured to:

send a notification based on a first page having a first validity status and a second page having a second validity status in the block of memory;

receive an indication; and

modify the block of memory based on the indication;

a mirror memory; and

a second circuit configured to:

receive the notification from the first circuit;

copy the first page to the mirror memory based on the notification;

map the first page to the mirror memory; and

send the indication to the first circuit.

13. The system of claim 12 , wherein:

the first circuit is further configured to send a valid page list to the second circuit; and

the second circuit is further configured to:

copy the first page from the mirror memory to a free page at the storage device based on the valid page list; and

map the first page from the mirror memory to the free page at the storage device.

14. The system of claim 13 , further comprising a device driver configured to:

copy the first page from the block of memory to the mirror memory; and

copy the first page from the mirror memory to the free page of the storage device.

15. The system of claim 12 , further comprising a memory allocator configured to:

redirect, based on the notification, a memory allocation for a processing element of the storage device associated with the block of memory; and

provide to the storage device, based on the notification, a list of pages allocated to the processing element of the storage device.

16. A storage device comprising:

a block of memory; and

a circuit configured to:

send a notification based on a first page having a first validity status and a second page having a second validity status in the block of memory;

receive an indication; and

perform a modification operation on the block of memory based on the indication.

17. The storage device of claim 16 , wherein the circuit is configured to communicate with a host using a coherent memory interface.

18. The storage device of claim 16 , wherein the circuit is configured to send a valid page list based on the modification operation.

19. The storage device of claim 16 , wherein:

the block of memory is a first block of memory:

the storage device comprises:

a first processing element configured to control the first block of memory and a second block of memory; and

a second processing element configured to control a third block of memory; and

the circuit is configured to perform, by the first processing element, the modification operation on the first block of memory and the second block of memory based on the indication.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 10, 2023
From: PARK, HEEKWON; NGUYEN, MARIE MAI; KI, YANG SEOK
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 064557/0517 →
Continuity (2)
Provisional Application 63221463 · Jul 13, 2021
Related Publication 20230019878A1 · Jan 19, 2023