IP Library Granted Patent US 11,551,990
Granted Patent B2
US 11,551,990 · App. 15/674,607 · Granted Jan 10, 2023

Method and apparatus for providing thermal wear leveling

Inventors: David A. Roberts (Boxborough, MA); Greg Sadowski (Boxborough, MA); Steven Raasch (Boxborough, MA)
Assignee: ADVANCED MICRO DEVICES, INC.
H01L23/34G05B15/02G06F1/20H01L25/0657H01L2225/06589
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,551,990
App. No.
15/674,607
Granted
Jan 10, 2023
Kind
B2
Abstract

Exemplary embodiments provide thermal wear spreading among a plurality of thermal die regions in an integrated circuit or among dies by using die region wear-out data that represents a cumulative amount of time each of a number of thermal die regions in one or more dies has spent at a particular temperature level. In one example, die region wear-out data is stored in persistent memory and is accrued over a life of each respective thermal region so that a long term monitoring of temperature levels in the various die regions is used to spread thermal wear among the thermal die regions. In one example, spreading thermal wear is done by controlling task execution such as thread execution among one or more processing cores, dies and/or data access operations for a memory.

Claims (64)

1. A method for providing thermal wear spreading among a plurality of thermal die regions in an integrated circuit the method comprising:

producing die region wear-out data representing a cumulative amount of time each of the plurality of thermal die regions has spent at a temperature level, based on temperature data from each of the plurality of thermal die regions;

storing, in persistent memory, the die region wear-out data;

determining if a short term spreading operation based on operating condition data that is not accumulated over a life of a respective thermal region should override a thermal wear spreading operation that is based on the die region wear-out data that is accumulated over the life of the respective thermal region; and

when an override condition is met, spreading thermal wear among the plurality of thermal die regions based on operating condition data that is not accumulated over the life of a respective thermal region when an override condition exists.

2. The method of claim 1 , wherein the die region wear-out data is based on temperature data accrued over the life of each respective thermal region of the plurality of thermal die regions.

3. The method of claim 1 wherein:

the temperature level includes a plurality of temperature ranges;

the die region wear-out data including data representing a cumulative amount of time each of the plurality of thermal die regions has spent in each of the plurality of temperature ranges; and

generating wear out control data by combining the cumulative amount of time each of the plurality of thermal die regions has spent in each of the plurality of temperature ranges.

4. The method of claim 1 , further comprising:

determining die region wear-out level data by combining die region wear-out data from multiple temperature ranges; and

wherein spreading thermal wear among the plurality of thermal die regions includes controlling task execution among the plurality of thermal die regions using the die region wear-out level data.

5. The method of claim 1 , further comprising wherein spreading thermal wear among the plurality of thermal die regions includes remapping of memory addresses for a die region of memory.

6. The method of claim 1 , wherein:

producing die region wear-out data includes:

categorizing each of the plurality of thermal die regions into a wear-out level based on the die region wear-out data;

ordering threads in a manner indicative of an amount of heat a thread is determined to cause when executing; and

spreading thermal wear among the plurality of thermal die regions using the die region wear-out data comprises assigning threads such that a thread causing a lower amount of heat is assigned to a die region having a higher wear-out level with respect to another die region.

7. The method of claim 1 comprising:

producing fault detection information indicating that a number of faults has occurred beyond a desired threshold;

storing, in persistent memory, the number of faults that has occurred beyond a desired threshold;

anticipating when a fault will occur based on at least both the cumulative die region wear-out data and based on the fault detection information indicating the number of faults that has occurred beyond the desired threshold; and

wherein producing fault detection information comprises producing data indicating at least one of: an error rate exceeds a threshold or logic timing delays exceed a threshold.

8. An apparatus, comprising:

at least one integrated circuit having a plurality of thermal die regions;

temperature sensors operatively coupled to the plurality of thermal die regions and operative to provide temperature data associated with the plurality of thermal die regions; and

thermal wear spreading logic, operatively coupled to the temperature sensors and operative to:

produce die region wear-out data representing a cumulative amount of time each of the plurality of thermal die regions has spent at a temperature level based on the temperature data;

store, in persistent memory, the die region wear-out data;

