IP Library Granted Patent US 12,461,576
Granted Patent B2
US 12,461,576 · App. 18/354,306 · Granted Nov 4, 2025

Simulating multi-sensor environment for thermal throttling in storage device

Inventors: Sundararajan Rajagopal (Bangalore, IN); Vinod Sasidharan (Bangalore, IN); Ramanathan Muthiah (Bangalore, IN)
Assignee: Sandisk Technologies, Inc.
G06F1/206G06F1/3206G06F1/324
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 12,461,576
App. No.
18/354,306
Granted
Nov 4, 2025
Kind
B2
Abstract

Techniques described herein may be used for reducing the usage of sensors during thermal throttling in storage devices. A memory of a storage device may store map tables, each map table associated with a type of host command, each map table including entries, each entry corresponding to an initial temperature level and characteristics of a host command, and each entry indicating a change in temperature relative to the initial temperature level. A controller of the storage device may monitor operations for commands from the host system, obtain an initial temperature value from one or more temperature sensors, select entries from the map tables, based on characteristics of the operations and the initial temperature value, predict a current temperature based on the one or more entries, and in accordance with a determination that the current temperature exceeds a predetermined threshold, trigger one or more corrective actions for thermal throttling.

Claims (68)

1 . A data storage device, comprising:

a host interface for coupling the data storage device to a host system

a device memory;

a memory including one or more map tables, each map table associated with a respective type of host command, each map table including a respective plurality of entries, each entry corresponding to an initial temperature level and characteristics of a host command, and each entry indicating a change in temperature relative to the initial temperature level;

one or more temperature sensors configured to sense temperature; and

a controller configured to:

monitor operations for one or more commands from the host system;

obtain an initial temperature value from the one or more temperature sensors;

select one or more entries from the one or more map tables, based on characteristics of the operations and the initial temperature value;

predict a current temperature based on the one or more entries; and

in accordance with a determination that the current temperature exceeds a predetermined threshold, trigger one or more corrective actions for thermal throttling.

2 . The data storage device of claim 1 , wherein the controller is configured to:

monitor the operations for the one or more commands for a predetermined measurement period; and

obtain the initial temperature value from the one or more temperature sensors when the predetermined measurement period starts.

3 . The data storage device of claim 1 , wherein the controller is configured to:

monitor the operations for the one or more commands by detecting a type of host command and a duration for each command.

4 . The data storage device of claim 3 , wherein the controller is configured to:

detect a read speed for read commands, a write speed for write commands, and a number of commands per second for non-media commands.

5 . The data storage device of claim 1 , wherein the controller is configured to:

predict the current temperature based on (i) retrieving a respective entry for each of the one or more commands using the initial temperature value, and (ii) summing retrieved entries.

6 . The data storage device of claim 1 , wherein the one or more map tables include a table for write commands, a table for read commands, a table for non-media commands and a table for no operation.

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

each entry in the table for write commands corresponds to a write speed and a duration for a write command;

each entry in the table for read commands corresponds to a read speed and a duration for a read command;

each entry in the table for non-media commands corresponds to a number of non-media commands per second and a duration for a non-media command; and

each entry in the table for no operations corresponds to a duration for a no operation.

8 . The data storage device of claim 1 , wherein the controller is configured to:

perform, for the one or more corrective actions, at least one operation selected from the group consisting of: die scaling and frequency scaling.

9 . The data storage device of claim 1 , wherein the controller is configured to:

initially poll the one or more temperature sensors, during a bootup sequence, to obtain a base temperature; and

in accordance with a determination that the base temperature exceeds the predetermined threshold, trigger the one or more corrective actions for thermal throttling, before monitoring operations, for the one or more commands.

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

perform monitoring the operations, obtaining the initial temperature value, selecting the one or more entries, predicting the current temperature, and triggering the one or more corrective actions for thermal throttling, while processing the one or more commands.

11 . The data storage device of claim 1 , wherein the controller is configured to repeat, for each of subsequent measurement periods:

monitor operations for subsequent one or more commands from the host system;

select subsequent one or more entries from the one or more map tables, based on characteristics of the operations for the subsequent one or more commands and the predicted current temperature as the initial temperature value;

