IP Library Granted Patent US 10,929,285
Granted Patent B2
US 10,929,285 · App. 15/906,914 · Granted Feb 23, 2021

Storage system and method for generating a reverse map during a background operation and storing it in a host memory buffer

Inventors: Raviraj R (Bangalore, IN); Ritesh Tiwari (Bangalore, IN); Raghavendra Gopalakrishnan (Bengaluru, IN)
Assignee: Western Digital Technologies, Inc.
G06F12/0246G06F3/061G06F3/064G06F3/0604G06F3/0656G06F3/0679G06F12/0253
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,929,285
App. No.
15/906,914
Granted
Feb 23, 2021
Kind
B2
Abstract

A storage system and method are disclosed for generating a reverse map during a background operation and storing it in a host memory buffer. In one embodiment, a storage system is provided comprising a memory and a controller. The controller is configured to generate a physical-to-logical address map for at least part of the memory as a background operation and send the physical-to-logical address map to a host for storage in volatile memory in the host.

Claims (31)

1. A storage system comprising:

a memory, comprising a plurality of memory management units at physical addresses in the memory, wherein each memory management unit stores a logical block address for that memory management unit;

a controller configured to:

determine a respective validity count for each of a plurality of blocks of the memory;

generate, as a background operation, a physical-to-logical address map for one of the plurality of blocks of the memory, based on the respective validity count of the one of the plurality of blocks, by reading the logical block address stored in each of the memory management units for the at least part of the memory; and

send the physical-to-logical address map to a host for storage in volatile memory in the host; and

a plurality of buffers, wherein the controller is further configured to store different portions of the physical-to-logical address map in different ones of the plurality of buffers before sending the stored portions to the host.

2. The storage system of claim 1 , wherein the controller is further configured to send a first portion of the physical-to-logical address map stored in a first buffer to the host while storing a second portion of the physical-to-logical address map in a second buffer.

3. The storage system according to claim 1 , wherein the controller is further configured to receive the physical-to-logical address map from the host for use in a garbage collection operation in the memory.

4. The storage system according to claim 1 , wherein the controller is further configured to receive the physical-to-logical address map from the host for use in a wear-leveling operation in the memory.

5. The storage system of claim 1 , wherein the memory comprises a three-dimensional memory.

6. The storage system of claim 1 , wherein the storage system is embedded in the host.

7. The storage system of claim 1 , wherein the storage system comprises a solid state drive (SSD).

8. A method comprising:

performing the following in a storage system comprising a memory, wherein the memory comprises a plurality of memory management units at physical addresses in the memory, wherein each memory management unit stores a logical block address for that memory management unit:

determine a respective validity count for each of the plurality of blocks of the memory;

creating, during a host idle time, a reverse map for one of the plurality of blocks of the memory, based on the respective validity count of the one of the plurality of blocks, by reading the logical block address stored in each of the memory management units for the at least part of the memory;

storing different portions of the reverse map in different ones of a plurality of buffers; and

sending the reverse map from the different ones of the plurality of buffers to a host for storage in a host memory buffer.

9. The method of claim 8 , wherein the reverse map is created by scanning the one of the plurality of blocks for associated logical block addresses.

10. The method of claim 8 , wherein creating the reverse map and sending the reverse map to the host are performed in a pipeline fashion for different portions of the one of the plurality of blocks.

11. The method of claim 8 , wherein the memory comprises a three-dimensional memory.

12. A storage system comprising:

a memory, comprising a plurality of memory management units at physical addresses in the memory, wherein each memory management unit stores a logical block address for that memory management unit;

means for determining a respective validity count for each of a plurality of blocks of the memory;

means for generating, as a background operation, a physical-to-logical address map for one of the plurality of blocks of the memory, based on the respective validity count of the one of the plurality of blocks, by reading the logical block address stored in each of the memory management units for the at least part of the memory;

means for storing different portions of the physical-to-logical address map in different ones of a plurality of buffers;

means for transferring the physical-to-logical address map from the different ones of the plurality of buffers to a volatile memory in a host; and

storing the physical-to-logical address map in volatile memory in a host.

13. The storage system of claim 12 , wherein the memory comprises a three-dimensional memory.

14. The storage system of claim 12 , wherein the storage system comprises a solid state drive (SSD).

Assignments (7)
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
RELEASE OF SECURITY INTEREST AT REEL 052915 FRAME 0566 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 059127/0001 →
SECURITY INTEREST Recorded Feb 6, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 052915/0566 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 27, 2018
From: R, RAVIRAJ; TIWARI, RITESH; GOPALAKRISHNAN, RAGHAVENDRA
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 045055/0258 →
Cited By (5)
US 12,248,676 US 12,332,779 US 12,608,307 US 12,669,940 US 12,687,982