IP Library › Granted Patent US 12,066,930
Granted Patent B2
US 12,066,930 · App. 18/200,975 · Granted Aug 20, 2024

Managing power loss recovery using an oldest section write policy for an address mapping table in a memory sub-system

Inventors: Byron Harris (Mead, CO); Daniel Boals (Broomfield, CO); Abedon Madril (Frederick, CO)
Assignee: Micron Technology, Inc.
G06F12/0246G06F1/30G06F12/0292G06F12/0804G06F12/0891G06F2212/7201
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,066,930
App. No.
18/200,975
Granted
Aug 20, 2024
Kind
B2
Abstract

A journal count reflecting a number of logical-to-physical (L2P) journals written to a non-volatile memory device is maintained, wherein each L2P journal is associated with one or more updates to an L2P address mapping table. In response to determining that the journal count satisfies a threshold criterion, a first section of a plurality of sections of the L2P address mapping table is identified, wherein the plurality of sections of the L2P address mapping table is cached in a volatile memory device. The first section of the L2P address mapping table is written to the non-volatile memory device.

Claims (77)

1. A system comprising:

a volatile memory device;

a non-volatile memory device; and

a processing device, operatively coupled with the volatile and non-volatile memory devices, to perform operations comprising:

maintaining a journal count reflecting a number of logical-to-physical (L2P) journals written to the non-volatile memory device, wherein each L2P journal is associated with one or more updates to an L2P address mapping table;

in response to determining that the journal count satisfies a threshold criterion, identifying a first section of a plurality of sections—of the L2P address mapping table, wherein the plurality of sections of the L2P address mapping table is cached in the volatile memory device; and

writing the first section of the L2P address mapping table to the non-volatile memory device.

2. The system of claim 1 , further comprising:

maintaining a journal entry count reflecting a number of L2P journal entries associated with an L2P journal;

determining that the journal entry count satisfies a second threshold criterion; and

in response to determining that the journal entry count satisfies the second threshold criterion, triggering a writing of the L2P journal to the non-volatile memory device.

3. The system of claim 1 , wherein identifying the first section of the plurality of sections of the L2P address mapping table comprises:

identifying the first section based on a flag associated with the first section, wherein the flag is set to indicate that the first section is an oldest section of the plurality of sections.

4. The system of claim 1 , wherein writing the first section of the L2P address mapping table to the non-volatile memory device comprises:

determining that the first section of the L2P address mapping table comprises one or more dirty entries;

responsive to determining that the first section of the L2P address mapping table comprises the one or more dirty entries, writing the one or more dirty entries to the non-volatile memory device; and

setting a flag associated with the first section to indicate that the first section is an oldest section of the plurality of sections.

5. The system of claim 1 , further comprising:

determining that the first section of the L2P address mapping table does not comprise one or more dirty entries; and

setting a flag associated with a second section of the plurality of sections of the L2P address mapping table to indicate the second section is an oldest section of the plurality of sections.

6. The system of claim 1 , further comprising:

responsive to detecting a power up event following a power loss event, reconstructing the L2P address mapping table, wherein reconstructing the L2P address mapping table comprises:

restoring the L2P address mapping table based on sections of the L2P address mapping table stored on the non-volatile memory device;

identifying an oldest section of the L2P address mapping table based on a flag associated with the section;

identifying an L2P journal entry of a plurality of L2P journal entries based on a time stamp associated with the L2P journal entry; and

updating the L2P address mapping table by replaying the L2P journal entry.

7. The system of claim 6 , wherein updating the L2P address mapping table by replaying the L2P journal entry comprises:

reading data stored on the L2P journal entry, wherein the data reflects an update to an entry of a section of the L2P address mapping table; and

applying the update to the L2P address mapping table.

8. A method comprising:

maintaining a journal count reflecting a number of logical-to-physical (L2P) journals written to a non-volatile memory device, wherein each L2P journal is associated with one or more updates to an L2P address mapping table;

in response to determining that the journal count satisfies a threshold criterion, identifying a first section of a plurality of sections—of the L2P address mapping table, wherein the plurality of sections of the L2P address mapping table is cached in a volatile memory device; and

writing the first section of the L2P address mapping table to the non-volatile memory device.

9. The method of claim 8 , further comprising:

maintaining a journal entry count reflecting a number of L2P journal entries associated with an L2P journal;

determining that the journal entry count satisfies a second threshold criterion; and

in response to determining that the journal entry count satisfies the second threshold criterion, triggering a writing of the L2P journal to the non-volatile memory device.

