IP Library › Granted Patent US 10,379,741
Granted Patent B2
US 10,379,741 · App. 14/255,819 · Granted Aug 13, 2019

Dynamic storage device region provisioning

Inventors: Daniel J. Sokolov (Boulder, CO); Bang C. Nguyen (Superior, CO); Andrew M. Kowles (Lyons, CO); Cameron S. McGary (Longmont, CO); Adam J. Weikal (Butler, PA); Brian T. Edgar (Minneapolis, MN)
Assignee: SEAGATE TECHNOLOGY LLC
G06F3/0608G06F3/064G06F3/0673
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,379,741
App. No.
14/255,819
Granted
Aug 13, 2019
Kind
B2
Abstract

Implementations disclosed herein provide for increasing storage drive performance by reserving a region of user-writeable storage space on a storage medium for overprovisioning uses, including performance-enhancing functions. Until a capacity condition of the storage drive is satisfied, write operations targeting the reserved region are written to another equal-sized region that does not contain user data.

Claims (45)

1. A storage device comprising:

a processor configured to:

reserve a region of user-writeable storage space in non-volatile memory of a storage medium for performance-enhancing functions;

redirect host-initiated write operations away from the reserved region in the non-volatile memory until a capacity condition is satisfied by data stored on the storage space outside of the reserved region; and

reallocate the reserved region in the non-volatile memory for storage of user data responsive to a determination that the capacity condition is satisfied.

2. The storage device of claim 1 , wherein the processor is further configured to:

divide the useable user-writeable storage space on the storage medium into a plurality of equal sized regions, each of the regions having a size equal to the size of the reserved region.

3. The storage device of claim 1 , wherein the processor is further configured to:

divide storage space on the storage medium into a plurality of regions, the plurality of regions including the reserved region.

4. The storage device of claim 3 , wherein the total number of the regions is N, and the capacity condition is satisfied when N-Y regions include user data, where Y is a number between zero and N.

5. The storage device of claim 1 , wherein more than one region of the user-writeable storage space is reserved for performance-enhancing functions.

6. The storage device of claim 1 , wherein the region reserved for performance-enhancing functions includes a number of data bands and the storage device is a shingled magnetic recording device.

7. The storage device of claim 6 , wherein granule decimation is used to isolate granules in the reserved region.

8. The storage device of claim 1 , wherein the processor is further configured to:

receive a write command targeting a logical block address (LBA) range associated with the reserved region;

dynamically map an LBA range originally corresponding to physical data blocks of the reserved region to physical data blocks in another one of the regions that does not yet contain user data; and

redirect the write command to the physical data blocks in the dynamically mapped region.

9. The storage device of claim 1 , wherein the processor is further configured to:

write user data to the user-writeable storage space reserved for performance-enhancing functions responsive to a determination that the capacity condition is satisfied.

10. The storage device of claim 1 , wherein the capacity condition is satisfied when a total disc capacity reaches a predetermined threshold.

11. The storage device of claim 1 , wherein the user-writeable storage space is divided into a plurality of regions and the capacity condition is satisfied when a number of unused regions hits a predetermined threshold.

12. The storage device of claim 1 , wherein the reserved region is included in a controller-level addressing scheme that maps physical blocks of the reserved region to logical block addresses (LBAs) of a host computing device.

13. The storage device of claim 1 , wherein the processor redirects the host-initiated write operations away from the reserved region by:

temporarily excluding the reserved region from an LBA mapping scheme of a host device while the reserved region is being used for the performance-enhancing functions and not being accessed by the host device.

14. The storage device of claim 13 , wherein the processor reallocates the reserved region for the storage of user data by mapping one or more LBAs of the LBA mapping scheme to the reserved region responsive to the determination that the capacity condition is satisfied.

15. A computer-readable storage medium encoding a computer program for executing computer process on a computer system, the computer process comprising:

reserving a region of user-writeable storage space in non-volatile memory of a storage medium for performance-enhancing functions; and

redirecting incoming host-initiated write operations away from the reserved region until a capacity condition is satisfied by data stored on the storage space outside of the reserved region in the non-volatile memory; and

reallocating the reserved region in the non-volatile memory for storage of user data responsive to a determination that the capacity condition is satisfied.

16. The computer-readable storage medium of claim 15 , further comprising:

locating the reserved region on the user-writeable storage space based on seek time to the reserved region.

17. The computer-readable storage medium of claim 15 , wherein one of the regions is a media cache floor that is not the user-writeable storage space.

18. The computer-readable storage medium of claim 15 , wherein directing the host-initiated write operations away from the reserved region further comprises:

receiving a write command targeting an LBA associated with the reserved region;

dynamically mapping an LBA range corresponding to the reserved region to another one of the regions that does not yet contain user data; and

redirecting the write command to the dynamically mapped region.

19. The computer-readable storage medium of claim 15 , further comprising:

cleaning data out of the reserved region responsive to a determination that the capacity condition is satisfied.

20. A processor configured to:

divide user-writeable storage space in non-volatile memory of a storage medium into a plurality of regions;

reserve one of the plurality of regions of the divided user-writeable storage space in the non-volatile memory for performance-enhancing functions;

responsive to receipt of a write command targeting the reserved region, determine that a capacity condition is satisfied by data currently stored outside of the reserved region;

reallocate the reserved region in the non-volatile memory for storage of user data responsive to a determination that the capacity condition is satisfied.

21. The processor of claim 20 , wherein the plurality of regions includes N equally-sized regions, and the capacity condition is satisfied when N-Y regions include user data, where Y is a number between 0 and N.

22. The processor of claim 20 , wherein the recording device is a shingled magnetic recording device and the reserved region includes a number of independently writeable granules.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2014
From: SOKOLOV, DANIEL J.; NGUYEN, BANG C.; KOWLES, ANDREW M.; MCGARY, CAMERON S.; WEIKAL, ADAM J.; EDGAR, BRAIN T.
To: SEAGATE TECHNOLOGY LLC
Reel/Frame 032708/0894 →
Continuity (1)
Related Publication 20150301747A1 · Oct 22, 2015