IP Library Granted Patent US 11,030,007
Granted Patent B2
US 11,030,007 · App. 15/847,389 · Granted Jun 8, 2021

Multi-constraint dynamic resource manager

Inventors: David Chaim Brief (Modiin, IL); Yoav Markus (Tel-Aviv, IL); Shemmer Choresh (Tel-Aviv, IL)
Assignee: WESTERN DIGITAL TECHNOLOGIES, INC
G06F9/5016G06F9/5022G06F11/1068G06F11/3037G06F11/3051
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 11,030,007
App. No.
15/847,389
Granted
Jun 8, 2021
Kind
B2
Abstract

An arrangement is illustrated wherein a flash controller with a multi-constraints dynamic resource manager module configured to control both software and hardware clients is provided. The arrangement also provides for memory and an interface for connecting the controller to a host.

Claims (40)

1. An arrangement configured to couple to a host, the arrangement comprising: a controller comprising:

a removable physical storage unit comprising one or more buffers;

random access memory (RAM); and

a multi-constraints dynamic resource manager module configured to control both software clients and hardware clients, wherein the multi-constraints dynamic resource manager module is connected to the removable physical storage unit, and wherein the multi-constraints dynamic resource manager module is configured to:

allocate and deallocate resources selected from the group comprising the RAM, data buffers for reads and writes, descriptors, flow control counters, dynamic buffers, and time slots; and

allocate and deallocate the resources to control a power budget of the arrangement or to minimize latency of a task executing on the arrangement.

2. The arrangement according to claim 1 , wherein the module is further configured to determine a maximum amount of resources to be provided to each client.

3. The arrangement according to claim 1 , wherein the module is further configured to identify changes in hardware and software in the host and the controller.

4. The arrangement according to claim 1 , wherein the module comprises at least one processor.

5. The arrangement according to claim 1 , wherein the module is further configured to maintain a power budget for each component controlled by the controller.

6. The arrangement according to claim 2 , further comprising:

a host interface configured to transmit data to and receive data from the host.

7. The arrangement according to claim 6 , wherein the controller further comprises a flash translation layer.

8. The arrangement according to claim 7 , further comprising one or more flash dies coupled to the controller.

9. The arrangement according to claim 8 , wherein the removable physical storage unit is configured to receive, store, and retrieve data.

10. The arrangement according to claim 9 ,

wherein the removable physical storage unit is one of a NAND flash unit, a disk drive, and a hybrid drive.

11. The arrangement according to claim 10 , wherein the controller further comprises an Error Correction Code (ECC).

12. The arrangement according to claim 11 , wherein the controller further comprises descriptors, wherein a descriptor is a data structure that defines an operation to be performed by hardware.

13. The arrangement according to claim 1 , wherein the multi-constraints dynamic resource manager module is further configured to allocate and deallocate the resources to reduce task starvation of the arrangement or to perform just-in-time allocation of the resources of the arrangement.

14. A method of controlling equipment, comprising:

receiving a plurality of task execution requests at a flash controller, the flash controller comprising RAM, a multi-constraints dynamic resource manager module, and a removable physical storage unit comprising one or more buffers;

monitoring available resources in a host, the host being coupled to the flash controller; and

allocating at least a minimal amount of resources required per request to each request using the multi-constraints dynamic resource manager module, wherein the multi-constraints dynamic resource manager module is connected to the removable physical storage unit, and wherein the multi-constraints dynamic resource manager module is configured to:

allocate and deallocate resources selected from the group comprising the RAM, data buffers for reads and writes, descriptors, flow control counters, dynamic buffers, and time slots; and

allocate and deallocate the resources to control a power budget of the equipment or to minimize latency of a task executing on the equipment.

15. The method according to claim 14 , wherein the monitoring of the available resources is performed continuously.

16. The method according to claim 14 , wherein the allocating the at least minimal amount of resources is allocating a maximum resources currently available.

17. The method according to claim 14 , wherein the receiving the plurality of task execution requests is from at least one of a hardware component and software.

18. An arrangement configured to couple to a host, the arrangement comprising:

means for receiving a plurality of task execution requests at a flash controller, the flash controller comprising RAM and a removable physical storage unit comprising one or more buffers;

means for monitoring resources in the host; and

means for allocating at least a minimal amount of resources per request, wherein the means for allocating at least the minimal amount of resources per request is connected to the removable physical storage unit, and wherein the means for allocating at least the minimal amount of resources per request is configured to:

allocate and deallocate resources selected from the group comprising the RAM, data buffers for reads and writes, descriptors, flow control counters, dynamic buffers, and time slots; and

allocate and deallocate the resources to control a power budget of the arrangement or to minimize latency of a task executing on the arrangement.

19. The arrangement according to claim 18 , wherein the means for monitoring resources in the host performs on a continual basis.

20. The arrangement according to claim 19 , wherein the means for allocating the at least the minimal amount of resources further comprises a means to provide a maximum amount of resources available.

21. The arrangement according to claim 18 , wherein the request is from at least one of hardware components and software.

22. The arrangement according to claim 18 , further comprising means for monitoring and controlling an arrangement of descriptors.

23. The arrangement according to claim 18 , further comprising means for providing a memory arrangement.

Assignments (10)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2018
From: BRIEF, DAVID CHAIM; MARKUS, YOAV; CHORESH, SHEMMER
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 044535/0565 →