10. The method of claim 8 , wherein identifying the first section of the plurality of sections of the L2P address mapping table comprises:

identifying the first section based on a flag associated with the first section, wherein the flag is set to indicate that the first section is an oldest section of the plurality of sections.

11. The method of claim 8 , wherein writing the first section of the L2P address mapping table to the non-volatile memory device comprises:

determining that the first section of the L2P address mapping table comprises one or more dirty entries;

responsive to determining that the first section of the L2P address mapping table comprises the one or more dirty entries, writing the one or more dirty entries to the non-volatile memory device; and

setting a flag associated with the first section to indicate that the first section is an oldest section of the plurality of sections.

12. The method of claim 8 , further comprising:

determining that the first section of the L2P address mapping table does not comprise one or more dirty entries; and

setting a flag associated with a second section of the plurality of sections of the L2P address mapping table to indicate the second section is an oldest section of the plurality of sections.

13. The method of claim 8 , further comprising:

responsive to detecting a power up event following a power loss event, reconstructing the L2P address mapping table, wherein reconstructing the L2P address mapping table comprises:

restoring the L2P address mapping table based on sections of the L2P address mapping table stored on the non-volatile memory device;

identifying an oldest section of the L2P address mapping table based on a flag associated with the section;

identifying an L2P journal entry of a plurality of L2P journal entries based on a time stamp associated with the L2P journal entry; and

updating the L2P address mapping table by replaying the L2P journal entry.

14. The method of claim 13 , wherein updating the L2P address mapping table by replaying the L2P journal entry comprises:

reading data stored on the L2P journal entry, wherein the data reflects an update to an entry of a section of the L2P address mapping table; and

applying the update to the L2P address mapping table.

15. A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to perform operations comprising:

maintaining a journal count reflecting a number of logical-to-physical (L2P) journals written to a non-volatile memory device, wherein each L2P journal is associated with one or more updates to an L2P address mapping table;

in response to determining that the journal count satisfies a threshold criterion, identifying a first section of a plurality of sections—of the L2P address mapping table, wherein the plurality of sections of the L2P address mapping table is cached in a volatile memory device; and

writing the first section of the L2P address mapping table to the non-volatile memory device.

16. The non-transitory computer-readable storage medium of claim 15 , wherein the processing device is to perform operations further comprising:

maintaining a journal entry count reflecting a number of L2P journal entries associated with an L2P journal;

determining that the journal entry count satisfies a second threshold criterion; and

in response to determining that the journal entry count satisfies the second threshold criterion, triggering a writing of the L2P journal to the non-volatile memory device.

17. The non-transitory computer-readable storage medium of claim 15 , wherein to identify the first section of the plurality of sections of the L2P address mapping table, the processing device is to perform operations further comprising:

identifying the first section based on a flag associated with the first section, wherein the flag is set to indicate that the first section is an oldest section of the plurality of sections.

18. The non-transitory computer-readable storage medium of claim 15 , wherein the processing device is to perform operations further comprising:

determining that the first section of the L2P address mapping table does not comprise one or more dirty entries; and

setting a flag associated with a second section of the plurality of sections of the L2P address mapping table to indicate the second section is an oldest section of the plurality of sections.

19. The non-transitory computer-readable storage medium of claim 15 , wherein the processing device is to perform operations further comprising:

responsive to detecting a power up event following a power loss event, reconstructing the L2P address mapping table, wherein reconstructing the L2P address mapping table comprises:

restoring the L2P address mapping table based on sections of the L2P address mapping table stored on the non-volatile memory device;

identifying an oldest section of the L2P address mapping table based on a flag associated with the section;

identifying an L2P journal entry of a plurality of L2P journal entries based on a time stamp associated with the L2P journal entry; and

updating the L2P address mapping table by replaying the L2P journal entry.

20. The non-transitory computer-readable storage medium of claim 19 , wherein to update the L2P address mapping table by replaying the L2P journal entry, the processing device is to perform operations further comprising:

reading data stored on the L2P journal entry, wherein the data reflects an update to an entry of a section of the L2P address mapping table; and

applying the update to the L2P address mapping table.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 12, 2024
From: HARRIS, BYRON; BOALS, DANIEL; MADRIL, ABEDON
To: MICRON TECHNOLOGY, INC.
Reel/Frame 066730/0949 →
Continuity (2)
Continuation 17683989 · Mar 1, 2022
Related Publication 20230289285A1 · Sep 14, 2023