IP Library Granted Patent US 11,614,865
Granted Patent B2
US 11,614,865 · App. 17/724,053 · Granted Mar 28, 2023

Controlling SSD performance by the number of active memory dies

Inventors: Shuhei Tanakamaru (San Jose, CA); Dana Lynn Simonson (Owatonna, MN); Erich Franz Haratsch (Palo Alto, CA)
Assignee: SEAGATE TECHNOLOGY LLC
G06F3/0604G06F3/0653G06F3/0679G06F9/4881
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,614,865
App. No.
17/724,053
Granted
Mar 28, 2023
Kind
B2
Abstract

Improving performance in solid state devices (SSDs) by controlling or throttling the depth of the request queue. In one implementation, a method includes monitoring a request queue in a solid state device (an SSD), the request queue comprising a first request and a second request having an actual time interval therebetween, determining a number of active memory dies of the SSD, determining a target interval based on the number of active memory dies and a target number of active memory dies, and responsive to the actual time interval being less than the target interval, delaying acting on the second request until after the target interval.

Claims (33)

1. A system comprising:

a solid state device (SSD) and a host; and

an interval throttling module stored in memory and implemented by a processor, the interval throttling module located in a data request completion path of the system and comprising:

a queue memory unit,

a delay unit configured to delay acting on a second request if an outgoing interval between a first request and the second request is less than a target interval, and

a calculator unit configured to dynamically adjust the target interval based on a number of active memory dies of the SSD.

2. The system of claim 1 , wherein the interval throttling module is located in the SSD.

3. The system of claim 2 , wherein the interval throttling module is located between a back-end controller and a front-end controller.

4. The system of claim 2 , wherein the interval throttling module is located between a back-end controller and Flash memory.

5. The system of claim 1 , wherein the interval throttling module is located between the SSD and the host.

6. The system of claim 1 , wherein the interval throttling module further comprises one or more of a read/write splitter, a throttling unit having a first portion for read actions and a second portion for write actions, and a read/write merger.

7. A system comprising:

a solid state device (SSD) and a host; and

an interval throttling module stored in memory and implemented by a processor, the interval throttling module located in a data request completion path of the system and comprising:

a queue memory unit,

a delay unit configured to delay acting on a second request if an outgoing interval between a first request and the second request is less than a target interval, and

a calculator unit configured to dynamically adjust the target interval based on a number of active memory dies of the SSD and a target number of active memory dies of the SSD.

8. The system of claim 7 , wherein the calculator is further configured to adjust the target number of active memory dies based on temperature of the SSD.

9. The system of claim 7 , wherein the calculator is further configured to adjust the target number of active memory dies based on power usage of the SSD.

10. The system of claim 7 , wherein the target number of active memory dies is static.

11. The system of claim 7 , wherein the interval throttling module is located in the SSD.

12. The system of claim 11 , wherein the interval throttling module is located between a back-end controller and a front-end controller.

13. The system of claim 11 , wherein the interval throttling module is located between a back-end controller and Flash memory.

14. The system of claim 7 , wherein the interval throttling module is located between the SSD and the host.

15. A system comprising:

a solid state device (SSD) and a host; and

an interval throttling module stored in memory and implemented by a processor, the interval throttling module located in a data request completion path of the system and comprising:

a queue memory unit, and

a delay unit configured to delay acting on a second request if an outgoing interval between a first request and the second request is less than a target interval, the target interval based on a number of active memory dies of the SSD and a target number of active memory dies of the SSD.

16. The system of claim 15 further comprising a calculator unit configured to dynamically adjust the target interval based on a number of active memory dies of the SSD and a target number of active memory dies of the SSD.

17. The system of claim 16 , wherein the calculator is further configured to adjust the target number of active memory dies based on temperature of the SSD or on power usage of the SSD.

18. The system of claim 15 , wherein the interval throttling module is located in the SSD.

19. The system of claim 15 , wherein the interval throttling module is located between the SSD and the host.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 19, 2022
From: TANAKAMARU, SHUHEI; SIMONSON, DANA LYNN; HARATSCH, ERICH FRANZ
To: SEAGATE TECHNOLOGY LLC
Reel/Frame 059640/0066 →
Continuity (2)
Division 16983992 · Aug 3, 2020
Related Publication 20220236876A1 · Jul 28, 2022