IP Library Granted Patent US 12,360,951
Granted Patent B2
US 12,360,951 · App. 17/865,660 · Granted Jul 15, 2025

Logical-to-physical mapping for defragmentation of host file system in a data storage device

Inventors: Judah Gamliel Hahn (Ofra, IL); Ramanathan Muthiah (Bangalore, IN); Bala Siva Kumar Narala (Kakinada, IN); Narendhiran Chinnaanangur Ravimohan (Bangalore, IN)
Assignee: Sandisk Technologies, Inc.
G06F16/1724G06F12/0292
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,360,951
App. No.
17/865,660
Granted
Jul 15, 2025
Kind
B2
Abstract

A data storage device having a flash translation layer configured to handle file-system defragmentation in a manner that substantially avoids physical data movement in a flash memory. In an example embodiment, a memory controller operates to update a logical-to-physical table thereof to change association of physical addresses of sections of user data from being associated with source logical addresses to being associated with destination logical addresses of the host defragmentation requests without moving the user data in the flash memory. Such updates can reduce the number of instances in which the host addresses a non-contiguous logical-address range, which results in a beneficial reduction of the number of input/output commands sent to the data storage device and of the associated processing overhead.

Claims (44)

1. A data storage device that receives commands from a host device, the data storage device comprising:

a non-volatile memory to store user data;

a control-data memory to store one or more tables including a logical-to-physical (L2P) table; and

a controller coupled to the non-volatile memory and the control-data memory and configured to:

in response to a defragmentation host command having a source logical address and a destination logical address, update one or more entries in the one or more tables to associate with the destination logical address a physical address associated in the L2P table, before the update, with the source logical address;

in response to a second host command having the destination logical address, access at least one of the updated one or more entries to route the second host command to the physical address of the non-volatile memory; and

in response to a trigger event, cause the non-volatile memory to move a portion of the user data corresponding to the updated one or more entries to a different physical address based on the defragmentation host command,

wherein no physical movement of the user data is performed in the non-volatile memory in response to the defragmentation host command and the second host command.

2. The data storage device of claim 1 , wherein the second host command is a read command.

3. The data storage device of claim 1 , wherein the controller is configured to perform the update at least by invalidating the source logical address in the L2P table.

4. The data storage device of claim 1 , wherein the one or more tables include a lookaside table.

5. The data storage device of claim 4 , wherein the controller is configured to perform the update at least by generating, in the lookaside table, a table entry having the source logical address and the destination logical address.

6. The data storage device of claim 5 , wherein the controller is further configured to perform the update at least by logically linking the table entry of the lookaside table and a corresponding entry of the L2P table.

7. The data storage device of claim 6 , wherein, in response to the second host command for the destination logical address, the controller is further configured to fetch the physical address from the corresponding entry of the L2P table.

8. The data storage device of claim 6 ,

wherein the data storage device is configured for end-to-end data protection using at least logical-address tags to user data; and

wherein the non-volatile memory has stored therein a section of the user data tagged with the source logical address.

9. The data storage device of claim 1 ,

wherein the data storage device is configured for end-to-end data protection using at least logical-address tags to user data; and

wherein the non-volatile memory has stored therein a section of the user data tagged with the source logical address.

10. The method of claim 1 ,

wherein the one or more tables include a lookaside table; and

wherein the updating includes generating, in the lookaside table, a table entry having the source logical address and the destination logical address.

11. The method of claim 10 , wherein the updating includes logically linking the table entry of the lookaside table and a corresponding entry of the L2P table.

12. The method of claim 11 , further comprising, in response to the second host command, fetching, with the controller, the physical address from the corresponding entry of the L2P table.

13. The data storage device of claim 1 , wherein the trigger event is an event from the group consisting of a read host command, a write host command, and a commencement of a garbage collection operation.

14. A method performed by a data storage device that receives commands from a host device, the method comprising:

in response to a defragmentation host command having a source logical address and a destination logical address, updating, with a controller, one or more entries in one or more tables stored in a control-data memory to associate with the destination logical address a physical address associated, in the one or more tables before said updating, with the source logical address, the one or more tables including a logical-to-physical (L2P) table;

in response to a second host command having the destination logical address, accessing, with the controller, at least one of the updated one or more entries to route the second host command to the physical address of a non-volatile memory configured to store user data; and

in response to a trigger event, causing the non-volatile memory to move a portion of the user data corresponding to the updated one or more entries to a different physical address based on the defragmentation host command,

wherein no physical movement of the user data is performed in the non-volatile memory in response to the defragmentation host command and the second host command.

15. The method of claim 14 ,

wherein the second host command is a read command.

16. The method of claim 14 , wherein the updating includes invalidating the source logical address in the L2P table.

17. The method of claim 14 ,

wherein the data storage device is configured for end-to-end data protection using at least logical-address tags to user data; and

wherein the non-volatile memory has stored therein a section of the user data tagged with the source logical address.

18. The method of claim 14 , wherein the trigger event is an event from the group consisting of a read host command, a write host command, and a commencement of a garbage collection operation.

19. An apparatus that receives commands from a host device, the apparatus comprising:

means for updating, with a controller, one or more entries in one or more tables stored in a control-data memory to associate with a destination logical address a physical address associated before an update with a source logical address in the one or more tables, the one or more tables including a logical-to-physical (L2P) table, the means for updating being operated in response to a defragmentation host command having the source logical address and the destination logical address;

means for accessing, with the controller, at least one of the updated one or more entries to route a second host command having the destination logical address to the physical address of a non-volatile memory configured to store user data, the means for accessing being operated in response to the second host command; and

means for causing, with the controller, the non-volatile memory to move a portion of the user data corresponding to the updated one or more entries to a different physical address based on the defragmentation host command, the means for causing being operated in response to a trigger event,

wherein no physical movement of the user data is performed in the non-volatile memory in response to the defragmentation host command and the second host command.

20. The apparatus of claim 19 , wherein the trigger event is an event from the group consisting of a read host command, a write host command, and a commencement of a garbage collection operation.

Assignments (8)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
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 - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 15, 2022
From: HAHN, JUDAH GAMLIEL; MUTHIAH, RAMANATHAN; CHINNAANANGUR RAVIMOHAN, NARENDHIRAN; NARALA, BALA SIVA KUMAR
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 060519/0405 →