IP Library Granted Patent US 8,578,089
Granted Patent B2
US 8,578,089 · App. 12/916,109 · Granted Nov 5, 2013

Storage device cache

Inventors: Ron Watts (Redmond, WA); Jack Lakey (Longmont, CO)
Assignee: Seagate Technology LLC
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 8,578,089
App. No.
12/916,109
Granted
Nov 5, 2013
Kind
B2
Abstract

Implementations described and claimed herein provide a method and system for comparing a storage location related to a new write command on a storage device with storage locations of a predetermined number of write commands stored in a first table to determine frequency of write commands to the storage location. If the frequency is determined to be higher than a first threshold, the data related to the write command is stored in a write cache.

Claims (32)

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

if a received data packet contains cacheable data:

separating the cacheable data from remainder of the received data packet, wherein the received data packet is determined to contain cacheable data if the received data packet contains data written to a storage location that is written at above a threshold frequency;

storing cacheable data to a second storage device; and

storing at least a portion of the data from remainder of the received data packet to a first storage device.

2. The computer-readable storage medium of claim 1 , wherein the cacheable data is logging data.

3. The computer readable storage medium of claim 1 , wherein the received data packet is determined to contain cacheable data if a block-size of the data written to the storage location is below a threshold block-size.

4. The computer readable medium of claim 1 , wherein the first storage device is a hard drive disk (HDD) and the first storage location is a logical block address (LBA) on the HDD.

5. The computer readable medium of claim 1 , wherein the second storage device is a volatile memory located on an HDD assembly.

6. The computer readable medium of claim 1 , wherein the computer process further comprises transferring the cacheable data from the second storage device to the first storage device in case of a power interrupt.

7. The computer readable medium of claim 1 , wherein the computer process further comprises transferring the cacheable data from the second storage device to the first storage device at a predetermined time interval.

8. The computer readable medium of claim 1 , wherein the values of the threshold frequency and the threshold block-size are interdependent.

9. A method comprising:

comparing a storage location related to a new write command on a storage device with storage locations of a predetermined number of write commands stored in a first table to determine frequency of write commands to the storage location; and

if the frequency is determined to be higher than a first threshold and if a block-size of the data related to the write command is above a threshold block-size, storing the data related to the write command in a write cache.

10. The method of claim 9 , further comprising:

if the frequency is determined to be lower than the first threshold, storing the data related to the write command at the storage location.

11. The method of claim 9 , further comprising:

if the frequency is determined to be higher than the first threshold, storing the data related to the write command in a cache memory.

12. The method of claim 9 , wherein the threshold frequency is based on a first percentile of frequency of writing data to a given location on the storage device.

13. The method of claim 9 , further comprising transferring the data from the write cache to the storage device in case of a power interrupt.

14. A storage device communicatively connected to a computer, the storage device comprising:

a write-cache;

a storage media; and

an interface controller configured to determine whether data attached to a write command is logging data by comparing the frequency of write commands to a location where the data attached to a write command is to be written with a threshold frequency and by comparing a block size of the data attached to a write command with a threshold block size.

15. The storage device of claim 14 , wherein the interface controller is further configured to separate the logging data from remainder of data attached to the write command.

16. The storage device of claim 14 , wherein the interface controller is further configured to write the data attached to a write command to the write-cache if the interface controller determines that the data attached to a write command is logging data.

17. The storage device of claim 14 , wherein the interface controller is further configured to write the data attached to the write command to the storage media if the interface controller determines that the data attached to a write command is not logging data.

18. The non-transitory computer-readable storage medium of claim 1 , wherein the storing of the portion of the data to the first storage device further comprises:

storing the portion of the data to the first storage device if the frequency is determined to be lower than the threshold frequency.

19. The non-transitory computer-readable storage medium of claim 1 , wherein the storing of the portion of the data to the first storage device further comprises:

storing the portion of the data to the first storage device if a block-size of the data written to the storage location is determined to be greater than the threshold block-size.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Jul 23, 2025
From: THE BANK OF NOVA SCOTIA
To: SEAGATE TECHNOLOGY PUBLIC LIMITED COMPANY; SEAGATE TECHNOLOGY; SEAGATE TECHNOLOGY HDD HOLDINGS; I365 INC.; SEAGATE TECHNOLOGY LLC; SEAGATE TECHNOLOGY INTERNATIONAL; SEAGATE HDD CAYMAN; SEAGATE TECHNOLOGY (US) HOLDINGS, INC.
Reel/Frame 072193/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 20, 2013
From: WATTS, RON; LACKEY, JACK
To: SEAGATE TECHNOLOGY LLC
Reel/Frame 031042/0857 →
SECURITY AGREEMENT Recorded Mar 24, 2011
From: SEAGATE TECHNOLOGY LLC
To: THE BANK OF NOVA SCOTIA, AS ADMINISTRATIVE AGENT
Reel/Frame 026010/0350 →
Continuity (1)
Related Publication 20120110258A1 · May 3, 2012