IP Library Granted Patent US 10,007,451
Granted Patent B2
US 10,007,451 · App. 15/076,350 · Granted Jun 26, 2018

Scalable SPOR algorithm for flash memories

Inventors: Fan Zhang (Fremont, CA); Tan Liu (Pewaukee, WI); Constantino Rosario (San Jose, CA)
Assignee: SK Hynix Inc.
G06F3/0619G06F3/064G06F3/0616G06F3/0679G06F3/0688
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 10,007,451
App. No.
15/076,350
Granted
Jun 26, 2018
Kind
B2
Abstract

Methods of sudden power off recovery may include reading dirty-block meta-pages from memory blocks on a dirty block list, recording mapping in formation in open-block meta-pages, serving host commands by looking up logical block addresses (LBAs) in the dirty-block meta-pages and the open-block meta-pages and when an LBA is not found in the dirty-block meta-pages and the open-block meta-pages, reading new mapping information from a dirty table and saving the new mapping information in host-write meta-pages.

Claims (30)

1. A method of sudden power off recovery (SPOR), comprising:

reading dirty-block meta-pages from memory blocks on a dirty block list;

scanning open-blocks and recording mapping information thereof in open-block meta-pages;

serving host commands by looking up logical block addresses (LBAs) in the dirty-block meta-pages and the open-block meta-pages; and

when an LBA is not found in the dirty-block meta-pages or the open-block meta-pages, reading new mapping information from a dirty table and saving the new mapping information in host-write meta-pages, and storing dirty information created by host writes in the host-write meta-pages but not in the dirty table.

2. The method of claim 1 , further comprising:

replaying, in the background, the dirty-table meta-pages, the open-block meta-pages, and the host-write meta-pages in order of old to new such that a valid physical address overwrites an invalid physical address if an LBA occurs multiple times in one meta-page.

3. The method of claim 2 , further comprising serving host commands while performing the replaying step.

4. The method of claim 1 , wherein the looking up is performed from a newest meta-page to an oldest meta-page.

5. A system for performing sudden power off recovery (SPOR), comprising:

a dynamic random access memory (DRAM) including a flash transition layer (FTL) table;

a memory storage suitable for storing dirty-block meta-pages, open-block meta-pages, and host-write meta-pages; and

a controller suitable for:

reading the dirty-block meta-pages from memory blocks on a dirty block list;

scanning open-blocks and recording mapping information thereof in the open-block meta-pages;

serving host commands by looking up logical block addresses (LBAs) in the dirty-block meta-pages and the open-block meta-pages; and

when an LBA is not found in the dirty-block meta-pages or the open-block meta-pages, reading new mapping information from the FTL table and saving the new mapping information in the host-write meta-pages, and storing dirty information created by host writes in the host-write meta-pages but not in the dirty table.

6. The system of claim 5 , wherein the controller is further suitable for preserving space in the DRAM for storing the host-write meta-pages.

7. The system of claim 5 , wherein the controller is further suitable for replaying, in the background, the dirty-table meta-pages, the open-block meta-pages, and the host-write meta-pages in order of old to new such that a valid physical address overwrites an invalid physical address if an LBA occurs multiple times in one meta-page.

8. The system of claim 7 , wherein the controller is further suitable for serving host commands while performing the replaying.

9. The system of claim 5 , wherein the controller is further suitable to perform the looking up from a newest meta-page to an oldest meta-page.

10. A memory device, comprising:

a controller configured to:

read dirty-block meta-pages from memory blocks on a dirty block list;

scanning open-blocks and record mapping information thereof in open-block meta-pages;

serve host commands by looking up logical block addresses (LBAs) in the dirty-block meta-pages and the open-block meta-pages; and

when an LBA is not found in the dirty-block meta-pages or the open-block meta-pages, read new mapping information from a dirty table and save the new mapping information in host-write meta-pages, and store dirty information created by host writes in the host-write meta-pages but not in the dirty table.

11. The memory device of claim 10 , wherein the controller is further configured to replay, in the background, the dirty-table meta-pages, the open-block meta-pages, and the host-write meta-pages in order of old to new such that a valid physical address overwrites an invalid physical address if an LBA occurs multiple times in one meta-page.

12. The memory device of claim 10 , wherein the controller is further configured to serve host commands during replay.

13. The memory device of claim 10 , wherein the looking up is performed from a newest meta-page to an oldest meta-page.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2018
From: ZHANG, FAN; LIU, TAN
To: SK HYNIX INC.
Reel/Frame 045867/0643 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 15, 2017
From: SK HYNIX MEMORY SOLUTIONS INC.
To: SK HYNIX INC.
Reel/Frame 044899/0443 →
Continuity (2)
Continuation 62135948 · Mar 20, 2015
Related Publication 20160274808A1 · Sep 22, 2016