predict a new current temperature based on the subsequent one or more entries; and

in accordance with a determination that the new current temperature exceeds the predetermined threshold, trigger the one or more corrective actions for thermal throttling.

12 . The data storage device of claim 1 , wherein the one or more temperature sensors consist of one temperature sensor for the data storage device.

13 . A method implemented using one or more controllers for one or more data storage devices, the method comprising:

storing one or more map tables, each map table associated with a respective type of host command, each map table including a respective plurality of entries, each entry corresponding to an initial temperature level and characteristics of a host command, and each entry indicating a change in temperature relative to the initial temperature level;

monitoring operations for one or more commands from a host system;

obtaining an initial temperature value from one or more temperature sensors;

selecting one or more entries from the one or more map tables, based on characteristics of the operations and the initial temperature value;

predicting a current temperature based on the one or more entries; and

in accordance with a determination that the current temperature exceeds a predetermined threshold, triggering one or more corrective actions for thermal throttling.

14 . The method of claim 13 , further comprising:

monitoring the operations for the one or more commands for a predetermined measurement period; and

obtaining the initial temperature value from the one or more temperature sensors when the predetermined measurement period starts.

15 . The method of claim 13 , further comprising:

monitoring the operations for the one or more commands by detecting a type of host command and a duration for each command.

16 . The method of claim 15 , further comprising:

detecting a read speed for read commands, a write speed for write commands, and a number of commands per second for non-media commands.

17 . The method of claim 13 , further comprising:

predicting the current temperature based on (i) retrieving a respective entry for each of the one or more commands using the initial temperature value, and (ii) summing retrieved entries.

18 . The method of claim 13 , wherein the one or more map tables include a table for write commands, a table for read commands, a table for non-media commands and a table for no operation.

19 . The method of claim 18 , wherein:

each entry in the table for write commands corresponds to a write speed and a duration for a write command;

each entry in the table for read commands corresponds to a read speed and a duration for a read command;

each entry in the table for non-media commands corresponds to a number of non-media commands per second and a duration for a non-media command; and

each entry in the table for no operations corresponds to a duration for a no operation.

20 . A system, comprising:

means for storing one or more map tables, each map table associated with a respective type of host command, each map table including a respective plurality of entries, each entry corresponding to an initial temperature level and characteristics of a host command, and each entry indicating a change in temperature relative to the initial temperature level;

means for monitoring operations for one or more commands from a host system;

means for obtaining an initial temperature value from one or more temperature sensors;

means for selecting one or more entries from one or more map tables, based on characteristics of the operations and the initial temperature value;

means for predicting a current temperature based on the one or more entries; and

means for, in accordance with a determination that the current temperature exceeds a predetermined threshold, triggering one or more corrective actions for thermal throttling.

Assignments (8)
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 Recorded Nov 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 065657/0158 →
PATENT COLLATERAL AGREEMENT- A&R Recorded Nov 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 065656/0649 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 18, 2023
From: RAJAGOPAL, SUNDARARAJAN; SASIDHARAN, VINOD; MUTHIAH, RAMANATHAN
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 064301/0830 →
Continuity (2)
Provisional Application 63444806 · Feb 10, 2023
Related Publication 20240272688A1 · Aug 15, 2024
References Cited (9)
US 8762097B2 · Millet · 2014 [cited by applicant]
US 20080028778A1 · Millet · 2008 [cited by examiner]
US 20130046999A1 · Jung · 2013 [cited by examiner]
US 20190041928A1 · Bahirat · 2019 [cited by applicant]
US 20190335353A1 · Kocagoez · 2019 [cited by examiner]
US 20220155832A1 · Ravimohan et al. · 2022 [cited by applicant]
US 20230076481A1 · Tang · 2023 [cited by examiner]
CN 113608901A · 2021 [cited by applicant]
Zheng, Chaolun, et al. “SSD Thermal Throttling Profile Prediction Using Neural Network,” 2022 21st IEEE Intersociety Conference on Thermal and Thermomechanical Phenomena in Electronic Systems (iTherm). IEEE, 2022, 5 pag… [cited by applicant]