-
GEBIET DER ERFINDUNG
-
Ausführungsformen der vorliegenden Erfindung beziehen sich allgemein auf Techniken zur Verbesserung der Leistungsoptimierung von integrierten Schaltungen. Insbesondere sind Ausführungsformen der Erfindung auf eine Lösung zur kontinuierlichen Anpassung von Betriebsparametern während Prozessvariationen gerichtet.
-
HINTERGRUND DER ERFINDUNG
-
In Rechnerarchitekturen ist dynamische Spannungs- und Frequenzskalierung (DVFS) eine Leistungsoptimierungstechnik, bei der ein Prozessor oder eine andere integrierte Schaltungskomponente mit unterschiedlichen Frequenz- und Spannungseinstellungen, in Abhängigkeit von Echtzeit-Leistungsfähigkeits- und/oder Leistungsanforderungen, betrieben werden kann. Konventionelle DVFS Lösungen sind durch die Fähigkeit gekennzeichnet, eine Frequenz und Spannung eines Prozessors oder Mikroprozessors dynamisch anpassen zu können, entweder um Leistung zu schonen oder zu optimieren oder um die Menge der Wärme, die von dem Chip erzeugt wird, zu verringern. Bei herkömmlichen DVFS-Konzepten geben die Hersteller im Betrieb oftmals Sicherheitsgrenzen für eine oder mehrere Einstellungen vor. Beispielsweise kann für einen beliebigen gegebenen Spannungspegel eine Maximalfrequenz, die einem sicheren Betriebsbereich entspricht, vorgegeben werden, um die Möglichkeit einer Komponentenfehlfunktion zu begrenzen und/oder das Risiko eines vorzeitigen Ausfalls - beispielsweise aufgrund von Überhitzen -- zu vermeiden.
-
Typischerweise werden diese Grenzen mit eingebauten Reserven berechnet, die Prozessschwankungen berücksichtigen, die sich aus einer Vielzahl von verschiedenen Quellen wie integrierte Schaltkreisprozessvariationen, Zufallsrauschen (z. B. Spannungsschwankungen), Temperaturschwankungen, altersbedingte Degradation und/oder Spannungsreglertoleranzen etc. ergeben können. Obgleich diese Reserven angemessen effektiv sind, um Überhitzung aufgrund von zu hohen Spannungen oder Betriebsfrequenzen zu verhindern, verringern diese Grenzen auch die Gesamtleistungseffizienz des Chips, da die Reserven häufig überausgelegt werden, um Worst-Case-Szenarien zu berücksichtigen. Beispielsweise kann eine Software eine bestimmte Taktfrequenz für einen Mikroprozessor anfordern, und es wird eine größere Spannung zugeordnet, als optimal benötigt wird, um den Mikroprozessor bei dieser Frequenz zu betreiben, um die Reserve zu berücksichtigen.
-
In jüngster Zeit wurden neue Lösungen eingeführt, die versuchen dieses Problem zu lösen. Eine solche vorgeschlagene Lösung verwendet einen rauschberücksichtigenden Phasenregelkreis (engl.: noise-aware phase locked loop, NAPLL), welcher Rausch- und Spannungsreglerreserven einer integrierten Schaltung berücksichtigt, aber nicht in der Lage ist, beliebige andere Faktoren, die potentiell zu Ineffizienzen beitragen, zu berücksichtigen. Daher müssen immer noch Reserven eingebaut werden, um denjenigen Faktoren Rechnung zu tragen, welche die Leistungseffizienz der integrierten Schaltung verringern, oder andernfalls Benutzer den überhitzungsimmanenten Risiken auszusetzen. Eine weitere vorgeschlagene Lösung besteht darin, einen geschlossenes Regelkreis DVFS-Konzept (engl.: Closed-Loop-DVFS) zu verwenden, das einen digitalen Ringoszillator als Taktgenerator verwendet. Digitale Ringoszillatoren können jedoch selbst an Prozessschwankungen kranken und eine zusätzliche Reserveauslegung benötigen. Jedes dieser Konzepte krankt auch an einer mangelhaften Skalierbarkeit, da die Anzahl der Taktdomänen, die Teil derselben Spannungsschiene sind, inhärent begrenzt ist.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Diese Zusammenfassung ist dazu vorgesehen, eine Auswahl von Konzepten in vereinfachter Form vorzustellen, die weiter in der detaillierten Beschreibung untenstehend beschrieben werden. Diese Zusammenfassung soll keine Hauptmerkmale oder wesentliche Merkmale der Erfindung identifizieren, auch ist es nicht beabsichtigt, dass sie herangezogen werden kann, um den Umfang der Erfindung zu beschränken.
-
Ausführungsformen der vorliegenden Erfindung sind auf Techniken gerichtet, um die Effizienz von Konzepten zum Leistungsverbrauch integrierter Schaltungen durch kontinuierliches und adaptives Skalieren von Spannungs- und Frequenzpegeln in einer integrierten Schaltung basierend auf gemessenen Bedingungen in Echtzeit zu verbessern, ohne einen Ausweg mittels Rückgriff auf übermäßige vorberechnete, für herkömmliche Konzepte typische, Reserven zu nehmen. Ausführungsformen der vorliegenden Erfindung verwenden einen selbstabstimmenden dynamischen Spannungsregeloszillator (oder einen anderen ähnlichen Taktsignalgenerator), der basierend auf einem Spannungseingang die Frequenz für Komponenten in der integrierten Schaltung einstellt. Neben anderen zur Einstellung des Spannungspegels verwendeten Eingaben werden Echtzeit-Alterungs- und Temperatursensoren verwendet.
-
Wenn eine angeforderte Frequenz eine maximal zulässige Frequenz für einen gegebenen Spannungspegel überschreitet (unter Berücksichtigung von anderen alter- und temperaturabhängigen Bedingungen) wird eine Nachschlagetabelle dynamisch referenziert, um eine neue Frequenz zu bestimmen, welche die aktuelle Spannung sicher unterstützen kann. Gemäß einer oder mehreren Ausführungsformen empfängt die Nachschlagetabelle laufend Aktualisierungen der Betriebsbedingungen - einschließlich nachfolgender Schwankungen der Spannung aufgrund von Rausch- und Prozessvariationen - und neue Spannungsanforderungen können dynamisch bedarfsgerecht basierend auf dem gegenwärtigen Bedarf des Systems erzeugt werden. Die Nachschlagetabelle empfängt in Echtzeit aktualisierte Temperatur- und Alterungseingaben.
-
Gemäß einer Ausführungsform der vorliegenden Erfindung wird ein System bereitgestellt, das einen Taktgenerator oder einen rauschberücksichtigenden Frequenzregelkreis (engl.: noise-aware frequency locked loop, NAFLL) enthält, der einen Takt durch Selbstabstimmung eines Ringoszillators erzeugt. Dieser Taktgenerator stellt eine Rauschunempfindlichkeit durch Verringerung der Frequenz im Falle von Rauschen bereit. Ferner ist eine Hardware-Nachschlagetabelle enthalten, welche die maximale Frequenz der integrierten Schaltung (oder eines anderen Bauelements) basierend auf einer Rückkopplung von Spannungs-, Temperatur- und Alterungsechtzeitsensoren bestimmt. Da die Frequenz im Betrieb auf Echtzeit-Sensormessungen basiert, entfällt die Notwendigkeit für vorfestgelegte Reserven. Gemäß einer oder mehrerer Ausführungsformen ist zusätzlich ein Spannungsanforderer enthalten, der den Fehler zwischen der für die aktuelle Spannung zulässigen Maximalfrequenz und einer Frequenz, die angefordert wird (z. B. von einer Softwareanwendung), berechnet und die Differenz in eine neue Spannungsanforderung umwandelt. Mehrfaches durchlaufen der Spannung mit der Frequenz bis der Frequenzfehler gegen Null geht stellt sicher, dass die Spannung in der integrierten Schaltung der Minimalwert ist, welcher erforderlich ist, um die geforderte Frequenz zu erreichen, wodurch Ineffizienzen bei der Verwaltung und Optimierung der Leistung vermieden werden.
-
Gemäß einer weiteren Ausführungsform wird ein Verfahren bereitgestellt, um Spannung und Frequenz für eine optimale Leistungseffizienz in einer integrierten Schaltung adaptiv zu skalieren. In einer oder mehreren Ausführungsformen fordert eine Softwareanwendung eine Betriebsfrequenz basierend auf Leistungsfähigkeitsanforderungen an. Falls sich die softwareangeforderte Frequenz (wie von einer Nachschlagetabelle referenziert) von der maximal zulässigen Frequenz unterscheidet, wird die Spannung durch einen Spannungsregler so lange gesteuert, bis die Frequenz in der integrierten Schaltung gleich derjenigen ist, die von der Softwareanwendung angefordert wird. Während die Spannung in der integrierten Schaltung verändert wird, aktualisiert die Nachschlagetabelle ständig die Frequenz vom Taktgenerator, um sicherzustellen, dass das System immer mit der maximal zulässigen Frequenz für diese Spannung arbeitet.
-
Gemäß noch einer weiteren Ausführungsform der vorliegenden Erfindung wird ein Verfahren zur Erzeugung der Frequenzanforderung bereitgestellt. In einer oder mehreren Ausführungsformen wird nach Empfang einer Frequenzanforderung von einer Softwareanwendung, die angeforderte Frequenz (z. B. in einem Komparator) mit der maximal erlaubten Frequenz entsprechend der aktuellen Spannung in dem System verglichen. Falls eine Differenz ermittelt wird, wird die Frequenzdifferenz mit einer vorgegebenen Funktion in eine Spannungsdifferenz umgewandelt. Danach wird eine neue Spannungsanforderung zum Anheben (oder Absenken) des Pegels der Spannung auf einen geeigneten Pegel, der ausreicht, um das System mit der angeforderten Frequenz zu versorgen, erzeugt. Diese frequenzgetriebene Spannungsanpassung erfolgt kontinuierlich, bis der Frequenzfehler bei oder nahe Null liegt.
-
Durch Bereitstellen eines selbstabstimmenden Taktgenerators, der die Spannung als Eingabe liest, können Spannungsschwankungen (aufgrund von Prozessschwankungen und Softwareanforderungen) adaptiv und instantan Rechnung getragen werden. Als ein Ergebnis kann ineffiziente Reserveauslegung vermieden werden, um die Leistungseffizienz einer integrierten Schaltung zu erhöhen.
-
Figurenliste
-
Die beigefügten Zeichnungen sind in die Beschreibung eingebunden und bilden einen Teil dieser Beschreibung. Die Zeichnungen illustrieren Ausführungsformen. Die Zeichnungen dienen zusammen mit der Beschreibung der Erklärung der Prinzipien der Ausführungsformen:
- 1 zeigt eine schematische Darstellung einer beispielhaften integrierten Schaltung in Übereinstimmung mit verschiedenen Ausführungsformen der vorliegenden Erfindung.
- 2 zeigt ein Flussdiagramm eines Verfahrens zum Durchführen einer adaptiven dynamischen Spannungsfrequenzskalierung in einer integrierten Schaltung, gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung.
- 3 zeigt ein Flussdiagramm eines Verfahrens zum Anpassen einer Frequenzanforderung für adaptive Spannungs- und Frequenzskalierung in Übereinstimmung mit verschiedenen Ausführungsformen der vorliegenden Erfindung.
- 4 zeigt ein beispielhaftes Rechensystem, auf dem Ausführungsformen der vorliegenden Erfindung implementiert werden können in Übereinstimmung mit verschiedenen Ausführungsformen der vorliegenden Erfindung.
-
DETAILLIERTE BESCHREIBUNG
-
Nun wird im Detail auf die bevorzugten Ausführungsformen der Erfindung eingegangen, nämlich ein Verfahren und System zur Verwendung einer Wärmeabschirmung einer mobilen Rechenvorrichtung mit verbesserter Wärmemanagementfähigkeit, wobei Beispiele hierfür in den beigefügten Zeichnungen dargestellt sind. Obgleich die Erfindung im Zusammenhang mit den bevorzugten Ausführungsformen beschrieben wird, wird vorausgesetzt, dass es nicht beabsichtigt ist, dass diese die Ausführungsformen beschränken. Vielmehr soll die Erfindung Alternativen, Modifikationen und Äquivalente abdecken, die in dem Sinne und dem Umfang, wie sie durch die beigefügten Ansprüche definiert sind, enthalten sein können.
-
Ferner werden in den folgenden detaillierten Beschreibungen von Ausführungsformen der Erfindung zahlreiche spezifische Details angegeben um ein gründliches Verständnis der Erfindung bereitzustellen. Es wird aber von dem Fachmann erkannt werden, dass die Erfindung ohne diese spezifischen Details ausgeführt werden kann. In anderen Beispielen wurden bekannte Verfahren, Prozeduren, Bauteile, und Schaltkreise nicht näher beschrieben, um Aspekte der Erfindung nicht unnötig zu verschleiern.
-
Einige Teile der nachfolgenden detaillierten Beschreibungen sind als Prozeduren, Schritte, Logikblöcke, Verarbeitungen und andere symbolische Darstellungen von Operationen an Datenbits, die in einem Rechnerspeicher ausgeführt werden können, dargestellt. Diese Beschreibungen und Darstellungen sind die von Fachmännern der Datenverarbeitung verwendeten Mittel, um anderen Fachmännern am effektivsten die Substanz ihrer Arbeit zu vermitteln. Dabei wird ein Verfahren, ein rechnergenerierter Schritt, ein Logikblock, ein Prozess, etc., hier und allgemein als eine selbstkonsistente Abfolge von Schritten oder Anweisungen angesehen, die zu einem gewünschten Ergebnis führen. Die Schritte sind solche, die physikalische Manipulationen physikalischer Größen erfordern. In der Regel, aber nicht notwendigerweise, sind diese Größen als gespeicherte elektrische oder magnetische Signale ausgebildet, die gespeichert, übertragen, kombiniert, verglichen und ansonsten in einem Rechnersystem manipuliert werden können. Es hat sich bisweilen, hauptsächlich aus Gründen der gemeinsamen Nutzung, als zweckmäßig erwiesen, diese Signale als Bits, Werte, Elemente, Symbole, Zeichen, Begriffe, Zahlen oder dergleichen zu bezeichnen.
-
Es ist jedoch zu bedenken, dass alle diese und ähnliche Begriffe mit den entsprechenden physikalischen Größen in Verbindung gebracht werden müssen und lediglich praktische Bezeichnungen sind, die auf diese Größen angewendet werden. Sofern nicht ausdrücklich anders angegeben, wie aus der folgenden Diskussion hervorgeht, wird es anerkannt, dass sich Diskussionen, die Begriffe wie „Speichern“, „Erstellen“, „Schützen“, „Schützen“, „Empfangen“, „Verschlüsseln“, „Entschlüsseln“, „Zerstören“ oder ähnliches verwenden, während der gesamten vorliegenden Erfindung auf die Handlungen und Prozesse eines Rechnersystems oder einer integrierten Schaltung oder einer ähnlichen elektronischen Rechenvorrichtung, einschließlich eines eingebetteten Systems, beziehen, welche Daten, die als physikalische (elektronische) Größen innerhalb der Register und Speicher des Rechnersystems in andere Daten, die ähnlich repräsentiert als physikalische Größen innerhalb der Speicher oder Register oder anderen solchen Informationsspeicher, Übertragungs- oder Anzeigevorrichtungen manipulieren und transformieren.
-
Ausführungsformen der Erfindung sind auf neuartige Lösungen zur Verbesserung der Leistungsoptimierung bei der dynamischen und adaptiven Spannungs- und Frequenzskalierung von integrierten Schaltungen gerichtet.
-
ADAPTIVES SPANNUNGS-FREQUENZ-SKALIEREN
-
zeigt ein Diagramm 100 einer beispielhaften integrierten Schaltung mit adaptiver dynamischer Spannungs- und Frequenzskalierung, entsprechend verschiedener Ausführungsformen der vorliegenden Erfindung. Wie in dargestellt, enthält der integrierte Schaltkreis einen Spannungsanforderer 101, einen Pulsweitenmodulator 105, einen Spannungsregler 107, einen oder mehrere Sensoren 109, eine Nachschlagetabelle 111 und einen Taktsignalgenerator 115. In einer oder mehreren Ausführungsformen kann der integrierte Schaltkreis als z.B. ein oder mehrere Mikroprozessoren oder Verarbeitungskerne in einer Grafikkarte oder einem Motherboard einer Rechenvorrichtung implementiert werden. Andere Beispiele für integrierte Schaltungen, in denen die vorliegende Erfindung implementiert werden kann, umfassen anwendungsspezifische integrierte Schaltungen (ASICs), Speicherchips, batteriebetriebene Vorrichtungen und generell alle Vorrichtungen oder integrierten Schaltungen, in denen eine dynamische Skalierung von Spannung und Frequenz, die adaptiv durchgeführt wird, wünschenswert sein kann.
-
In einer oder mehreren Ausführungsformen kann der Spannungsanforderer 101 als Komparator und als Proportional-Integral-Derivativ (PID)-Regler ausgeführt werden, der ein Taktsignal mit einer bestimmten Frequenz vom Taktsignalgenerator 115 zusammen mit einem Eingang (A) als Eingabe aufnimmt. In einer oder mehreren Ausführungsformen besteht Eingang A aus einer Frequenzanforderung, wie z.B. einer Frequenzanforderung, die von einer Softwareanwendung erzeugt wird, die zumindest teilweise von der integrierten Schaltung ausgeführt wird. Der Komparator vergleicht die Frequenz des Taktsignalgenerators 115 (die aktuelle Betriebsfrequenz) mit der angeforderten Frequenz von Eingang A, um festzustellen, ob die Frequenzen unterschiedlich sind. Wenn eine Differenz vorhanden ist, berechnet der PID-Regler den Differenzgrad. Der Spannungsanforderer 101 erzeugt dann eine neue Spannungsanforderung 101a, die der berechneten Frequenzdifferenz entspricht.
-
In einer oder mehreren Ausführungsformen ist die aktuelle Betriebsspannung die minimale Spannung, die ausreicht, um den Taktsignalgenerator für die aktuelle Betriebsfrequenz innerhalb sicherer Betriebsgrenzen unter Berücksichtigung von Prozessschwankungen mit Leistung zu versorgen. Wenn also die angeforderte Frequenz (z.B. durch eine Software-Anwendung wie das BIOS einer Vorrichtung) kleiner als die aktuelle Betriebsfrequenz ist, wird eine neue Spannungsanforderung 101a erzeugt, die niedriger als die aktuelle Betriebsspannung ist und die minimale Spannung wäre, die erforderlich ist, um die gewünschte Frequenz zu erreichen, wobei wiederum Prozessvariationsfaktoren und das Liegen innerhalb sicherer Betriebsgrenzen berücksichtigt wird. Ist die angeforderte Frequenz höher als die aktuelle Betriebsfrequenz, wird ebenfalls eine neue Spannungsanforderung 101a erzeugt, die entsprechend höher ist als die aktuelle Betriebsspannung.
-
Die vom Spannungsanforderer 101 ausgegebene Spannungsanforderung wird als Eingabe in einem Pulsweitenmodulator 105 empfangen, der die vom Spannungsregler 107 empfangenen Spannungsanforderungen steuert. In einer oder mehreren Ausführungsformen besteht der Pulsbreitenmodulator 105 auch aus einem Multiplexer 103, der zwischen dem Pulsbreitenmodulator 105 und dem Spannungsanforderer 101 positioniert ist. Der Multiplexer 103 empfängt die Spannungsanforderung vom Spannungsanforderer 101 und ggf. eine zweite Spannungsanforderung als Eingabe (z.B. Eingang B). In einer oder mehreren Ausführungsformen kann die zweite Spannungsanforderung von einer Softwareanwendung bereitgestellt werden. Der Pulsweitenmodulator 105 misst die zwei angeforderten Spannungen und leitet die Anforderung mit der höchsten Spannung an den Spannungsregler 107 weiter.
-
In einer oder mehreren Ausführungsformen kann der Spannungsregler 107 mit einem Integrierten Schaltkreis zum Leistungsmanagement (engl.: Power Management Integrated Circuit, PMIC) realisiert werden, der den Leistungsfluss in der integrierten Schaltung insgesamt steuert. Der Spannungsregler 107 empfängt die Spannungsanforderung vom Spannungsanforderer 101 (mittels des Pulsweitenmodulators 105) und passt den elektrischen Leistungsfluss an, um die angeforderte Spannung bereitzustellen. In einer oder mehreren Ausführungsformen wird die Versorgungsspannung des Spannungsreglers direkt an den Taktsignalgenerator 115 geliefert. Nach weiteren Ausführungsformen wird der elektrische Leistungsfluss in einem dynamischen spannungsgesteuerten Oszillator (engl. Dynamic Voltage Control Oszillator, DVCO) 119 empfangen, der automatisch ein Taktsignal mit einer der Eingangsspannung entsprechenden Frequenz erzeugt.
-
Der elektrische Leistungsfluss wird ebenfalls vom Spannungsregler 107 in einem Analog-Digital-Wandler (ADC) 109 empfangen, der niederfrequentes Spannungsrauschen filtert, den Spannungspegel misst und die Messdaten in einer Nachschlagtabelle 111 ausgibt. In einer oder mehreren Ausführungsformen ist der ADC konfiguriert, ständig die aktuelle Betriebsspannung zu messen, kleine Spannungsänderungen aufgrund von Rauschen zu erkennen und die gemessene Spannung an die Nachschlagtabelle 111 auszugeben. Wie in dargestellt, enthält die Nachschlagtabelle (LUT) 111 eine spezielle Hardwarekomponenten-Nachschlagetabelle 113. Zusätzlich zu den Spannungsmessdaten, die der Analog-Digital-Wandler ADC 109 liefert, kann die LUT 111 auch Prozessvariations- und aktuelle Betriebszustandsdaten als Eingangssignal empfangen, die von einem oder mehreren Sensoren gemessen werden. Die LUT bestimmt vorteilhaft die maximale Frequenz des Chips auf der Grundlage von Echtzeit-Rückmeldungen der Spannungs-, Temperatur- und Alterungssensoren. Da die Frequenz auf Echtzeitmessungen von Sensoren basiert, entfällt die Notwendigkeit von eingebauten Reserven.
-
Beispielsweise kann ein Temperatursensor Echtzeit-Temperaturdaten als Eingabe C liefern, und ein dedizierter Alterungssensor kann Echtzeit-Alters- und/oder altersbedingte Degradationsdaten als Eingabe D liefern. In einer oder mehreren Ausführungsformen enthält die Hardware-Nachschlagetabelle 113 eine oder mehrere Spannungs-Frequenz-Kurven (VF-Kurven), die spezifische Prozessschwankungen und Betriebsbedingungen (z.B. Temperatur, Alter) berücksichtigen. Die Daten von einem oder mehreren der Sensoren (z.B. Spannung, Temperatur und Alter) werden als Eingabe in der Hardware-Nachschlagetabelle 113 verwendet, um eine maximal zulässige Frequenz bei der Spannung zu referenzieren, dann wird eine entsprechende Frequenzanforderung ermittelt und an den Taktsignalgenerator 115 weitergeleitet.
-
In einer oder mehreren Ausführungsformen kann der Taktsignalgenerator 115 als rauschberücksichtigende Frequenzregelschleife (engl.: noise-aware frequency locked loop NAFLL) implementiert werden, die einen zweiten Komparator/PID-Regler 117 und einen DVCO 119 enthält. Der zweite Komparator und der PID-Regler 117 empfängt die Frequenzanforderung von der LUT 111, die der Spannung entspricht, die vom Spannungsregler 107 geliefert wird, die an Temperatur, Alter und andere Prozessvariationen angepasst ist, und gibt eine angepasste Frequenzanforderung an den DVCO 119 aus, die anschließend zur nachfolgenden Betriebsfrequenz wird. In einer oder mehreren Ausführungsformen kann der DVCO 119 als selbstabstimmender Ringoszillator realisiert sein. Dementsprechend wird der DVCO bei Spannungsabfall sofort langsamer. Ebenso erzeugt der DVCO bei steigender Spannung ein Signal mit höherer Frequenz.
-
Da der DVCO direkt an die Versorgungsspannung angeschlossen ist, wird die Unempfindlichkeit gegen Rauschereignisse dadurch gewährleistet, dass die Frequenz als Reaktion auf diese Ereignisse reduziert wird. Der daraus resultierende Frequenzausgang des Taktsignalgenerators 115 ist die Frequenz, mit welcher der integrierte Schaltkreis betrieben wird, bis eine Folgefrequenz (z.B. per Software) angefordert wird, die von der Betriebsfrequenz als abweichend erkannt wird oder bis sich Prozessschwankungen und Betriebsbedingungen in dem Maße ändern, dass der Spannungspegel beeinträchtigt oder verändert wird.
-
Entsprechend einer oder mehreren Ausführungsformen aktualisiert die LUT 111 ständig die Frequenz des Taktsignalgenerators 115 während die Spannung in der integrierten Schaltung geändert wird, um sicherzustellen, dass der Chip oder die Komponente immer mit der maximal zulässigen Frequenz für diese Spannung arbeitet. In den Fällen, in denen die Spannung begrenzt ist (z.B. durch ein Vmin oder Vmax) oder durch andere Komponenten, die sich eine Spannungsschiene mit dem integrierten Schaltkreis teilen, können ein oder mehrere Pulsaussetzer 121 eingeschaltet werden, um die effektive Frequenz so einzustellen, dass sie der von einer Softwareanwendung geforderten Frequenz angenähert wird.
-
zeigt ein Flussdiagramm 200 eines beispielhaften Prozesses zur Durchführung einer adaptiven dynamischen Spannungsfrequenzskalierung in einem integrierten Schaltkreis (IC) in Übereinstimmung mit verschiedenen Ausführungsformen der vorliegenden Erfindung. Die Schritte 201-209 beschreiben exemplarische Schritte des Flussdiagramms 200 in Übereinstimmung mit den verschiedenen hier beschriebenen Ausführungsformen.
-
Bei Schritt 201 wird ein Taktsignal erzeugt. In einer oder mehreren Ausführungsformen kann das Taktsignal in einem Taktsignalgenerator oder einer rauschberücksichtigende Phasenregelschleife erzeugt werden, wie z.B. dem oben in Bezug auf beschriebenen Taktsignalgenerator 115. In einer oder mehreren Ausführungsformen ist die Frequenz des Taktsignals selbstabstimmend und passt sich automatisch an eine Eingangsspannung an, die von einem Spannungsregler bereitgestellt wird, wie z.B. dem Spannungsregler 107 in .
-
Bei Schritt 203 wird eine neue Frequenzanforderung empfangen. In einer oder mehreren Ausführungsformen wird die neue Frequenzanforderung in einem Spannungsanforderer empfangen, der z.B. als Komparator und PID-Regler (Proportional-Integral-Derivative-Regler) implementiert ist, der als Eingabe die empfangene Frequenzanforderung und eine aktuelle Betriebsfrequenz des in Schritt 201 erzeugten Signals verwendet. Falls die neue Frequenzanforderung von der aktuellen Betriebsfrequenz abweicht, wird eine neue Spannungsanforderung bei 205 erzeugt. In einer oder mehreren Ausführungsformen wird die neue Spannungsanforderung für die spezifische Spannung generiert, die ausreicht, um den Mikrochip oder die integrierte Schaltung zu versorgen.
-
Bei Schritt 207 wird die Spannung im Mikrochip oder in der integrierten Schaltung auf die in Schritt 205 geforderte Spannung angepasst. In einer oder mehreren Ausführungsformen erfolgt die Anpassung in einem Spannungsregler, wie z.B. dem oben in Bezug auf Bild 1 beschriebenen Spannungsregler. In weiteren Ausführungsformen kann der Spannungsregler auch eine integrierte Schaltung für das Leistungsmanagement enthalten. Die angepasste Spannung wird abgetastet (z.B. in einem Analog-Digital-Wandler) und eine angepasste Frequenzanforderung wird auf der Grundlage der neuen Spannung generiert und speziell angepasst, um die in Echtzeit gemessenen Betriebsbedingungen (wie Temperatur und Alter) im Chip oder in der integrierten Schaltung bei Schritt 209 zu berücksichtigen. Auch für Prozessvariationen des Chips können Anpassungen vorgenommen werden. Schließlich wird die Frequenz im Chip oder in der integrierten Schaltung (z.B. in einem digitalen Ringoszillator) bei Schritt 211 auf die angepasste Frequenzanforderung eingestellt.
-
zeigt ein Flussdiagramm 300 eines beispielhaften Prozesses zur Erzeugung einer neuen Frequenzanforderung in Übereinstimmung mit verschiedenen Ausführungsformen der vorliegenden Erfindung. Die Schritte 301-305 beschreiben exemplarische Schritte des Flussdiagramms 300 in Übereinstimmung mit den verschiedenen hier beschriebenen Ausführungsformen.
-
In Schritt 301 werden die vorherrschenden Betriebsbedingungen in einem Chip oder einer anderen integrierten Schaltung gemessen. In einer oder mehreren Ausführungsformen können die Betriebsbedingungen beispielsweise eine Spannung, eine Temperatur und/oder ein Alter im Chip oder IC-Vorrichtung umfassen und von einem oder mehreren Hard- oder Softwaresensoren gemessen werden. In einer oder mehreren Ausführungsformen können die Betriebsbedingungen einen Analog-Digital-Wandler umfassen, der die von einem Spannungsregler zugeführte Spannung misst.
-
In Schritt 303 wird auf eine Nachschlagtabelle referenziert, um die maximal zulässige Frequenz zu ermitteln, die den vorherrschenden Betriebsbedingungen entspricht. In einer oder mehreren Ausführungsformen kann die Nachschlagetabelle als Hardware-Nachschlagetabelle implementiert werden, wie die oben in Bezug auf beschriebene Nachschlagetabelle 113. Die Bestimmung der maximal zulässigen Frequenz kann z.B. die Referenzierung einer oder mehrerer Spannungs-/Frequenzkurven beinhalten, die an die entsprechenden Betriebsbedingungen (z.B. Temperatur, Alter) und Prozessschwankungen des Chips angepasst werden.
-
Abschließend wird eine angepasste Frequenzanforderung erzeugt, die auf der in Schritt 303 ermittelten maximal zulässigen Frequenz basiert. In einer oder mehreren Ausführungsformen wird die angepasste Frequenzanforderung an einen Taktsignalgenerator (z.B. eine rauschberücksichtigende Frequenzregelschleife) geliefert, der ein Taktsignal mit einer Frequenz erzeugt, die der eingestellten Frequenzanforderung entspricht.
-
BEISPIELHAFTE RECHNENVORRICHTUNG
-
Wie in dargestellt, umfasst ein beispielhaftes System, auf dem Verkörperungen der vorliegenden Erfindung implementiert werden können, ein allgemeines Rechnersystem mit einem oder mehreren integrierten Schaltkreisen, wie z. B. Rechnersystem 400. In seiner grundlegendsten Konfiguration umfasst das Rechensystem 400 typischerweise mindestens eine Verarbeitungseinheit. Abhängig von der genauen Konfiguration und der Art der Umgebung des Rechensystems kann der Speicher flüchtig (z.B. RAM 402), nichtflüchtig (z.B. ROM 403, Flash-Speicher, etc.) oder eine Kombination aus beidem sein. In einer oder mehreren Ausführungsformen kann z.B. eine Frequenz die Prozessor-Einheit 401 dynamisch und adaptiv angepasst werden, um Rauschen und anderen Prozessschwankungen einer Stromversorgung (nicht abgebildet) zu entsprechen, wie oben in Bezug auf die - beschrieben. In einer oder mehreren Ausführungsformen kann die Frequenz der Prozessor-Einheit 401 auch dynamisch und adaptiv angepasst werden, indem eine Nachschlagetabelle verwendet wird, die in einem Cache-Speicher 413 der Prozessor-Einheit 401 gespeichert ist und auf eine angeforderte Frequenz 414 von Softwareanwendungen 415 reagiert, die im Speicher ausgeführt werden (z.B. RAM 402).
-
Das Rechnersystem 400 kann auch ein optionales Grafiksubsystem 405 umfassen, das dem Rechnerbenutzer Informationen zur Verfügung stellt, z. B. durch Anzeige von Informationen auf einer angeschlossenen Anzeigevorrichtung 410, das über ein Videokabel 411 angeschlossen ist. Nach den Ausführungsformen der vorliegenden beanspruchten Erfindung kann das Grafiksubsystem 405 über das Videokabel 411 direkt mit der Anzeigevorrichtung 410 gekoppelt werden. Eine grafische Benutzeroberfläche einer Bildbetrachtungssoftware-Anwendung, die im Rechnersystem 400 ausgeführt wird, kann z.B. im Grafiksubsystem 405 erzeugt und dem Benutzer in der Anzeigevorrichtung 410 angezeigt werden. In alternativen Ausführungsformen kann die Anzeigevorrichtung 410 in das Rechnersystem integriert werden (z.B. ein Laptop- oder Netbook-Display-Panel) und benötigt kein Videokabel 411. In einer Ausführungsform können die Prozesse 200 und 300 ganz oder teilweise vom Grafik-Subsystem 405 in Verbindung mit dem Prozessor 401 und dem Speicher 402 ausgeführt werden, wobei alle resultierenden Ausgaben in angeschlossener Anzeigevorrichtung 410 angezeigt werden.
-
Darüber hinaus kann das Rechnersystem 400 auch über zusätzliche Merkmale/Funktionalitäten verfügen. Zum Beispiel kann das Rechnersystem 400 auch zusätzlichen Speicher (entfernbar und/oder nicht entfernbar) einschließen, einschließlich, aber nicht beschränkt auf, magnetische oder optische Platten oder Bänder. Dieser zusätzliche Speicherplatz wird in durch die Datenspeichervorrichtung 407 veranschaulicht. Rechner-Speichermedien umfassen flüchtige und nichtflüchtige, entfernbare und nicht entfernbare Medien, die in jeder Methode oder Technologie zur Speicherung von Informationen wie rechnerlesbare Anweisungen, Datenstrukturen, Programmmodule oder andere Daten implementiert sind. RAM 402, ROM 403 und Datenspeicher 407 sind Beispiele für Rechner-Speichermedien.
-
Das Rechnersystem 400 umfasst außerdem eine optionale alphanumerisches Eingabevorrichtung 406, eine optionale Cursorsteuerung- oder Steuervorrichtung 407 und eine oder mehrere Signal-Kommunikationsschnittstellen (Ein-/Ausgabevorrichtungen, z.B. eine Netzwerkschnittstellenkarte) 408. Die optionale alphanumerische Eingabevorrichtung 406 kann Informationen und Befehlsauswahlen an den Zentralprozessor 401 übermitteln. Die optionale Cursorsteuerung- oder die Steuerungsvorrichtung 407 ist an den Bus 409 gekoppelt, um Informationen über Benutzereingaben und Befehlsauswahlen an den Zentralprozessor 401 zu übermitteln. Die Signal-Kommunikationsschnittstelle (Ein-/Ausgabevorrichtung) 408, die ebenfalls an den Bus 409 gekoppelt ist, kann eine serielle Schnittstelle sein. Die Kommunikationsschnittstelle 409 kann auch drahtlose Kommunikationsmechanismen enthalten. Mit Hilfe der Kommunikationsschnittstelle 409 kann das Rechnersystem 400 über ein Kommunikationsnetz wie das Internet oder ein Intranet (z.B. ein lokales Netzwerk) mit anderen Rechnersystemen kommunikativ gekoppelt werden oder Daten empfangen (z.B. ein digitales Fernsehsignal).
-
Obwohl der Gegenstand in einer Sprache beschrieben wurde, die spezifisch für strukturelle Merkmale und/oder methodische Handlungen ist, ist davon auszugehen, dass der in den beigefügten Ansprüchen definierte Gegenstand nicht notwendigerweise auf die oben beschriebenen spezifischen Merkmale oder Handlungen beschränkt ist. Vielmehr werden die oben beschriebenen Besonderheiten und Handlungen als Beispielformen für die Verwirklichung der Ansprüche offengelegt.
-
In der vorstehenden Spezifikation wurden die Ausführungsformen anhand zahlreicher spezifischer Details beschrieben, die von Implementierung zu Implementierung variieren können. So ist der einzige und ausschließliche Indikator für das, was die Erfindung ist und von dem Anmelder als Erfindung beabsichtigt wird, der Satz von Ansprüchen, die aus dieser Anmeldung hervorgehen, in der spezifischen Form, in der diese Ansprüche gestellt werden, einschließlich etwaiger nachträglicher Berichtigungen. Daher sollte keine Einschränkung, kein Element, keine Eigenschaft, kein Merkmal, kein Vorteil oder Eigenschaft, die nicht ausdrücklich in einem Anspruch genannt wird, den Umfang eines solchen Anspruchs in irgendeiner Weise einschränken. Dementsprechend sind Spezifikation und Zeichnungen vielmehr illustrativ als restriktiv zu interpretieren.