IP Library Granted Patent US 9,274,865
Granted Patent B2
US 9,274,865 · App. 13/957,411 · Granted Mar 1, 2016

Implementing enhanced buffer management for data storage devices

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 9,274,865
App. No.
13/957,411
Granted
Mar 1, 2016
Kind
B2
Abstract

A method, apparatus and a data storage device for implementing enhanced buffer management for storage devices. An amount of emergency power for the storage device is used to determine a time period for the storage device between emergency power loss and actual shut down of electronics. A time period for the storage device for storing write cache data to non-volatile storage is used to identify the amount of write cache data that can be safely written from the write cache to non-volatile memory after an emergency power loss, and using the write cache threshold for selected buffer management techniques for providing enhanced storage device performance, including enhanced SSD or HDD performance.

Claims (35)

1. A method for implementing enhanced buffer management of a write cache for storage devices comprising:

identifying a first time period available for the storage device between emergency power loss and actual shut down of electronics using an amount of emergency power for the storage device;

identifying a second time period for the storage device for storing write cache data to non-volatile storage;

identifying a pending write threshold of write cache data safely written from the write cache to non-volatile memory after an emergency power loss, and

using said identified pending write threshold for write cache data for optimizing buffer management for providing enhanced storage device performance including selectively providing acknowledges of host write commands.

2. The method for implementing enhanced buffer management as recited in claim 1 wherein the storage devices include one of solid state drives (SSDs) and hard disk drives (HDDs).

3. The method for implementing enhanced buffer management as recited in claim 1 wherein using said identified pending write threshold for write cache data for optimizing buffer management for enhanced storage device performance includes providing a blended release's early release phase.

4. The method for implementing enhanced buffer management as recited in claim 3 wherein providing a blended release's early release phase includes identifying pending write bytes less than said pending write threshold.

5. The method for implementing enhanced buffer management as recited in claim 3 wherein providing a blended release's early release phase includes providing an acknowledge (ACK) immediately for a finite number of host writes.

6. The method for implementing enhanced buffer management as recited in claim 5 includes for each ACK sent writing write cache data from the write cache to non-volatile memory after an emergency power loss.

7. The method for implementing enhanced buffer management as recited in claim 1 wherein using said identified pending write threshold for write cache data for optimizing buffer management for enhanced storage device performance includes providing a blended release's mid release phase.

8. The method for implementing enhanced buffer management as recited in claim 7 wherein providing a blended release's mid release phase includes identifying pending write bytes greater than or equal to said identified pending write threshold.

9. The method for implementing enhanced buffer management as recited in claim 7 wherein providing a blended release's mid release phase includes providing an acknowledge (ACK) after said identified pending write threshold of host writes is reached, aggregate write data is greater than a flash_page_size, and a non-volatile write starts.

10. The method for implementing enhanced buffer management as recited in claim 9 includes finishing the non-volatile memory write after an emergency power loss after an acknowledge (ACK) is sent.

11. The method for implementing enhanced buffer management as recited in claim 7 wherein providing a blended release's mid release phase includes providing an acknowledge (ACK) for all write commands under said write threshold, after blended release's early release phase write completes, and the said identified pending write threshold of host writes is not reached.

12. An apparatus for implementing enhanced buffer management of a write cache for storage devices comprising:

a controller;

a memory coupled to said controller storing buffer management information for the storage device; said buffer management information including an amount of emergency power for the storage device, a first time period available for the storage device between emergency power loss and actual shut down of electronics, and a second time period for the storage device for storing write cache data to non-volatile memory storage,

a buffer manager coupled to said controller including a volatile cache for storing write cache data;

said controller identifying a pending write threshold of write cache data safely written from the volatile cache to non-volatile memory storage after an emergency power loss, and

said controller using said identified pending write threshold for write cache data for optimizing buffer management for providing enhanced storage device performance including selectively providing acknowledges of host write commands.

13. The apparatus as recited in claim 12 wherein the storage devices include one of solid state drives (SSDs) and hard disk drives (HDDs).

14. The apparatus as recited in claim 12 includes control code stored on a computer readable medium, and wherein said controller uses said control code for optimizing buffer management.

15. The apparatus as recited in claim 12 wherein said controller using said identified pending write threshold for write cache data for optimizing buffer management for enhanced storage device performance includes said controller providing a blended release's early release phase responsive to identifying pending write bytes less than said identified pending write threshold.

16. The apparatus as recited in claim 15 , includes said controller providing an acknowledge (ACK) immediately for a finite number of host writes, and for each ACK sent writing write cache data from the write cache to non-volatile memory after an emergency power loss.

17. The apparatus as recited in claim 12 , wherein said controller using said identified threshold for write cache data for optimizing buffer management for enhanced storage device performance includes said controller providing a blended release's mid release phase responsive to identifying pending write bytes greater than or equal to the pending said write threshold.

18. A data storage device comprising:

a controller;

a memory coupled to said controller storing buffer management information for the storage device; said buffer management information including an amount of emergency power for the storage device, a first time period available for the storage device between emergency power loss and actual shut down of electronics, and a second time period for the storage device for storing write cache data to non-volatile storage,

a non-volatile memory storage;

a buffer manager coupled to said controller including a volatile cache for storing write cache data;

said controller identifying a pending write threshold of write cache data safely written from the volatile cache to non-volatile memory storage after an emergency power loss, and

said controller using said identified pending write threshold for write cache data for optimizing buffer management for providing enhanced storage device performance including selectively providing acknowledges of host write commands.

19. The data storage device as recited in claim 18 , wherein the storage device include one of a solid state drive (SSD) and a hard disk drive (HDD).

20. The data storage device as recited in claim 18 includes control code stored on a computer readable medium, and wherein said controller uses said control code for optimizing buffer management.

Assignments (11)
SECURITY AGREEMENT (SUPPLEMENTAL) Recorded Nov 14, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 069411/0208 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2024
From: SANDISK TECHNOLOGIES, INC.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 069168/0273 →
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 →
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 Dec 6, 2016
From: HGST NETHERLANDS B.V.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 040829/0516 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2013
From: FURLONG, JEFFREY L.
To: HGST NETHERLANDS B.V.
Reel/Frame 030929/0433 →