-
TECHNISCHES GEBIET
-
Ausführungsformen
der Erfindung beziehen sich im Allgemeinen auf das Gebiet integrierter Schaltkreise
und insbesondere auf Systeme, Verfahren und Vorrichtungen zum Temperaturmanagement mittels
eines On-Die-Temperatursensors.
-
HINTERGRUND
-
Speicher
wird häufig
auf Module gepackt, die mehrere gleichartige (oder identische) integrierte Schaltkreise
(oder zur einfachen Bezugnahme: Chips), wie beispielsweise dynamische RAM(DRAM)-Vorrichtungen
enthalten. Das Speichermodul kann auf ein nicht leitendes Substrat
(z. B. eine Leiterplatte, vereinfacht: PCB) aufgebrachte Leiterbahnen
umfassen. Beispiele für
Speichermodule umfassen DIMMs (doppelreihige Speichermodule) und
Small Online-DIMMs (SO-DIMMs).
-
Die
Temperatur eines Halbleiterspeichers (z. B. DRAM) wird wesentlich
durch dessen Aktivitätsgrad
(z. B. die Lese- und Schreibgeschwindigkeit in den Speicherzellen)
bestimmt. Ist die Temperatur des Speichers zu hoch, so besteht die
Gefahr, dass die im Speicher gespeicherten Daten beschädigt werden oder
verloren gehen. Ferner kann der Speicher durch zu hohe Temperaturen
beschädigt
werden. Die Temperaturen der jeweiligen Speichereinrichtungen auf einem
Speichermodul können
sich in Abhängigkeit von
verschiedenen Faktoren, wie beispielsweise dem Nutzungsgrad, der
verfügbaren
Kühlung
und den spezifischen Eigenschaften, voneinander unterscheiden. Die
thermischen Einschränkungen
von Speichereinrichtungen können
zu einer Verringerung der maximalen Datenzugriffsraten, die Speichereinrichtungsschnittstellen
unterstützen
können,
führen.
-
Herkömmliche
Ansätze
zur Überwindung
der thermischen Einschränkungen
eines Speichersystems umfassen in der Regel einen externen Temperatursensor.
Das heißt,
sie umfassen in der Regel einen Temperatursensor, der an den Außenabschnitten
eines Speichermoduls angebracht ist. So kann der Temperatursensor
beispielsweise auf einer Seite einer PCB (z. B. auf einer Seite
eines DIMM oder eines SO-SIMM) befestigt sein. Dieser Temperatursensor
erfasst die Temperatur der PCB und versucht, auf Grundlage der Temperatur
der PCB eine ungefähre Temperatur
der Speichereinrichtungen abzuleiten. Der entfernte Temperatursensor
kann in der Lage sein, bei Erreichen eines vorprogrammierten Temperaturschwellenwerts
ein Ereignis einzuleiten.
-
Herkömmliche
Ansätze
zur Überwindung
der thermischen Einschränkungen
in einem Speichersystem weisen eine Reihe an Unzulänglichkeiten
auf. Speichermodule liegen häufig
mit der Hauptsystemplatine in einer Ebene. Das heißt, dass
eine Seite des Speichermoduls der Hauptsystemplatine zugewandt und
die andere Seite des Moduls der Platine abgewandt ist. Jede Seite
des Speichermoduls weist wahrscheinlich eine andere Temperatur auf,
sodass ein einzelner, auf einer Seite des Moduls angebrachter Temperatursensor
kaum in der Lage sein wird, eine korrekte Temperatur von der entgegengesetzten Seite
des Moduls abzuleiten.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Ausführungsformen
der Erfindung werden anhand von Beispielen in den Figuren der beigefügten Zeichnungen,
in denen gleiche Elemente durch Bezugszeichen gekennzeichnet sind,
erläutert,
ohne auf diese beschränkt
zu sein.
-
1 ist
ein High-Level-Blockdiagramm, das ausgewählte Aspekte eines gemäß einer
Ausführungsform
der Erfindung implementierten Rechensystems zeigt.
-
2 ist
ein High-Level-Blockdiagramm, das ausgewählte Aspekte eines gemäß einer
Ausführungsform
der Erfindung implementierten Temperaturmanagementsystems zeigt.
-
3 ist
ein Blockdiagramm, das ausgewählte
Aspekte eines gemäß einer
Ausführungsform der
Erfindung implementierten Temperaturmanagementsystems zeigt.
-
4 ist
ein High-Level-Flussdiagramm, das ausgewählte Aspekte des Sammelns und
Verarbeitens von Temperaturdaten gemäß einer Ausführungsform
der Erfindung zeigt.
-
5 ist
ein Flussdiagramm, das ausgewählte
Aspekte des Sammelns und Verarbeitens von Temperaturdaten gemäß einer
Ausführungsform
der Erfindung zeigt.
-
6 ist
ein Flussdiagramm, das ausgewählte
Aspekte einer gemäß einer
Ausführungsform der
Erfindung implementierten automatischen Drosselungsantwort zeigt.
-
7 ist
ein Blockdiagramm, das ausgewählte
Aspekte eines elektronischen Systems gemäß einer Ausführungsform
der Erfindung zeigt.
-
8 ist
ein Blockdiagramm, das ausgewählte
Aspekte eines elektronischen Systems gemäß einer Ausführungsform
der Erfindung zeigt.
-
AUSFÜHRLICHE
BESCHREIBUNG
-
Ausführungsformen
der Erfindung beziehen sich im Allgemeinen auf Systeme, Verfahren
und Vorrichtungen zum Temperaturmanagement mittels eines On-Die-Temperatursensors.
Bei einigen Ausführungsformen
umfasst ein integrierter Schaltkreis (z. B. eine Speichersteuerung)
eine Temperatursammlungslogik und eine Steuerungslogik. Die Temperatursammlungslogik
empfängt
und speichert Temperaturdaten von einer Vielzahl entfernter Speichereinrichtungen,
die jeweils einen On-Die-Temperatursensor aufweisen. Bei einigen
Ausführungsformen
stellt die Steuerungslogik einen zumindest teilweise auf den Temperaturdaten
basierenden Temperatursteuerungsmechanismus bereit. Weitere Ausführungsformen
werden beschrieben und beansprucht.
-
1 ist
ein High-Level Blockdiagramm, das ausgewählte Aspekte eines gemäß einer
Ausführungsform
der Erfindung implementierten Rechensystems zeigt. Das Rechensystem 100 umfasst
einen oder mehrere Prozessoren 110, ein oder mehrere Speichermodule 120 und
einen Chipsatz 130. Der Prozessor 110 verarbeitet
Daten, die beispielsweise auf dem Speichermodul 120 gespeichert
sind. Der Prozessor 110 kann beispielsweise ein Hauptprozessor,
ein eingebetteter Prozessor, ein partitionierter Prozessor, ein
Multikernprozessor u. ä.
sein.
-
Das
(die) Speichermodul(e) 120 kann (können) die unterschiedlichsten
Strukturen und Pinbelegungen aufweisen. So kann das Speichermodul 120 beispielsweise
als ein DIMM, ein SO-DIMM, ein Micro-DIMM u. ä. strukturiert sein. Ein elektrischer
Steckkontaktverbinder 121 kann nahezu jede Pinbelegung,
einschließlich
240 pin, 144 pin, 72 pin etc., aufweisen.
-
Das
Speichermodul 120 umfasst die Speichereinrichtungen 122–128.
Zur Vereinfachung der Darstellung sind lediglich vier Speichereinrichtungen abgebildet.
Es gilt darauf hinzuweisen, dass Ausführungsformen der Erfindung
auch mehr oder weniger Speichereinrichtungen umfassen können. Die
Speichereinrichtungen 122–128 können die
unterschiedlichsten Speichereinrichtungen, einschließlich beispielsweise
DRAMs, sein.
-
Bei
einigen Ausführungsformen
umfasst jede Speichereinrichtung 122–128 einen entsprechenden On-Die-Temperatursensor 140–148.
Der Begriff „On-Die" bezieht sich auf
die Anordnung der Temperatursensoren 140–148,
die sich jeweils auf demselben Chip wie die entsprechenden Speichereinrichtungen 122–128 befinden.
Ein On-Die-Temperatursensor kann einer der unterschiedlichsten On-Die-Temperatursensoren,
einschließlich
beispielsweise einer Temperaturdiode, sein. Im Gegensatz zu herkömmlichen
Systemen sind On-Die-Temperatursensoren 140–148 in
der Lage, die tatsächliche
Gerätetemperatur
der Speichereinrichtungen 122–128 zu erfassen,
da sie sich im Inneren der Speichereinrichtungspakete befinden.
Darüber
hinaus kann bei Ausführungsformen,
bei denen jede Speichereinrichtung einen entsprechenden On-Die-Temperatursensor
umfasst, die Temperatur jeder Speichereinrichtung einzeln erfasst
werden. Wie nachstehend genauer beschrieben wird, ist ein Temperaturmanagementsystem
so in der Lage, Temperaturdifferenzen, die beispielsweise auf Unterschiede
beim Luftdurchsatz in einem Speichermodul zurückzuführen sind, zu minimieren.
-
Bei
alternativen Ausführungsformen
umfasst lediglich eine Teilmenge der Speichereinrichtungen 122–128 einen
On-Die-Temperatursensor 140–148. So kann beispielsweise
bei einigen Ausführungsformen
jede N-te (z. B. zweite, dritte, vierte etc.) Speichereinrichtung
einen On-Die-Temperatursensor aufweisen. Alternativ kann zumindest
eine Speichereinrichtung auf jeder Seite des Speichermoduls 120 einen
On-Die-Temperatursensor
umfassen. In noch einer anderen Ausführungsformen umfasst zumindest eine
Speichereinrichtung auf dem Speichermodul 120 einen On-Die-Temperatursensor.
-
Der
Chipsatz 130 umfasst eine Gruppe integrierter Schaltkreise,
die zusammenwirken, um Informationen an den Prozessor 110 und
von diesem zu übertragen.
In der dargestellten Ausführungsform umfasst
der Chipsatz 130 einen Speichersteuerungsknoten 132 und
eine Ein-/Ausgabesteuerung 134. Der Speichersteuerungsknoten 132 stellt
eine Schnittstelle zwischen dem Prozessor 110 und beispielsweise
dem Speichermodul 120 und der Ein-/Ausgabesteuerung 134 bereit.
-
Der
Speichersteuerungsknoten 132 umfasst eine Speichersteuerung 133,
eine Prozessorschnittstelle 136 und eine Ein-/Ausgabeschnittstelle 138. Die
Prozessorschnittstelle 136 kann eine Schnittstelle beispielsweise
zu einem Frontside-Bus oder einer Cache-kohärenten Verbindung bereitstellen.
Die Ein-/Ausgabe-Schnittstelle kann eine Schnittstelle zu einer
der unterschiedlichsten Ein-/Ausgabeverbindungen, einschließlich solcher,
die auf PCIe(Peripheral Component Interconnect Express Technology)-Technologie
basieren, bereitstellen.
-
Bei
einigen Ausführungsformen
umfasst die Speichersteuerung 133 eine Temperatursammel- und Steuerungslogik 135.
Die Temperatursammel- und Steuerungslogik 135 sammelt Temperaturdaten der
On-Die-Temperatursensoren 140–148. Der Begriff „Temperaturdaten" bezieht sich im
weitesten Sinne auf digitalisierte Informationen, die Aufschluss über die
Gerätetemperatur
liefern. Der Begriff „Temperaturdaten" kann auch digitalisierte
Informationen umfassen, die angeben, ob eine oder mehrere Temperaturschwellen
gekreuzt wurden. Bei einigen Ausführungsformen verarbeitet die
Temperatursammel- und Steuerungslogik 135 die Temperaturdaten
und stellt auf Grundlage des Ergebnisses ein Temperaturmanagement
für die
Speichereinrichtungen 122–128 bereit. Die Temperatursammel-
und Steuerungslogik 135 wird nachstehend unter Bezugnahme
auf die 2–6 genauer
beschrieben.
-
Bei
einer alternativen Ausführungsform
kann der Chipsatz 130 mehr oder weniger integrierte Schaltkreise
umfassen. Darüber
hinaus können
die von dem Speichersteuerungsknoten 132 und/oder der Ein-/Ausgabesteuerung 134 bereitgestellten Funktionen
durch mehr, weniger und/oder andere integrierte Schaltkreise bereitgestellt
sein. So ist die Speichersteuerung 133 bei einigen Ausführungsformen
beispielsweise auf demselben Chip wie der Prozessor 110 implementiert.
-
2 ist
ein High-Level-Blockdiagramm, das ausgewählte Aspekte eines gemäß einer
Ausführungsform
der Erfindung implementierten Rechensystems zeigt. Das Rechensystem 200 umfasst eine
Speichersteuerung 210 und ein Speichermodul 220,
die über
eine Speicherverbindung 240 miteinander verbunden sind.
Die Speicherverbindung 240 dient zum Transport von Speicherdaten,
Adressinformationen u. ä.
zwischen der Speichersteuerung 210 und dem Speichermodul 220.
Bei einigen Ausführungsformen
ist die Speicherverbindung 240 ein Multidrop-Speicherbus.
Bei anderen Ausführungsformen ist
die Speicherverbindung 240 eine Punkt-zu-Punkt-Verbindung.
Bei noch anderen Ausführungsformen
ist die Speicherverbindung 240 eine Cache-kohärente Verbindung.
-
Das
Speichermodul 220 umfasst die Speichereinrichtungen 222–228.
Bei einigen Ausführungsformen
handelt es sich bei den Speichereinrichtungen 222–228 um
herkömmliche
dynamische Speicher mit wahlweisem Zugriff (DRAM), wie beispielsweise
Double Data Rate II (DDR2) DRAM. Bei alternativen Ausführungsformen
kann ein anderer Speichereinrichtungstyp verwendet werden. Die Speichereinrichtungen 222–228 umfassen
On-Die-Temperatursensoren 230–238. Die On-Die-Temperatursensoren 230–238 erfassen
die Temperaturen der entsprechenden Speichereinrichtungen 222–228 und
senden die erfassten Temperaturdaten über die Verbindung 240 an
die Speichersteuerung 210.
-
Bei
einigen Ausführungsformen
wird die vorhandene Speicherverbindungssignalisierung und -architektur
für den
Transport der Temperaturdaten genutzt. So können die Temperaturdaten beispielsweise
durch Multiplexen der Temperaturdaten auf einer vorhandenen Speicherverbindung 240 an
die Speichersteuerung 210 gesendet werden. Die Temperaturdaten
können
innerhalb geeigneter Intervalle, wie beispielsweise während einer
Ruhephase der Speicherschnittstelle, gemultiplext werden. Die Temperaturdaten
können
beispielsweise während
Auffrischungszyklen, Buskalibrierungszyklen u. ä. gelesen werden. Auf diese
Weise lassen sich Ausführungsformen
der Erfindung ohne eine gesonderte Signalisierung für das Temperaturmanagement
implementieren.
-
Die
Speichersteuerung 210 umfasst ein Temperaturmanagementsystem 212 und
eine Speicherschnittstelle 218. Bei einigen Ausführungsformen
sammelt und verarbeitet das Temperaturmanagementsystem 212 Temperaturdaten
von den Temperatursensoren 230–238. Darüber hinaus
kann das Temperaturmanagementsystem 212 Temperatursteuerungsmechanismen
umfassen, um eine Antwort einzuleiten, wenn die Temperatur der Speichereinrichtungen 222–228 einen
Schwellenwert (oder eine dem Schwellenwert zugewiesene Richtlinie) übersteigt.
Wie nachstehend genauer beschrieben wird, versetzt das Temperaturmanagementsystem 212 die
Speichersteuerung 210 in die Lage, von den On-Die-Temperatursensoren 230–238 bereitgestellte Temperaturdaten
zu sammeln, zu verarbeiten und/oder auf diese zu antworten.
-
Bei
einigen Ausführungsformen
umfasst das Temperaturmanagementsystem 212 eine Temperatursammlungslogik 214 und
eine Steuerungslogik 216. Die Temperatursammlungslogik 214 empfängt, speichert
und verarbeitet Temperaturdaten von den Speichereinrichtungen 222–228.
Die Temperatursammlungslogik 214 kann beispielsweise Sammlungsregister,
Sammlungssteuerungsregister, Berechnungsregister u. ä. umfassen.
Die Steuerungslogik 216 umfasst eine Logik zum Auslösen eines
Temperatursteuerungsmechanismus, wenn die Temperaturdaten (oder
die verarbeiteten Temperaturdaten) den Schwellenwert überschreiten.
Die Steuerungslogik 216 kann Temperatur-Trip-Steuerungsregister und
eine Ereignissteuerungslogik umfassen. Das Temperaturmanagementsystem 212 wird
nachstehend unter Bezugnahme auf die 3–6 genauer
beschrieben.
-
Es
gilt anzumerken, dass die Funktionen der Temperatursammlungslogik 214 und
der Steuerungslogik 216 bei einigen Ausführungsformen
in einer anderen Weise verteilt sein können. So kann die Steuerungslogik 216 bei
einigen Ausführungsformen beispielsweise
die von der Sammlungslogik 212 gespeicherten Temperaturdaten
verarbeiten. Darüber hinaus
kann das Temperaturmanagementsystem 212 mehr, weniger und/oder
andere als die in 2 abgebildeten Bauelemente umfassen.
-
3 ist
ein Blockdiagramm, das ausgewählte
Aspekte eines gemäß einer
Ausführungsform der
Erfindung implementierten Temperaturmanagementsystems zeigt. Bei
einigen Ausführungsformen befindet
sich das Temperaturmanagementsystem 300 auf demselben Chip
wie eine Speichersteuerung des Rechensystems. Die Speichersteuerung
ihrerseits kann auf demselben Chip wie ein Prozessor liegen oder
Teil des System-Chipsatzes sein. Bei noch anderen Ausführungsformen
kann das Temperaturmanagementsystem 300 auf einem anderen
Chip innerhalb des Chipsatzes implementiert sein.
-
Die
Temperatursammlungsregister 302 speichern die von den entsprechenden
Speichereinrichtungen (z. B. den in 2 abgebildeten
Speichereinrichtungen 222–228) gesammelten
Temperaturdaten. Bei einigen Ausführungsformen speichert jedes Temperatursammlungsregister 302 Temperaturdaten für eine Speicherebene
(z. B. Ebene 0, Ebene 1, ... Ebene N). Die Temperatursammlungsregister 302 können als
eine der unterschiedlichsten Anordnungen von Registern, einschließlich beispielsweise Schieberegister,
implementiert sein. Bei einigen Ausführungsformen werden die Temperaturdaten
jedes Mal, wenn sie über
eine Speicherverbindung gelesen werden, im Temperatursammlungsregister 302 gespeichert.
Die für
jeden nachfolgenden Lesevorgang genutzten Register 302 können gewechselt
werden, sodass die Sammlung der Register 302 den Verlauf der
letzten Proben darstellt.
-
Die
Temperatursammlungssteuerungsregister 310 speichern Steuerungswerte
für das
Temperaturmanagementsystem 300. Bei der dargestellten Ausführungsform
umfassen die Sammlungssteuerungsregister 310 ein Lesegeschwindigkeitsregister 312 und
ein Temperatur-Offsetregister 314.
Bei einer alternativen Ausführungsform
kann das Sammlungssteuerungsregister 310 mehr, weniger
und/oder andere Register umfassen. Der im Register 312 gespeicherte
Lesegeschwindigkeitswert gibt die Geschwindigkeit an, mit der Daten
von einem oder mehreren entfernten On-Die-Temperatursensoren (z.
B. den in 2 dargestellten Temperatursensoren 230–238) abgelesen
werden.
-
Das
Temperatur-Offsetregister 314 speichert einen oder mehrere
Offset-Werte, der (die) genutzt werden kann (können), um die von den entfernten On-Die-Temperatursensoren
abgelesenen Temperaturdaten abzugleichen. Bei einigen Ausführungsformen
umfassen die von den On-Die-Temperatursensoren übermittelten Temperaturdaten
einen Kalibrierfehler. So können
die Temperatursensoren beispielsweise einen relativen statt eines
absoluten Temperaturwerts übermitteln.
Der (die) im Register 314 gespeicherte(n) Offset-Wert(e)
können
genutzt werden, um beispielsweise relative Temperaturwerte an absolute
Temperaturwerte anzupassen.
-
Bei
einigen Ausführungsformen
verarbeitet das Temperaturmanagementsystem 300 die gesammelten
Temperaturdaten. So kann das Temperaturmanagementsystem 300 beispielsweise
eine oder mehrere Durchschnittstemperaturen, gleitende Durchschnittstemperatur(en),
Mindesttemperatur(en), Höchsttemperatur(en)
u. ä. berechnen.
Bei einer alternativen Ausführungsform
können
anhand der Temperaturdaten mehr, weniger und/oder andere Berechnungen
ausgeführt
werden.
-
Die
Temperaturberechnungsregister 320 können Rechenwerte im Zusammenhang
mit der Verarbeitung der Temperaturdaten speichern. Bei der dargestellten
Ausführungsform
umfassen die Berechnungsregister 320 ein oder mehrere Höchsttemperaturregister
(Max-Temp-Register) 322,
ein oder mehrere Durchschnittstemperaturregister (Ave-Temp-Register) 324 und
ein oder mehrere Mindesttemperaturregister (Min-Temp-Register) 326.
Bei einer alternativen Ausführungsform
können
die Berechnungsregister 320 mehr, weniger und/oder andere
Register umfassen.
-
Das
(die) Max-Temp-Register 322 speichert (speichern) eine
oder mehrere berechnete Höchsttemperaturen.
Analog speichert (speichern) das (die) Min-Temp-Register 326 eine
oder mehrere berechnete Mindesttemperaturen. Bei einigen Ausführungsformen
werden die in den Register 322 und 326 gespeicherten
Werte genutzt, um zu ermitteln, ob die Temperaturen der entsprechenden
Speichereinrichtungen einen Temperaturschwellenwert überschritten haben.
Der Begriff „Trip-Punkt" bezieht sich auf
einen Schwellenwert, der einen Temperaturschwellenwert darstellt.
-
Das
Ave-Temp-Register 324 speichert einen oder mehrere berechnete
Durchschnittstemperaturwerte. Bei einigen Ausführungsformen speichert das Ave-Temp-Register 324 einen
oder mehrere gleitende Durchschnittstemperaturwerte. Der Begriff „gleitender
Durchschnitt" bezieht
sich auf eine Durchschnittstemperatur der Einrichtungen im zeitlichen Verlauf.
Die Generierung eines gleitenden Durchschnitts kann im Allgemeinen
zwei Schritte umfassen, und zwar das Berechnen einer Durchschnittstemperatur
der Speichereinrichtungen und das Berechnen einer Durchschnittstemperatur
der Einrichtungen im zeitlichen Verlauf. Bei einigen Ausführungsformen
wird der gleitende Durchschnitt anhand folgender Formel berechnet:
Gleitender Durchschnitt = (letzter gleitender Durchschnitt + aktueller
Durchschnitt)/2.
-
Die
Temperatur-Trip-Steuerungsregister 330 speichern Trip-Punkte
und zugehörige
Werte. Es können
eine Anzahl verschiedener Trip-Punkte vorliegen und, wie nachstehend
genauer beschrieben wird, einige der Trip-Punkte programmierbar
sein. Das Hot-Trip-Register 334 speichert einen Wert, der einen
Hot-Trip-Punkt bezeichnet. Der Begriff „Hot-Trip-Punkt" bezieht sich auf
einen Schwellenwert, bei dessen Kreuzen die Anwendung einer automatischen
Hardware-Drosselung eingeleitet wird. Das Critical-Trip-Register 332 speichert
einen Wert, der einen Critical-Trip-Punkt bezeichnet. Der Begriff „Critical-Trip-Punkt" bezieht sich auf
einen Schwellenwert, bei dessen Kreuzen das Rechensystem (z. B.
das in 1 abgebildete Rechensystem 100) abgeschaltet
wird.
-
Wie
vorstehend beschrieben, können
einige der Trip-Punkte programmierbar sein. So können bei der dargestellten
Ausführungsform
beispielsweise die zusätzlichen
Trip-Register 336 und 338 jeweils einen oder mehrere
programmierbare Trip-Punkte speichern. Programmierbare Trip-Punkte
können
zur Generierung von Software-Ereignissen in Verbindung mit der automatischen
Temperaturdrosselung genutzt werden. Die automatische Temperaturdrosselung
wird nachstehend unter Bezugnahme auf 6 genauer
beschrieben.
-
Bei
einer Ausführungsform
können
die zusätzlichen
Trip-Register 336 und 338 mit einem oder mehreren
Steuerungsregistern interagieren, um das Bedienen eines mit dem
Temperaturmanagement in Verbindung stehenden Software-Ereignisses
zu steuern. Bei der dargestellten Ausführungsform beispielsweise können die
zusätzlichen
Trip-Register 336 und 338 mit einem SMI(System
Management Interupt)-Ereignissteuerungsregister 350, einem SCI(System
Control Interrupt)-Ereignissteuerungsregister 352, einem
INTR(Interrupt)-Ereignissteuerungsregister 354, einem Ereignisstatusregister 356 oder
mehreren derselben interagieren.
-
Das
SMI-Ereignissteuerungsregister 350 bedient Management-Ereignisse,
die einen SMI-Pin des Prozessors nutzen. Der SMI-Pin kann genutzt werden,
um eine fest programmierte, betriebssystemunabhängige Antwortsoftware auf Systemebene auszulösen. Im
Gegensatz dazu bedient das SCI-Ereignissteuerungsregister 352 alle
Ereignisse, die zusammen mit einem Betriebssystem bearbeitet werden.
SCI-Ereignisse werden in der Regel mit dem ACPI(Advanced configuration
and power interface)-Systemsprachencode (ASL) bearbeitet, können aber
auch mit dem BIOS-Code (BIOS = Allgemeines Ein-/Ausgabe-System)
bearbeitet werden.
-
Bei
einigen Ausführungsformen
bedient das INTR-Ereignissteuerungsregister 354 Software
auf Treiberebene. Die Software auf Treiberebene kann ein Temperaturmanagement
auf relativ hohem Niveau unterstützen,
da das Temperaturmanagementsystem hier interaktiver agieren kann.
So kann die Software auf Treiberebene Bezug auf Vergangenheitsdaten
(z. B. auf frühere
Temperaturdaten und Berechnungen auf Grundlage der Temperaturdaten), Systeminformationen,
Daten zu anderen Geräten
u. ä. nehmen.
Die Software auf Treiberebene kann ferner zusätzliche Eigenschaften aufweisen,
wie beispielsweise die Fähigkeit,
einen Lüfter
ein- und auszuschalten.
-
Bei
einigen Ausführungsformen
kann eine Hierarchie von Trip-Punkten genutzt werden. So können die
programmierbaren Trip-Punkte in den Register 336 und 338 beispielsweise
zunächst
genutzt werden, um auf Grundlage von Software-Ereignissen relativ
elegante Temperatursteuerungsmechanismen und/oder proportional anpassbare
Drosselungsmechanismen (die nachstehend genauer beschrieben werden)
bereitzustellen. Falls es nicht gelingt, die Einrichtungstemperatur
anhand der relativ eleganten Mechanismen unterhalb eines (z. B.
im Hot-Trip-Register 334 gespeicherten) Hot-Trip-Punkts
zu halten, kann die Hardware-Drosselung eingesetzt werden, um ein
Temperaturmanagement bereitzustellen. Falls die Einrichtungstemperatur
dann immer noch weiter steigt und den (z. B. in Critical-Trip-Register 332 gespeicherten)
Critical-Trip-Punkt kreuzt, kann das System abgeschaltet werden,
um eine Beschädigung
des Systems und/oder der im Speicher gespeicherten Daten zu verhindern
oder zu minimieren.
-
Die
Ausführungsformen
der Erfindung sind nicht auf die in 3 dargestellten
Strukturen und Funktionen beschränkt.
Bei alternativen Ausführungsformen
kann das Temperaturmanagementsystem 300 mehr, weniger und/oder
andere Bauelemente aufweisen.
-
4 ist
ein High-Level-Flussdiagramm, das ausgewählte Aspekte des Sammelns und
Verarbeitens von Temperaturdaten gemäß einer Ausführungsform
der Erfindung zeigt. Wie Prozessblock 402 zeigt, sammelt
ein Temperaturmanagementsystem (z. B. das in 3 dargestellte
Temperaturmanagementsystem 300) Temperaturdaten von einem
oder mehreren entfernten On-Die-Temperatursensoren. Bei einigen
Ausführungsformen
liest das Temperaturmanagementsystem die Temperaturdaten anhand
eines speziellen Befehls, der in einem geeigneten Intervall ausgegeben
wird. Die Daten können
jedes Mal, wenn sie gelesen werden, in einem aus einer Reihe temporärer Register
(z. B. in dem in 3 abgebildeten Temperatursammlungsregister)
gespeichert werden.
-
Bei
Prozessblock 404 verarbeitet das Temperaturmanagementsystem
die von den On-Die-Sensoren
gesammelten Temperaturdaten. Bei einigen Ausführungsformen umfasst das Verarbeiten
der Temperaturdaten verschiedene Berechnungen auf Grundlage der
Daten. Beispiele solcher Berechnungen umfassen die Berechnung einer
Höchsttemperatur,
einer Mindesttemperatur, einer Durchschnittstemperatur, einer gleitenden
Durchschnittstemperatur o. ä..
Das Verarbeiten der Temperaturdaten kann ferner das Kalibrieren
der Daten anhand eines Offsets umfassen.
-
Bei
Prozessblock 406 bestimmt das Temperaturmanagementsystem,
ob ein Temperaturschwellenwert erreicht wurde. Das Bestimmen, ob
ein Temperaturmanagementschwellenwert erreicht wurde, kann das Vergleichen
verarbeiteter Temperaturdaten mit einem Temperaturschwellenwert
umfassen. Der Begriff „verarbeitete
Temperaturdaten" bezieht
sich auf Daten, die durch Berechnungen mittels der Temperaturdaten
entstehen. Beispiele für
verarbeitete Temperaturdaten können
eine Höchsttemperatur, eine
Mindesttemperatur, eine Durchschnittstemperatur, eine gleitende
Durchschnittstemperatur o. ä.
umfassen.
-
Wurde
ein Temperaturschwellenwert erreicht, so kann das Temperaturmanagementsystem einen
Temperatursteuerungsmechanismus, wie den mit 408 gekennzeichneten,
auslösen.
Der Begriff „Temperatursteuerungsmechanismus" bezieht sich im
weitesten Sinne auf jegliche Funktionen, anhand derer sich die Temperatur
einer Speichereinrichtung oder einer Reihe von Speichereinrichtungen
steuern lässt.
Ein Temperatursteuerungsmechanismus kann eine auf einem Ereignis
und/oder einer automatischen Drosselungsantwort basierende Software
umfassen. Temperatursteuerungsmechanismen werden nachstehend unter
Bezugnahme auf die 5 und 6 genauer
beschrieben.
-
5 ist
ein Flussdiagramm, das ausgewählte
Aspekte des Sammelns und Verarbeitens von Temperaturdaten gemäß einer
Ausführungsform
der Erfindung zeigt. Wie Prozessblock 502 zeigt, werden die
Temperaturdaten in einer bestimmten Geschwindigkeit gelesen. Bei
einigen Ausführungsformen
wird die Lesegeschwindigkeit durch einen im Lesegeschwindigkeitsregister
(z. B. in dem in 3 abgebildeten Lesegeschwindigkeitsregister 312)
gespeicherten Wert bestimmt. Die Lesegeschwindigkeit kann einem
bestimmten Ereignis, wie beispielsweise einem Auffrischungszyklus
oder einem Buskalibrierungszyklus, entsprechen. Ferner kann der
Lesebefehl in einer dem Ereignis in geeigneter Weise entsprechenden
Häufigkeit
ausgegeben werden (z. B. wenn das Ereignis häufiger auftritt, als sich die
Einrichtungstemperatur ändern
kann). Wenn beispielsweise die Auffrischung alle 20 Millisekunden
erfolgt, kann der Lesebefehl alle N Auffrischungszyklen ausgegeben
werden.
-
Bei
Prozessblock 504 werden die Temperaturdaten von einem oder
mehreren entfernten On-Die-Temperatursensoren
gesammelt. Bei einigen Ausführungsformen
werden die Temperaturdaten kontinuierlich während der inaktiven Zeit auf
einer Speicherverbindung (z. B. während Auffrischungszyklen,
Verbindungskalibrierungszyklen etc.) gesammelt. Jedes Mal, wenn
das Temperaturmanagementsystem die Temperaturdaten über die
Speicherverbindung sammelt, kann es die Daten in einem aus einer
Reihe verschiedener temporärer
Register speichern (z. B. in dem in 3 abgebildeten
Temperatursammlungsregister 302). Die jeweiligen temporären Register
können
für jeden
nachfolgenden Lesevorgang gewechselt werden, sodass die Sammlung der
Register den Verlauf der letzten Temperaturproben darstellt.
-
Bei
Prozessblock 506 sind die Temperaturdaten bezüglich eines
Offsets einstellbar. Dank dieser Einstellung kann das Temperaturmanagementsystem
Kalibrierfehler in den Temperaturdaten berücksichtigen. So können die
On-Die-Temperatursensoren beispielsweise einen relativen statt eines absoluten
Temperaturwerts übermitteln.
Bei einigen Ausführungsformen
kann das Temperaturmanagementsystem die relativen Temperaturwerte
mittels eines Offset-Werts, der beispielsweise in einem Temperatur-Offsetregister
(z. B. in dem in 3 abgebildeten Temperatur-Offsetregister 314)
gespeichert ist, an die absoluten Temperaturwerte anpassen.
-
Die
gesammelten Temperaturdaten können mittels
unterschiedlichster Berechnungen, Algorithmen, Richtlinien u. a.
verarbeitet werden. Bei Prozessblock 508 wird beispielsweise
ein gleitender Durchschnitt mittels gesammelter Temperaturdaten berechnet.
Bei 510 werden Höchst-
und/oder Mindesttemperaturwerte bestimmt. Bei einigen Ausführungsformen
kann das Temperaturmanagementsystem die Höchst- und Mindesttemperaturen
für alle Speichereinrichtungen,
die On-Die-Temperatursensoren aufweisen, berechnen. Bei alternativen
Ausführungsformen
kann das Temperaturmanagementsystem die Höchst- und Mindesttemperaturen
für ausgewählte Teilmengen
der Speichereinrichtungen (z. B. jede Ebene, jedes Modul, jeder
Kanal etc.) berechnen.
-
Bei
Prozessblock 512 werden die verarbeiteten Temperaturdaten
(und/oder die Temperaturrohdaten) genutzt, um zu ermitteln, ob die
Speichereinrichtungstemperaturen einen Temperaturschwellenwert überschritten
haben. Bei einigen Ausführungsformen
kann das Temperaturmanagementsystem eine Anzahl verschiedener Temperaturschwellenwerte
nutzen, und es werden die verarbeiteten Temperaturdaten genutzt
um zu ermitteln, welche Schwellenwerte gegebenenfalls gekreuzt bzw. überschritten wurden.
Bei einigen Ausführungsformen
wird Hysterese eingesetzt, um die Anzahl thermischer Steuerungsereignisse,
die generiert werden, wenn die Temperaturen um einen Trip-Punkt
fluktuieren, zu minimieren. Der Einsatz von Hysterese kann auf einem oder
mehreren, beispielsweise in einem Hysteresetemperaturregister (z.
B. dem in 3 abgebildeten Hysteresetemperaturregister 340)
gespeicherten Hysterese-Werten basieren.
-
Bei
Prozessblock 514 kann das Temperatursteuerungssystem einen
Temperatursteuerungsmechanismus auslösen, sobald die Einrichtungstemperatur
(die beispielsweise durch die verarbeiteten Temperaturdaten und/oder
die Temperaturrohdaten angezeigt wird) einen oder mehrere Temperaturschwellenwerte
kreuzt bzw. überschreitet.
Ein Temperatursteuerungsmechanismus kann beispielsweise eine automatische
Drosselungsantwort und/oder ein Software-Ereignis umfassen. Die
automatische Drosselungsantwort kann beispielsweise eine hardwarebasierte
Drosselung der Datenübertragungsgeschwindigkeit
der Speicherverbindung umfassen. Die Software- Ereignisse können Interrupts, SMI-Ereignisse,
SCI-Ereignisse oder sogar eine Selbstabschaltung des Systems umfassen.
Das Temperaturmanagementsystem kann eine Selbstabschaltung des Systems
zur Vermeidung einer gravierenden Beschädigung und/oder von Datenverlust
nutzen, wenn vorausgegangene Temperatursteuerungsmechanismen (z.
B. Drosselung der Datenübertragungsgeschwindigkeit,
Software-Ereignisse etc.) nicht wirksam genug waren, um den Temperaturanstieg
zu drosseln.
-
Bei
Prozessblock 516 kann das Temperatursteuerungssystem einen
oder mehrere Vorgänge auslösen, wenn
die Einrichtungstemperaturen einen oder mehrere Temperaturschwellenwerte
nicht gekreuzt haben. So kann das Temperatursteuerungssystem beispielsweise
eine zuvor angewandte Temperaturdrosselung löschen. Ferner kann ein Schleifenzähler gelöscht werden,
um einen angepassten Drosselungsmechanismus rückzusetzen. Bei einigen Ausführungsformen
kann ein Software-Ereignis ausgelöst werden, wenn die Einrichtungstemperatur
unterhalb eines oder mehrerer Temperaturschwellenwerte liegt.
-
Der
in 5 dargestellte Sammlungs- und Berechnungsvorgang
ist in einer programmierbaren Geschwindigkeit wiederholbar. Die
programmierbare Geschwindigkeit kann nach Belieben verringert oder erhöht werden,
um die Erfassung schneller thermischer Transienten oder sehr langsamer,
thermischer Querbeeinflussung zwischen den Komponenten zu ermöglichen.
-
Wie
vorstehend beschrieben, nutzen Ausführungsformen der Erfindung
ein beispielsweise in der Speichersteuerung befindliches Temperaturmanagementsystem,
um Temperaturdaten von einer Anzahl entfernter On-Die-Temperatursensoren
zu sammeln und zu verarbeiten. Da das Temperaturmanagementsystem über kontinuierliche
Daten über
die aktuellen Einrichtungstemperaturen verfügen kann, ist es in der Lage,
mehr automatische Drosselungsmechanismen als bislang zu entwickeln.
So kann das Temperaturmanagementsystem beispielsweise den Abstand
zu Zieltemperaturen, die Geschwindigkeit von Temperaturveränderungen
und/oder das Integral der Temperaturveränderung ableiten, um eine proportionale
Regelkreisantwort abzuleiten. Diese proportionale Regelkreisantwort
minimiert die drastischen (z. B. over-guardbanding und leistungsreduzierenden)
Drosselungsantworten, die bislang für herkömmliche Temperaturdrosselungsmechanismen
typisch waren.
-
6 ist
ein Flussdiagramm, das ausgewählte
Aspekte einer gemäß einer
Ausführungsform der
Erfindung implementierten automatischen Drosselungsantwort zeigt.
Der in 6 dargestellte Prozess ist ein Beispiel eines
Temperaturmanagementsystems mit proportional geschlossener Schleife.
Bei alternativen Ausführungsformen
kann die automatische Drosselungsantwort anders implementiert sein. Wie
nachstehend genauer beschrieben wird, wendet das Temperaturmanagementsystem
eine zunehmende oder abnehmende Drosselungssteuerungsmenge auf Grundlage
des kontinuierlichen Stroms der von ihm gesammelten Temperaturdaten
an.
-
Bei
Prozessblock 602 wird die automatische Drosselungsantwort
ausgelöst.
Bei einigen Ausführungsformen
wird die automatische Drosselungsantwort ausgelöst, falls/sobald ein Temperaturschwellenwert
gekreuzt wird (siehe beispielsweise Prozessblock 514 in 5).
Das Kreuzen eines Temperaturschwellenwerts kann das Überschreiten und/oder
das Unterschreiten des Schwellenwerts umfassen.
-
Bei
Prozessblock 604 berechnet das Temperaturmanagementsystem
einen Temperaturfehler anhand einer Zieltemperatur. Der Begriff „Zieltemperatur" bezieht sich auf
ein Temperaturziel des Temperaturmanagementsystems. Die Zieltemperaturen
können
festgelegt oder konfigurierbar (z. B. durch Einstellen eines Werts
in einem Register) sein. Bei einigen Ausführungsformen umfasst das Berechnen
des Temperaturfehlers das Berechnen eines Abstands von der Zieltemperatur
und/oder eine Temperaturänderungsgeschwindigkeit
bezüglich
der Zieltemperatur. Bei anderen Ausführungsformen können andere Berechnungen
zur Bestimmung des Temperaturfehlers genutzt werden.
-
Bei
Prozessblock 606 berechnet das Temperaturmanagementsystem
eine Steuerungseinstellung. Der Begriff „Steuerungseinstellung" bezieht sich auf
einen Indikator (z. B. einen Wert, eine Reihe von Werten etc), der
angibt, wie stark die angewandte Temperaturdrosselungsmenge zu erhöhen oder
zu verringern ist. Das Temperaturmanagementsystem kann die Temperaturdrosselungsmenge
auf Grundlage eines der unterschiedlichsten Faktoren adaptiv erhöhen oder
verringern. Bei einigen Ausführungsformen
verwendet das Temperaturmanagementsystem einen Schleifenzähler um
zu bestimmen, wie häufig die
Einrichtungstemperaturen einen Temperaturschwellenwert gekreuzt
haben. Wenn der Zähler steigt,
kann das Temperaturmanagementsystem die angewandte Temperaturdrosselungsmenge
proportional erhöhen.
In ähnlicher
Weise kann das Temperaturmanagementsystem die angewandte Temperaturdrosselungsmenge
senken, wenn der Zähler
abnimmt. Bei alternativen Ausführungsformen
kann die proportionale Erhöhung
oder Verringerung der Temperaturdrosselung auf anderen Faktoren
basieren.
-
Bei
Prozessblock 610 verwendet das Temperaturmanagementsystem
eine Speicherschnittstellendrosselung. Die Verwendung der Speicherschnittstellendrosselung
kann das Erhöhen
oder Verringern der Datenübertragungsgeschwindigkeit
der Speicherverbindung zumindest teilweise auf Grundlage der im
Prozessblock 606 berechneten Steuerungseinstellung umfassen.
In Ausführungsformen,
die einen Schleifenzähler
verwenden, kann der Schleifenzähler
jedes Mal erhöht
werden, wenn die automatische Drosselung, wie bei 612 gezeigt,
aufgerufen wird. Es gilt anzumerken, dass gemäß einer Ausführungsform
der Erfindung implementierte automatische Temperaturantworten mehr,
weniger oder andere als die in 6 gezeigten
Prozessblöcke
aufweisen können.
-
7 ist
ein Blockdiagramm, das ausgewählte
Aspekte eines elektronischen Systems gemäß einer Ausführungsform
der Erfindung zeigt. Das elektronische System 700 umfasst
einen Prozessor 710, eine Speichersteuerung 720,
Speicher 730, eine Ein-/Ausgabesteuerung (Ein-/Ausgabesteuerung) 740,
Hochfrequenzschaltkreise (HF-Schaltkreise) 750 und eine
Antenne 760. Im Betriebszustand sendet und empfängt das
System 700 mittels der Antenne 760 Signale, und
diese Signale werden von den verschiedenen, in 7 dargestellten Bauelementen verarbeitet.
Die Antenne 760 kann eine gerichtete oder eine ungerichtete
Antenne sein. Der Begriff „ungerichtete
Antenne" bezieht
sich im Vorliegenden auf jegliche Antennen, die in zumindest einer
Ebene ein im Wesentlichen gleichförmiges Muster aufweisen. Die
Antenne 760 kann bei einigen Ausführungsformen beispielsweise
eine ungerichtete Antenne, wie z. B. eine Dipolantenne oder eine
Viertelwellenantenne, sein. Ferner kann die Antenne 760 bei
einigen Ausführungsformen
beispielsweise eine gerichtete Antenne, wie z. B. eine Parabolantenne,
eine Patchantenne oder eine Yagi-Antenne, sein. Bei einigen Ausführungsformen
kann die Antenne 760 mehrere physikalische Antennen umfassen.
-
Der
Hochfrequenzschaltkreis 750 steht mit der Antenne 760 und
der Ein-/Ausgabesteuerung 740 in
Verbindung. Bei einigen Ausführungsformen umfasst
der Hochfrequenzschaltkreis 750 eine einem Kommunikationsprotokoll
entsprechende physikalische Schnittstelle (PHY). Der Hochfrequenzschaltkreis 750 kann
beispielsweise Modulatoren, Demodulatoren, Mischer, Frequenzgeneratoren,
rauscharme Verstärker,
Leistungsverstärker
u. ä. umfassen. Bei
einigen Ausführungsformen
kann der Hochfrequenzschaltkreis 750 einen Überlagerungsempfänger umfassen,
und in anderen Ausführungsformen kann
der Hochfrequenzschaltkreis 750 einen Direktmischempfänger umfassen.
Bei Ausführungsformen mit
mehreren Antennen 760 beispielsweise kann jede Antenne
mit einem entsprechenden Empfänger gekoppelt
sein. Im Betriebszustand empfängt
der Hochfrequenzschaltkreis 750 Kommunikationssignale von
der Antenne 760 und übermittelt
analoge oder digitale Signale an die Ein-/Ausgabesteuerung 740. Ferner
kann die Ein-/Ausgabesteuerung 740 Signale an den Hochfrequenzschaltkreis 750 übermitteln,
der die Signale verarbeitet und anschließend an die Antenne 760 überträgt.
-
Bei
dem (den) Prozessor(en) 710 kann es sich um eine beliebige
Verarbeitungseinrichtung handeln. So kann der Prozessor 710 beispielsweise
ein Mikroprozessor, ein Mikrocontroller o. ä sein. Ferner kann der Prozessor 710 eine
beliebige Anzahl an Prozessorkernen oder eine beliebige Anzahl an
separaten Prozessoren umfassen.
-
Die
Speichersteuerung 720 stellt einen Kommunikationspfad zwischen
dem Prozessor 710 und den anderen, in 7 dargestellten
Bauelementen bereit. Bei einigen Ausführungsformen ist die Speichersteuerung 720 Teil
einer Knoteneinrichtung, die auch andere Funktionen bereitstellt.
Wie 7 zeigt, ist die Speichersteuerung 720 mit
dem (den) Prozessor(en) 710, der Ein-/Ausgabesteuerung 740 und dem
Speicher 730 gekoppelt. Bei einigen Ausführungsformen
umfasst die Speichersteuerung 720 ein Temperaturmanagementsystem
zum Sammeln und Verarbeiten von Temperaturdaten von On-Die-Temperatursensoren
im Speicher 730.
-
Der
Speicher 730 kann mehrere Speichereinrichtungen umfassen.
Diese Speichereinrichtungen können
auf einer beliebigen Speichertechnologie basieren. So kann der Speicher 730 beispielsweise ein
Speicher mit wahlfreiem Zugriff (RAM), ein dynamischer Speicher
mit wahlfreiem Zugriff (DRAM), ein statischer Speicher mit wahlfreiem
Zugriff (SRAM), ein nichtflüchtiger
Speicher, wie beispielsweise ein Flash-Speicher oder ein anderer
Speichertyp sein.
-
Der
Speicher 730 kann eine einzelne Speichereinrichtung oder
eine Anzahl an Speichereinrichtungen auf einem oder mehreren Modulen
darstellen. Die Speichersteuerung 720 übermittelt über die Verbindung 722 Daten
an den Speicher 730 und empfängt Daten vom Speicher 730 als
Antwort auf Lesebefehle. Befehle und/oder Adressen können über die Verbindung 722 oder über eine
andere Verbindung (nicht abgebildet) an den Speicher 730 übermittelt werden.
Die Speichersteuerung 720 kann im Speicher 730 zu
speichernde Daten vom Prozessor 710 oder von einer anderen
Quelle empfangen. Die Speichersteuerung 730 kann die empfangenen
Daten vom Speicher 730 an den Prozessor 710 oder
ein anderes Ziel übermitteln.
Die Verbindung 722 kann eine bidirektionale oder eine unidirektionale
Verbindung sein. Die Verbindung 722 kann eine Anzahl an
Parallelleitern umfassen. Die Signale können differential ended oder
single ended sein. Bei einigen Ausführungsformen arbeitet die Verbindung 722 mit
einem weitergeleiteten Vielphasen-Taktschema.
-
Die
Speichersteuerung 720 ist ferner mit der Ein-/Ausgabesteuerung 740 gekoppelt
und stellt einen Kommunikationspfad zwischen dem (den) Prozessor(en) 710 und
der Ein-/Ausgabesteuerung 740 bereit.
Die Ein-/Ausgabesteuerung 740 umfasst eine Schaltung zum
Kommunizieren mit den Ein-/Ausgabeschaltkreisen, wie beispielsweise
seriellen Anschlüssen,
Parallelanschlüssen,
USB-Anschlüsse (USB
= universeller serieller Bus) u. ä. Wie 7 zeigt,
stellt die Ein-/Ausgabesteuerung 740 einen Kommunikationspfad
zu den Hochfrequenzschaltkreisen 750 bereit.
-
8 ist
ein Blockdiagram, das ausgewählte Aspekte
eines elektronischen Systems gemäß einer Ausführungsform
der Erfindung zeigt. Das elektronische System 800 umfasst
einen Speicher 730, eine Ein-/Ausgabesteuerung 740,
Hochfrequenzschaltkreise 750 und eine Antenne 760,
die alle vorstehend unter Bezugnahme auf 7 beschrieben
wurden. Das elektronische System 800 umfasst ferner einen oder
mehrere Prozessoren 810 und eine Speichersteuerung 820.
Wie 8 zeigt, kann sich die Speichersteuerung 820 auf
demselben Chip wie der (die) Prozessor(en) 810 befinden.
Bei einigen Ausführungsformen
umfasst die Speichersteuerung 820 ein Temperaturmanagementsystem
zum Sammeln und Verarbeiten von Temperaturdaten von On-Die-Temperatursensoren
im Speicher 730. Der (die) Prozessor(en) 810 können von
einem beliebigen Prozessortyp sein, wie vorstehend unter Bezugnahme
auf den Prozessor 710 (5) beschrieben
wurde. Die in 7 und 8 dargestellten
beispielhaften Systeme umfassen Desktop-Computer, Laptop-Computer, Server,
Mobiltelefone, Personal Digital Assistants, digitale Heimsysteme
u. ä.
-
Die
Bauelemente der Ausführungsformen der
vorliegenden Erfindung können
auch als ein maschinenlesbares Medium zum Speichern maschinenausführbarer
Befehle bereitgestellt sein. Das maschinenlesbare Medium kann Flash-Speicher,
optische Platten, Kompaktdisk-Nurlesespeicher
(CD-ROM), digitale Videodisk-Nurlesespeicher (DVD-ROM), Speicher
mit wahlfreiem Zugriff (RAM), löschbaren programmierbaren
Nurlesespeicher (EPROM), elektrisch löschbaren programmierbaren Nurlesespeicher
(EEPROM), magnetische oder optische Karten, Ausbreitungsmedien oder
andere zum Speichern elektronischer Befehle geeignete Arten maschinenlesbarer
Medien u. a. umfassen. Ausführungsformen der
Erfindung können
beispielsweise als ein von einem entfernten Computer (z. B. einem
Server) auf einen Arbeitsplatzcomputer (z. B. einen Client) übertragbares
Computerprogramm anhand von in einer Trägerwelle oder einem anderen
Ausbreitungsmedium (z. B. ein Modem oder eine Netzverbindung) verkörperten
Datensignalen heruntergeladen werden.
-
Es
gilt anzumerken, dass der Begriff „eine (1) Ausführungsform" oder „eine Ausführungsform" so zu interpretieren
ist, dass ein in Verbindung mit dieser Ausführungsform beschriebenes bestimmtes
Merkmal, eine bestimmte Struktur oder Besonderheit in zumindest
einer Ausführungsform
der vorliegenden Erfindung vorhanden ist. Es wird betont und gilt
anzumerken, dass sich zwei oder mehr Bezugnahmen auf „eine (1)
Ausführungsform" oder „eine Ausführungsform" in verschiedenen
Abschnitten der vorliegenden Beschreibung nicht zwangsläufig alle
auf dieselbe Ausführungsform
beziehen. Ferner sind die jeweiligen Merkmale, Strukturen oder Besonderheiten
in einer oder mehreren Ausführungsformen
der Erfindung in angemessener Weise kombinierbar.
-
Es
gilt gleichermaßen
darauf hinzuweisen, dass in der vorstehenden Beschreibung erfindungsgemäßer Ausführungsformen
verschiedene Merkmale gelegentlich in einer einzelnen Ausführungsform, Figur
oder Beschreibung derselben zusammengefasst sind, um eine Effektivierung
der vorliegenden Erfindungsoffenbarung hinsichtlich des Verständnisses
eines oder mehrere erfinderischer Aspekte zu erreichen. Dieses Offenbarungsverfahren
ist allerdings nicht dahingehend zu interpretieren, dass der beanspruchte
Gegenstand mehr Merkmale als die ausdrücklich im Anspruch genannten
erfordert. Wie aus den nachstehenden Ansprüchen ersichtlich ist, liegen
die erfinderischen Aspekte vielmehr in weniger als allen Merkmalen
einer einzelnen der vorstehend offenbarten Ausführungsformen. Die der vorliegenden
detaillierten Beschreibung folgenden Ansprüche werden hiermit ausdrücklich zum
Bestandteil derselben.
-
Zusammenfassung
-
Ausführungsformen
der Erfindung betreffen im Allgemeinen Systeme, Verfahren und Vorrichtungen
zum Temperaturmanagement mittels eines On-Die-Temperatursensors.
Bei einigen Ausführungsformen
umfasst ein integrierter Schaltkreis (z. B. eine Speichersteuerung)
eine Temperatursammlungslogik und eine Steuerungslogik. Die Temperatursammlungslogik
empfängt
und speichert Temperaturdaten von einer Vielzahl entfernter Speichereinrichtungen,
die jeweils einen On-Die-Temperatursensor aufweisen. Bei einigen
Ausführungsformen
steuert die Steuerungslogik eine Temperaturdrosselung zumindest
teilweise auf Grundlage der Temperaturdaten. Weitere Ausführungsformen
werden beschrieben und beansprucht.