IP Library Granted Patent US 10,715,624
Granted Patent B2
US 10,715,624 · App. 15/840,816 · Granted Jul 14, 2020

Optimized N-stream sequential media playback caching method and system

Inventor: Arya Ahmadi-Ardakani (Mission Viejo, CA)
Assignee: Western Digital Technologies, Inc.
H04L67/2857
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,715,624
App. No.
15/840,816
Granted
Jul 14, 2020
Kind
B2
Abstract

A method of caching data for a set of streams serviced from a data storage device, said method including receiving requests for a set of streams, determining a number of zones in a cache based on the number of streams requested, determining a respective consumption rate for each stream, and allocating the zones in the cache with respective sizes such that the zones are scheduled to be refreshed within a same active operation period of the data storage device.

Claims (54)

1. A data storage device comprising:

a hardware network interface configured to communicate with one or more clients requesting a first stream and a second stream;

a memory configured to store files associated with the first stream and the second stream;

a hardware cache; and

a processor configured to:

determine a consumption rate for each of the first stream and the second stream, the consumption rate comprising an amount of data consumed by a respective stream in a time period;

size a plurality of zones of the hardware cache, including a first zone corresponding to the first stream and a second zone corresponding to the second stream, such that refresh times of the first zone and the second zone occur during an active operation time in which the data storage device is in a first power state, wherein sizes of the first zone and the second zone are potentially different and are based on the respective consumption rate of the corresponding stream; and

cause the data storage device to enter into a second power state until the active operation time, wherein the second power state uses less power than the first power state.

2. The data storage device of claim 1 , wherein the hardware network interface comprises a wireless network interface.

3. The data storage device of claim 1 , further comprising a battery.

4. The data storage device of claim 1 , wherein the processor is further configured to determine the consumption rate for each stream based on a requested media playback bitrate.

5. A data storage device comprising:

hardware means for communicating with one or more clients requesting a first stream and a second stream;

hardware means for storing files associated with the first stream and the second stream;

hardware means for caching; and

a processor configured to:

determine a consumption rate for each of the first stream and the second stream;

divide the hardware means for caching into a plurality of zones, including a first zone corresponding to the first stream and a second zone corresponding to the second stream, wherein sizes of the first zone and the second zone are potentially different and are based on the respective consumption rate of the corresponding stream to synchronize refresh times of the first zone and the second zone to occur during an active operation time in which the data storage device is in a first power state;

cause the data storage device to enter into a second power state until the active operation time, wherein the second power state uses less power than the first power state;

determine a current playback location for at least one of the first stream and the second stream;

retrieve a first amount of information prior to the current playback location; and

retrieve a second amount of information after the current playback location.

6. The data storage device of claim 1 , wherein a size of the first zone differs from a size of the second zone.

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

cause the data storage device to enter into the first power state prior to the active operation time.

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

transfer at least a portion of the files associated with each stream from the memory to the corresponding zone for each stream in the hardware cache during the active operation time.

9. The data storage device of claim 7 , wherein:

the memory comprises a data storage drive; and

causing the data storage device to enter into the first power state comprises spinning up the data storage drive.

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

refresh the first zone and the second zone of the hardware cache from the memory during the active operation time.

11. A method of caching data for a set of streams serviced from a data storage device, the method comprising:

receiving, by a controller of the data storage device, requests for a first stream and a second stream;

determining a consumption rate for each of the first stream and the second stream, the consumption rate comprising an amount of data consumed by a respective stream during a time period;

sizing a plurality of zones of a hardware cache, including a first zone corresponding to the first stream and a second zone corresponding to the second stream, such that refresh times of the first zone and the second zone occur during an active operation time in which the data storage device is in a first power state, wherein sizes of the first zone and the second zone are potentially different and are based on the respective consumption rate of the corresponding stream; and

causing the data storage device to enter into a second power state until the active operation time, wherein the second power state uses less power than the first power state.

12. The method of claim 11 , wherein determining the consumption rate comprises determining a bitrate based on a requested media playback bitrate for each respective stream.

13. The method of claim 11 , further comprising:

determining a current playback location for at least one of the first stream and the second stream;

retrieving a first amount of information prior to the current playback location; and

retrieving a second amount of information after the current playback location.

14. The method of claim 11 , further comprising:

determining an amount of time corresponding to consumption of information from the hardware cache; and

modifying power consumption of the data storage device during the amount of time.

15. The method of claim 14 , wherein modifying power consumption of the data storage device comprises transitioning the data storage device to the second power state during consumption of information from the hardware cache.

16. The method of claim 14 , wherein modifying power consumption of the data storage device comprises transitioning the data storage device from the second power state to the first power state responsive to reading data to refresh the first zone and the second zone during the same active operation period.

17. The method of claim 11 , wherein a size of the first zone differs from a size of the second zone.

18. The method of claim 11 , further comprising:

causing the data storage device to enter into the first power state prior to the active operation time.

19. The method of claim 11 , further comprising:

refreshing multiple zones of the hardware cache during the active operation time.

20. The data storage device of claim 5 , wherein the processor is further configured to:

refresh the first zone and the second zone with data from the hardware means for storing files during the active operation time.

Assignments (9)
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 - 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 →