determine if a short term spreading operation based on operating condition data that is not accumulated over a life of a respective thermal region should override a thermal wear spreading operation that is based on the die region wear-out data that is accumulated over the life of the respective thermal region; and

when an override condition is met, spread thermal wear among the plurality of thermal die regions based on operating condition data that is not accumulated over the life of a respective thermal region when an override condition exists.

9. The apparatus of claim 8 , wherein the thermal wear spreading logic is further operative to accrue the temperature data over the life of each respective thermal region of the plurality of thermal die regions.

10. The apparatus of claim 8 , wherein:

the temperature level includes a plurality of temperature ranges;

the die region wear-out data includes data representing a cumulative amount of time each of the plurality of thermal die regions has spent in each of the plurality of temperature ranges; and

the thermal wear spreading logic is further operative to generate wear-out control data by combining the cumulative amount of time each of the plurality of thermal die regions has spent in each of the plurality of temperature ranges.

11. The apparatus of claim 8 , wherein the thermal wear spreading logic is further operative to:

determine die region wear-out data by combining die region wear-out data from multiple temperature ranges; and

spread thermal wear among the plurality of thermal die regions by controlling task execution among the plurality of thermal die regions using the die region wear-out data.

12. The apparatus of claim 8 , wherein the thermal wear spreading logic is operative to spread thermal wear among the plurality of thermal die regions by remapping of memory addresses for a die region of memory.

13. The apparatus of claim 8 , wherein the thermal wear spreading logic is further operative to:

categorize each of the plurality of thermal die regions into a wear-out level based on the die region wear-out data;

order threads in a manner indicative of an amount of heat a thread is determined to cause when executing; and

assign threads such that a thread causing a lower amount of heat is assigned to a die region having a higher wear-out level with respect to another die region.

14. An apparatus, comprising:

at least one integrated circuit package having a plurality of stacked dies each with a plurality of thermal die regions;

temperature sensors operatively coupled to the plurality of thermal die regions and operative to provide temperature data associated with the plurality of thermal die regions;

a persistent memory;

thermal wear spreading logic, operatively coupled to the persistent memory and responsive to the temperature data, and operative to:

determine die region wear-out data representing a cumulative amount of time each of the plurality of thermal die regions has spent in each of a plurality of temperature ranges based on the temperature data;

store, in the persistent memory, the die region wear-out data;

determine if a short term spreading operation based on operating condition data that is not accumulated over a life of a respective thermal region should override a thermal wear spreading operation that is based on the die region wear-out data that is accumulated over the life of the respective thermal region; and

when an override condition is met, spread thermal wear among the plurality of thermal die regions based on operating condition data that is not accumulated over the life of a respective thermal region when an override condition exists.

15. The apparatus of claim 14 , wherein the thermal wear spreading logic is further operative to accrue the temperature data over the life of each respective thermal region of the plurality of thermal die regions.

16. The apparatus of claim 14 , wherein the thermal wear spreading logic is further operative to:

determine die region wear-out level data by combining die region wear-out data from multiple temperature ranges; and

spread thermal wear among the plurality of thermal die regions by controlling task execution among the plurality of thermal die regions using the die region wear-out level data.

17. The apparatus of claim 14 , wherein the thermal wear spreading logic is operative to spread thermal wear among the plurality of thermal die regions by remapping of memory addresses for a die region of memory.

18. The apparatus of claim 14 , wherein the thermal wear spreading logic is further operative to:

categorize each of the plurality of thermal die regions into a wear-out level based on the die region wear-out data;

order threads in a manner indicative of an amount of heat a thread is determined to cause when executing; and

assign threads such that a thread causing a lower amount of heat is assigned to a die region having a higher wear-out level with respect to another die region.

19. The apparatus of claim 14 wherein the thermal wear spreading logic is operative to produce fault detection information by producing data indicating at least one of: an error rate exceeds a threshold or logic timing delays exceed a threshold.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2017
From: ROBERTS, DAVID A.; SADOWSKI, GREG; RAASCH, STEVEN
To: ADVANCED MICRO DEVICES, INC.
Reel/Frame 043805/0098 →
Continuity (1)
Related Publication 20190051576A1 · Feb 14, 2019
Cited By (2)
US 12,282,059 US 12,736,413