DE69907512T2 - Gerät und verfahren zur automatischen frequenzregelung einer zentralen verarbeitungseinheit - Google Patents
Gerät und verfahren zur automatischen frequenzregelung einer zentralen verarbeitungseinheit Download PDFInfo
- Publication number
- DE69907512T2 DE69907512T2 DE69907512T DE69907512T DE69907512T2 DE 69907512 T2 DE69907512 T2 DE 69907512T2 DE 69907512 T DE69907512 T DE 69907512T DE 69907512 T DE69907512 T DE 69907512T DE 69907512 T2 DE69907512 T2 DE 69907512T2
- Authority
- DE
- Germany
- Prior art keywords
- cpu
- clock
- speed control
- control system
- frequency
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Description
- HINTERGRUND DER ERFINDUNG
- GEBIET DER ERFINDUNG
- Die Erfindung betrifft ein Geschwindigkeitsregelsystem für eine Zentraleinheit (CPU). Sie betrifft insbesondere ein taskabhängiges Kontrollsystem, das es ermöglicht, die CPU mit verschiedenen Geschwindigkeiten zu takten, die vom besonderen gerade ausgeführten Task abhängen.
- BESCHREIBUNG DES STANDS DER TECHNIK
- Es sind verschiedene Geschwindigkeitsregelsysteme bekannt, die es erlauben, die Taktrate einer CPU und/oder verschiedener Systembusse in einem Personal Computer (PC) in Zeitspannen der Untätigkeit zu verringern. Derartige CPU-Geschwindigkeitsregelsysteme führen allgemein zu geringerem Energieverbrauch bei Desktop-PCs, deren übliche Stromversorgung aus einer Steckdose mit 120V und 60 Hertz (Hz) erfolgt. Es sind beispielsweise beträchtliche Einsparungen an elektrischer Energie möglich, da eine sehr große Anzahl von Computern für längere Zeitspannen eingeschaltet bleibt, und zwar auch dann, wenn die Computer nicht aktiv benutzt werden. In vergleichbarer Weise führen CPU-Geschwindigkeitsregelsysteme bei tragbaren PCs zu einer besseren Ausnutzung der Batterieenergie, wodurch die Batterie länger arbeitet oder man mit kleineren Batterien auskommen kann.
- Die Managementsysteme für den Leistungsverbrauch, die in tragbaren PCs und Desktop-Computern vorhanden sind, beruhen traditionell auf Hardware-Zeitgebern, die nach ihrem Ablauf die Energiezufuhr zu verschiedenen Systemkomponenten abschalten oder verringern. Die gängigen Energiesparstandards für "Green Computer" erlauben es beispielsweise, Einrichtungen nach gewissen Perioden der Untätigkeit abzuschalten. Im Einzelnen werden Monitore abgeschaltet, Plattenlaufwerke angehalten und schließlich wird das gesamte System in geordneter Weise stillgelegt.
- Energiesparmerkmale sind in den letzten Jahren zunehmend wichtiger geworden, da die Prozessortaktfrequenzen dramatisch zugenommen haben. Mitzunehmenden Taktfrequenzen verbrauchen Systeme mit schnelleren Mikroprozessoren beträchtlich mehr Energie als Systeme, die Mikroprozessoren mit langsameren Taktfrequenzen besitzen. Beispielsweise kann ein 266 MHz Intel Pentium II Prozessor den dreifachen Stromeines klassischen 75 MHz Pentium Prozessors ziehen. Zudem arbeiten häufig nicht nur die CPU, sondern der gesamte Systembus abhängig von einem einzigen Takt, so dass alle Chipsätze einschließlich der Ein/Ausgabe-Controller, des Speichers und weiterer Komponenten bei höheren Taktfrequenzen höhere Ströme ziehen, als es manchmal für eine wirksame Nutzung des Computersystems erforderlich ist.
- Es sind CPU-Taktkontrollsysteme entwickelt worden. Beispiele für derartige Systeme sind in den US-Patenten 5,546,568, 5,504,910, 5,754,869, 4,819,164, 5,490,059 und 5,218,704 offenbart. Solche CPU-Geschwindigkeitsregelsysteme enthalten normalerweise eine CPU und einen Frequenzsynthesizer, der. die CPU mit einem Arbeitstakt versorgt, und der bei verschiedenen Frequenzen betrieben werden kann. Diese CPU-Taktregelsysteme verändern die Taktfrequenz des Frequenzsynthesizers abhängig von einer Anzahl unterschiedlicher Betrachtungen. Derartige Betrachtungen können beispielsweise umfassen: den Umfang und die Häufigkeit der Systemaktivität, die CPU-Temperatur und die Ankunft von Tastatureingaben oder anderen Eingaben am Computersystem. Unglücklicherweise beruhen derartige CPU-Geschwindigkeitsregelsysteme auf vorsorglichen Verfahren der Geschwindigkeitsregelung, wobei die CPU abhängig von bestimmten Kriterien gebremst oder angehalten wird. Beispielsweise kann die CPU-Geschwindigkeit abhängig vom Umfang der Systemaktivität, der CPU-Temperatur oder abhängig davon, dass das Computersystem irgendeine Eingabe erkannt hat, verändert werden. Die CPU-Taktgeschwindigkeiten sind jedoch generell nicht an taskabhängige Taktgeschwindigkeitsanforderungen des Mikroprozessors anpassbar. Daher besteht der Bedarf an einem CPU-Geschwindigkeitsregelsystem, das es ermöglicht, den CPU-Eingabetakt abhängig vom besonderen bearbeiteten Task oder der besonderen ausgeführten Anwendung zu verändern.
- Ein weiteres US-Patent, das den Stand der Technik beschreibt, ist 5,142,684, das ein Geschwindigkeitsregelsystem für eine Zentraleinheit und ein Verfahren offenbart, bei dem ein programmierbarer Frequenzsynthesizer so angepasst ist, dass er eine CPU mit einer veränderbaren Taktfrequenz versorgt, die abhängig von gespeicherten CPU-Leistungsanforderungen verändert wird. Es wird nur die Betriebsfrequenz der CPU verändert. Dagegen laufen der Eingabe/Ausgabe-Bus und der Speicherbus mit ihrem anfänglichen Geschwindigkeits- und Leistungsverbrauchsniveau.
- Gemäß einem ersten Aspekt der Erfindung wird ein Geschwindigkeitsregelsystem für eine Zentraleinheit (CPU) bereitgestellt, umfassend:
ein oder mehrere CPUs;
einen Eingabe/Ausgabe-Bus;
einen Speicherbus; und
ein intelligentes Taktmodul, so betreibbar, dass es die oder die mehreren CPUs mit einer Betriebsfrequenz versorgt, die sich abhängig von den Leistungsanforderungen der bzw. den CPUs verändert,
dadurch gekennzeichnet, dass das intelligente Taktmodul so betreibbar ist, dass es die veränderbare Betriebsfrequenz auch an den Eingabe/Ausgabe-Bus und den Speicherbus liefert. - Gemäß einem zweiten Aspekt der Erfindung wird ein Verfahren in einem Computersystem, das eine CPU, einen Speicherbus und einen I/O-Bus aufweist, zum Verändern der Betriebsfrequenz der CPU bereitgestellt, wobei das Verfahren die Schritte umfasst:
Bereitstellen ein oder mehrerer programmierbarer Frequenzsynthesizer, der ein bzw. mehrere veränderbare Taktfrequenzen liefern; und Ermöglichen, dass die ein oder mehreren Taktfrequenzen, die der eine bzw. die mehreren programmierbaren Frequenzsyn- thesizer liefern, abhängig von ein oder mehreren vorbestimmten Systemanforderungen verändert werden,
gekennzeichnet durch den Schritt des Veränderns der Taktfrequenz nicht nur der CPU sondern auch des Speicherbusses und des I/O-Busses, wenn angemessen. - Eine bevorzugte Ausführungsform der Erfindung betrifft ein Geschwindigkeitsregelsystem für eine Zentraleinheit, das in Vorrichtungen eingesetzt wird, die Mikroprozessoren oder Mikrocontroller aufweisen, die ihre Energieversorgung auch aus Batterien beziehen können. Das System enthält einen programmierbaren Frequenzsynthesizer, der die CPU und andere Systembusse in der Vorrichtung mit einer variablen Taktung versorgt, die von der Anwendung oder dem Interrupt abhängt, die bzw. den die Vorrichtung gerade ausführt. Gemäß einem Merkmal wird eine Speichereinrichtung bereitgestellt, in der die Leistungsanforderungen der Verarbeitung in einer Tabelle gespeichert werden können, damit es möglich ist, das Ausgangssignal des Frequenzsynthesizers abhängig von einer bestimmten Anwendung oder einem besonderen Task zu verändern, die bzw. der von der Vorrichtung auszuführen ist . Sowohl das Betriebssystem der Vorrichtung als auch die CPU können das Ausgangssignal des Frequenzsynthesizers kontrollieren, damit sichergestellt ist, dass die CPU für jeden beliebigen gegebenen Task auf dem bestmöglichen Energieverbrauchsniveau läuft.
- Man kann die Erfindung anhand der folgenden Beschreibung und der beigefügten Zeichnungen leichter verstehen.
- BESCHREIBUNG DER ZEICHNUNGEN
- Es zeigt:
-
1 ein Blockdiagramm eines Computersystems, das ein Optimiersystem für die CPU-Geschwindigkeit gemäß einer besonderen Ausführungsform der Erfindung enthält; und -
2 ein Flussdiagramm, das das Geschwindigkeitsregelsystem für die CPU bei Betrieb darstellt, und zwar gemäß einer besonderen Ausführungsform der Erfindung. - AUSFÜHRLICHE BESCHREIBUNG
- Die Ausführungsform betrifft ein Kontrollsystem, das die CPU-Taktrate derart verändert, dass sie den Verarbeitungserfordernissen der Vorrichtung entspricht, wenn diese vorbestimmte Anwendungen abarbeitet oder vorbestimmte Interrupts bedient. Das System enthält einen programmierbaren Frequenzsynthesizer, der der CPU und weiteren Systembussen in der Vorrichtung eine veränderbare Taktfrequenz liefert. In
1 ist lediglich ein beispielhafter PC dargestellt, der die Erfindung ausführt; die Leitgedanken der Erfindung sind natürlich auch auf andere Vorrichtungen mit Mikroprozessoren und/oder intelligente batteriebetriebene Einrichtung anwendbar, bei denen sparsam mit der Batterieleistung umgegangen werden muss, beispielsweise PCs, Mobiltelefone, persönliche digitale Helfer (PDA, PDA = Personal Digital Assistant) und Systeme mit Notbatterien, beispielsweise Telefon-Nebenstellenanlagen (PBX, PBX = Private Branch eXchange) und medizinische Geräte. - Das CPU-Geschwindigkeitsregelsystem ist dafür eingerichtet, dass das Taktmodul
50 der CPU20 eine programmierbar einstellbare Taktfrequenz liefern kann, und zwar abhängig davon, ob die CPU20 untätig ist oder Eingaben erhält, beispielsweise von einer Maus. oder einer Tastatur. - Anhand von
1 wird ein beispielhafter PC, der das CPU-Geschwindigkeitsregelsystem ausführt und allgemein mit dem Bezugszeichen18 bezeichnet ist, beschrieben und erläutert. Man kann die Prinzipien der Erfindung natürlich, wie bereits erwähnt, auch auf andere Systemarten anwenden, die von Zentraleinheiten gesteuert werden. Diese Anwendungen werden als im breiten Bereich der Erfindung liegend betrachtet. - Das beispielhafte CPU-Kontrollsystem
18 enthält eine CPU20 , die mit einem intelligenten programmierbaren Taktmodul50 gekoppelt ist, das einen Frequenzsynthesizer besitzt, der der CPU20 ein Taktsignal liefert. Gemäß diesem Aspekt der Erfindung wird eine Rückführschaltung verwendet, um die korrekte Betriebsfrequenz der CPU20 sicherzustellen. Insbesondere kann das Taktmodul50 die CPU20 über die Leitung51 von seiner Ausgabefrequenz in Kenntnis setzen. Die CPU20 kann ihrerseits über die Leitung49 das Taktmodul50 anweisen, die Ausgabefrequenz je nach Bedarf zu erhöhen oder zu erniedrigen. Damit kann die CPU20 die Geschwindigkeit ihrer eigenen Betriebstaktfrequenz regeln. Dieser Ablauf wiederholt sich konstant über die Rückführschleife51 , damit sichergestellt ist, dass die CPU20 die passende Betriebsfrequenz beibehält. - Die CPU
20 ist anhand einer Reihe von Kriterien in der Lage, die passende Taktfrequenz festzustellen, die für eine korrekte Funktion erforderlich ist. Zu den Kriterien gehört, ob auf der CPU20 ein untätiger Task läuft. Läuft ein untätiger Task auf der CPU20 ,. was sehr häufig der Fall ist, so können das System und/oder die CPU20 in einen langsameren Modus versetzt werden. Verlässt die CPU20 den untätigen Task, so kann in vergleichbarer Weise der schnellere Modus freigegeben werden. - In einer solchen Ausführungsform spricht das Taktmodul
50 auf Signale an, die von einem Betriebssystem32 (OS, OS = Operating System) erzeugt werden und in einem Speicher26 gespeichert sind, z. B. einem Speicher mit wahlfreiem Zugriff oder einem elektronisch programmierbaren Speicher, z. B. einem Flash-Speicher. Im Speicher26 ist auch eine Tabelle 28 abgelegt, die zum Speichern von Information für das Standard-Interruptbearbeitungsprogramm verwendet wird, und zwar einschließlich einer Interruptliste und Adressen für Interruptbearbeitungsprogramme. In dieser Ausführungsform kann man die Tabelle 28 zum Speichern von Information hinsichtlich der Interruptbearbeitungsprogramme und der zugehörigen Verarbeitungsanforderungen an die CPU verwenden. Man kann die Tabelle 28 insbesondere dazu verwenden, eine vorbestimmte minimale Taktverarbeitungsgeschwindigkeit zu speichern, bei der die CPU20 arbeiten kann, wenn sich das OS 32 in einem untätigen Zustand befindet. Verarbeitet die CPU20 beispielsweise keine Tasks, so kann das OS32 in einen untätigen Status gehen und dabei ein OS Idle-Signal erzeugen. Man beachte, dass die Idlesignal-Meldungsverfahren bekannt sind und daher Einzelheiten der Implementierung nicht angegeben werden. Hat das Betriebssystem32 erkannt, dass das System in einen untätigen Zustand gegangen ist, so greift es auf die Tabelle 28 zu und liest die CPU-Geschwindigkeit, die zum OS_Idle-Status gehört . Demgemäß sendet das OS32 ein Signal über die Leitung19 an das Taktmodul50 , das dieses anweist, die CPU20 mit der in Tabelle 28 festgelegten Taktgeschwindigkeit zu versorgen, die zu einem OS_dle-Signal gehört. Dadurch wird die Taktfrequenz der CPU20 auf die geringstmögliche Geschwindigkeit abgesenkt, bei der das System korrekt arbeitet. - In ähnlicher Weise kann man die Tabelle 28 dazu verwenden, einen vorbestimmten Wert der Taktgeschwindigkeit für die CPU
20 zu speichern, falls sich das OS32 nicht mehr in einem untätigen Zustand befindet, beispielsweise nach dem Erhalt eines Tastatur- oder Mausinterrupts. Für die größtmögliche Leistung hat dies in der Regel zur Folge, dass die CPU20 mit ihrer höchsten zulässigen Taktfrequenz arbeitet. Das OS 32 greift also nach dem Empfang eines Tastatur- oder Mausinterrupts auf die Tabelle 28 zu und ermittelt den vorbestimmten CPU-Betriebstakt, der zu dem besonderen empfangenen Interrupt gehört. Demgemäß weist das OS32 nun das Taktmodul50 an, die CPU20 mit der vorbestimmten Taktfrequenz zu versorgen. - Bei Betrieb geht das System in einen Modus, in dem die CPU
20 mit geringerer Geschwindigkeit arbeitet, falls das OS32 feststellt, dass eine Verarbeitung nicht erfolgt oder für eine vorbestimmte Zeitspanne nicht erfolgt ist. Drückt der Benutzer Tasten auf der Tastatur, bewegt er die Maus oder führt er irgendeine andere Aktivität aus, so erhält das OS32 den Interrupt, gleicht ihn mit der Tabelle 28 ab und weist das Taktmodul50 an, die Taktfrequenz der CPU20 zu erhöhen. - Das CPU-Geschwindigkeitsregelsystem
18 ist dafür ausgelegt, den weiteren Controllern und Bussen im System eine programmierbar veränderliche Taktfrequenz zu liefern, beispielsweise dem Speichercontroller22 und/oder dem System- oder Pheripheriebuscontroller24 . In dieser Ausführungsform trägt das Absenken der Taktfrequenz, bei der jeder der Controller arbeitet, zusätzlich zu den Gesamtenergieeinsparungen bei. Damit bewegen sich die Daten und Befehle auf dem Daten/Befehlsbus21 auch mit einer proportional geringeren Geschwindigkeit. - Im Einzelnen liefert das Taktmodul
50 über eine Speichertakt-Steuerleitung23 ein Taktsignal an den Speichercontroller22 . Es liefert auch über eine Systembustakt-Steuerleitung25 ein Taktsignal an den Systembuscontroller24 . Die beiden Taktsteuerleitungen sind so dargestellt, dass sie vom gleichen Taktmodul50 ausgehen. Man beachte jedoch, dass die Speichertakt-Steuerleitung23 und die Systembustakt-Steuerleitung25 getrennte Leitungen sein können, falls man mehrere Taktmodule verwendet, um in jeden Controller Taktsignale mit verschiedener Frequenz einzuspeisen. Der Speichercontroller22 ist auch mit dem Speicher26 verbunden, in dem neben dem gespeicherten Betriebssystem32 auch die geladenen Anwendungen30 abgelegt sind. Der Systembuscontroller24 kann mit optionalen Peripheriegeräten verbunden sein. Sendet also wie beschrieben das OS32 ein Signal an das Taktmodul50 , das dieses anweist, der CPU20 die in der Tabelle 28 festgelegte Taktgeschwindigkeit zu liefern, die zu einem OS_Idle-Signal gehört, so arbeiten der Speichercontroller22 und der Systembuscontroller24 beide mit der festgelegten geringeren Taktfrequenz. In ähnlicher Weise werden der Speichercontroller22 und der Controller24 ebenfalls schneller, wenn das System den OS_Idle-Status verlässt und das Taktausgangssignal des Taktmoduls50 schneller wird. - Gemäß einer weiteren Ausführungsform der Erfindung wird das OS
32 dazu verwendet, die Frequenz des Taktmoduls50 abhängig von einer CPU-Auslastungsanwendung zu kontrollieren, die dynamisch die Höhe der CPU-Auslastung überwacht. Derartige CPU-Überwachungsprogramme sind breit verfügbar und in vielen Fällen in den Betriebssystemprogrammen enthalten. Der CPU-Auslastungsgrad kann von der besonderen Anwendung sowie von der Anzahl der Anwendungen abhängen, die zu irgendeinem gegebenen Zeitpunkt abgearbeitet werden. Beispielsweise kann in einem System mit einem 266 MHz Pentium II Prozessor eine Textverarbeitungsprogramm-Anwendung lediglich 5–10 Prozent der Ressourcen der CPU20 erfordern, ein Grafikwiedergabeprogramm dagegen mehr als 90 Prozent. Andere Anwendungen, z. B. computerunterstützte Entwurfsprogramme (CAD, CAD = Computer Aided Design) können einen dazwischen liegenden Bereich erfordern, z. B. 35–40 Prozent. Damit kann man die CPU, die das Textverarbeitungsprogramm ausführt, nicht mit der vollen Taktgeschwindigkeit betreiben, bei der nur 10 Prozent der Zyklen genutzt werden, sondern statt dessen mit 33 MHz, wobei 90 Prozent der CPU-Zyklen genutzt werden. In ähnlicher Weise kann das CAD-Programm erfordern, dass die CPU bei 150 MHz arbeitet, damit eine Auslastung von 90 Prozent erhalten bleibt. - Abhängig von den CPU-Auslastungswerten, die die GPU-Überwachung liefert, erzeugt das OS 32 einen Interrupt für das Taktmodul
50 , das dieses anweist, die der CPU20 gelieferte Taktfrequenz zu erhöhen oder zu senken. Wahlweise kann das OS32 so programmiert werden, dass ein Interrupt nur dann erzeugt wird, wenn ein vorbestimmter Grenzwert überschritten wird. Beispielsweise kann die CPU20 für ein bestimmtes Programm, für das die CPU20 mit 30 MHz laufen muss , mit 40 MHz getaktet sein, so dass die Auslastung nur 80 Prozent beträgt. Wird ein weiteres Programm abgearbeitet, so kann die GPU-Auslastung auf 90 Prozent steigen. An diesem Punkt erzeugt das OS32 , um mögliche Computerabstürze zu verhindern, einen Interrupt, der die Geschwindigkeit der CPU erhöht, damit zu einer CPU-Auslastung von 80 Prozent zurückgekehrt wird. Sinkt die CPU-Auslastung, so erzeugt das OS32 in vergleichbarer Weise Interrupts, die die Geschwindigkeit der CPU senken. - Gemäß einer weiteren Ausführungsform der Erfindung wird das Betriebssystem
32 dazu verwendet, die Frequenz des Taktmoduls50 abhängig von der besonderen Anwendung bzw. dem besonderen Task zu regeln, die bzw. der vom System ausgeführt wird. Beispielsweise kann ein Anwendungsprogramm, etwa ein Textverarbeitungssystem, das mit voller Kapazität laufen soll, erfordern, dass ein 266 MHz Pentium Prozessor mit nur 33 MHz läuft, wogegen eine prozessorintensive Anwendung, etwa ein Sprachdiktat, die volle Verarbeitungsgeschwindigkeit verlangt. - Die Speichervorrichtung
26 speichert wie erwähnt das OS32 , die Tabelle 28 und die Anwendungsprogramme30 . In dieser besonderen Ausführungsform ist in jedem Interrupt-Abarbeitungsprogramm eine Zahl abgelegt, die seine Leistungsanforderungen angibt. Nach dem Hochfahren des Computersystems werden die verschiedenen Verarbeitungsanforderungen in die Tabelle 28 geladen, und zwar entweder vom OS 32 oder dem Anwendungsprogramm30 . Im Einzelnen besitzt jedes Anwendungsprogramm oder jeder andere Task eine besondere vorbestimmte Optimalbetriebsfrequenz, die ihm zugeordnet ist. Diese Zuordnung erfolgt normalerweise im Betriebssystem. Man kann jedoch daran denken, dass diese Zuweisung auch in Anwendungen oder in anderen Laufzeitbibliotheken erfolgt. wie beschrieben kann man die Anforderungen an die Verarbeitungsleistung in derjenigen. Tabelle ablegen, in der auch die Interrupts und die Adressen der Interrupt-Abarbeitungsprogramme gehalten werden (z. B. in Tabelle 28). - Die Anforderungen an die Verarbeitungsleistung kann man auf verschiedene Weisen berechnen. Die Anforderung kann insbesondere eine Zeitanforderung sein, z. B. fünf Mikrosekunden, die anzeigt, dass der Task alle fünf Mikrosekunden bedient werden muss. Nach dem Laden der Tabelle wird die Prozessorleistung überprüft und die Taktgeschwindigkeit wird in die Tabelle geladen. Beispielsweise kann ein Pentium eine höhere Taktgeschwindigkeit erfordern als ein Pentium II, damit er alle fünf Mikrosekunden Interrupts bedienen kann. Man beachte, dass man die Leistungsanforderungen auf eine Standardbenchmark stützen kann, z. B. Winstone 10.3. Diese wird dann beim Laden der Tabelle in die für den Prozessor erforderliche Taktgeschwindigkeit umgesetzt.
- Wird ein bestimmter Code oder ein bestimmtes Anwendungsprogramm ausgeführt und ein bestimmter Interrupt aufgerufen, so sendet das OS
32 vor dem Laden des Interrupt-Abarbeitungsprogramms einen Befehl an das Taktmodul50 , die geeignete Taktfrequenz auszugeben. Normalerweise steuert das Taktmodul50 (wie erwähnt) den gesamten Systembus an und verringert dadurch den Leistungsbedarf des Prozessors, der zugehörigen Chipsätze, des Speichers, der Controller usw. In ähnlicher Weise kann man in einem Mehrfachprozessorsystem (nicht dargestellt) ein eigenes Taktmodul50 für jeden Prozessor verwenden, oder ein einziges Taktmodul50 kann alle Prozessortakte liefern. In gewissen Fällen können durch besondere Systemplatinenarchitekturen die CPU und die Systembusse mit Hilfe von getrennten Taktmodulen getaktet werden. In derartigen Fällen kann man ein getrenntes programmierbares Taktmodul (nicht dargestellt) verwenden, das auf einen zweiten Taktwert anspricht, der ebenfalls in der Tabelle 28 gespeichert werden kann. Da die Leistungsaufnahme jedoch nahezu proportional zur CPU-Taktgeschwindigkeit ist, besteht das wirksamste Verfahren zum Senken der Leistungsaufnahme in der Veränderung der Taktgeschwindigkeit der CPU20 . - Wie erwähnt tritt die geringste Leistungsaufnahme auf, wenn das OS_Idle-Signal aktiv ist. Wird jedoch vom System ein Interrupt empfangen, beispielsweise durch eine Mauseingabe oder eine Tastatureingabe, so wird die Taktgeschwindigkeit eingestellt, die dem folgenden Task entspricht. Zudem kann das System abhängig von der Systembauart Vorteil daraus ziehen, wenn zwischen den Tastendrücken von hoher Geschwindigkeit auf geringe Geschwindigkeit umgeschaltet wird (und umgekehrt). Da der Benutzer generell im schnellstmöglichen Fall nur einige Zeichen pro Sekunde eingibt, kann man mehrere hundert Millionen Taktzyklen einsparen, falls diese Umschaltung eingesetzt wird.
- Bei Betrieb geht das System im Schritt
100 sofort in ein Energiespar-Unterprogramm, das eine Funktion des Systemstartvorgangs sein kann. Nach dem Laden des Betriebssystems im Schritt102 oder im Fall eines Anwendungsprogramms beim Laden der Programmbibliotheken werden die verschiedenen Verarbeitungsanforderungen in der Tabelle 28 im Speicher26 abgelegt. - Im Schritt
104 stellt das System fest, ob eine Anwendung ausgeführt wird und ob ein bestimmtes Interrupt-Abarbeitungsprogramm aufgerufen wird. Wird im Schritt104 festgestellt, dass ein Anwendungsprogramm ausgeführt wird, so sendet das Betriebssystem vor dem Laden des Interrupt-Abarbeitungsprogramms im Schritt106 einen Befehl zum Einstellen der passenden Geschwindigkeit an das intelligente Taktmodul. Wird keine Anwendung ausgeführt, so kehrt das System zum Schritt102 zurück und lädt bei Bedarf weitere Anwendungen. - Im Schritt
108 stellt das System fest, ob ein Interrupt empfangen worden ist. Trifft dies zu, so stellt das System im Schritt110 den Frequenzsynthesizer auf die neue Taktgeschwindigkeit ein, die vorgegeben und in der Tabelle gespeichert ist . Ist kein Interrupt empfangen worden, so kehrt das System zum Schritt108 zurück und wartet weiter auf einen Interrupt. - Nach dem Setzen der neuen Taktgeschwindigkeit im Schritt
110 stellt das System im Schritt112 fest, ob eine andere Anwendung ausgeführt wird. Werden keine anderen Anwendungen ausgeführt, so kehrt das System wiederum zum Schritt108 zurück und stellt fest, ob ein anderer Interrupt empfangen wird. Wird jedoch eine andere Anwendung ausgeführt, so kehrt das System zum Schritt106 zurück und weist den Frequenzsynthesizer an, die geeignete Geschwindigkeit einzustellen, die zu der besonderen ausgeführten Anwendung gehört.
Claims (16)
- Geschwindigkeitsregelsystem für eine Zentraleinheit (CPU), umfassend: eine oder mehrere CPUs (
20 ); einen Eingabe/Ausgabe(I/O)-Bus; einen Speicherbus; und ein intelligentes Taktmodul (50 ), so betreibbar, dass es die oder die mehreren CPUs (20 ) mit einer Betriebsfrequenz versorgt, die sich abhängig von den Leistungsanforderungen der bzw. den CPUs (20 ) verändert, dadurch gekennzeichnet, dass das intelligente Taktmodul so betreibbar ist, dass es die veränderbare Betriebsfrequenz auch an den Eingabe/Ausgabe(I/O)-Bus und den Speicherbus liefert. - Geschwindigkeitsregelsystem für eine CPU nach Anspruch
1 , wobei das intelligente Taktmodul (50 ) einen programmierbaren Frequenzsynthesizer umfasst, und das System zudem eine Speichervorrichtung (26 ) enthält, die dafür ausgelegt ist, ein oder mehrere anwendungsspezifische CPU-Leistungsanforderungen zu speichern. - Geschwindigkeitsregelsystem für eine CPU nach Anspruch 1 oder 2, worin das intelligente Taktmodul (
50 ) so betreibbar ist, dass es der bzw. allen CPUs (20 ) ermöglicht, ihre eigene Betriebsfrequenz zu verändern. - Geschwindigkeitsregelsystem für eine CPU nach Anspruch 1, 2 oder 3, worin das intelligente Taktmodul (
50 ) so betreibbar ist, dass es der bzw. den CPUs (20 ) ermöglicht, die veränderbare Betriebsfrequenz abzuwandeln. - Geschwindigkeitsregelsystem für eine CPU nach Anspruch 2 oder Anspruch 3 oder 4 wenn abhängig von Anspruch 2, worin die Speichervorrichtung (
26 ) eine Tabelle (28) enthält, die so eingerichtet ist, dass sie ein oder mehrere Interrupt-Bearbeitungsroutinen speichert, und die Tabelle (28) zudem dafür eingerichtet ist, dass sie ein oder mehrere Leistungsanforderungen speichert, die zu der bzw. den Interrupt-Bearbeitungsroutinen gehören. - Geschwindigkeitsregelsystem für eine CPU nach Anspruch 2 oder irgendeinem der Ansprüche 3 bis 5 wenn abhängig von Anspruch 2, worin die Speichervorrichtung (
26 ) eine Ablagevorrichtung enthält, in der eine bzw. mehrere Leistungsanforderungen abgelegt sind, und zwar abhängig davon, ob sich ein oder mehrere CPUs (20 ) in einem untätigen Zustand befinden. - Geschwindigkeitsregelsystem für eine CPU nach irgendeinem der vorhergehenden Ansprüche, umfassend Vorrichtungen zum Senden eines Befehls von einem Betriebssystem (
32 ) an das intelligente Taktmodul (50 ), der es dem intelligenten Taktmodul (50 ) erlaubt, seine Frequenz abzuwandeln. - Geschwindigkeitsregelsystem für eine CPU nach Anspruch 1, das eine Speichervorrichtung (
26 ) enthält, die anwendungsspezifische CPU-Verarbeitungsanforderungen speichert und zum Bereitstellen von Leistungsmanagementmerkmalen betreibbar ist, zudem umfassend ein oder mehrere intelligente Taktmodule (50 ) wie erwähnt, um ein oder mehrere programmierbar veränderliche Betriebsfrequenzen abhängig von den anwendungsspezifischen Leistungskriterien bereitzustellen. - Geschwindigkeitsregelsystem für eine CPU nach Anspruch 8, wobei die eine oder die mehreren CPUs (
20 ) die Betriebsfrequenz oder -frequenzen abwandeln können, die das bzw. die intelligenten Taktmodule (50 ) an die oder die mehreren CPUs (20 ) ausgeben, damit die oder die mehreren CPUs (20 ) ihre eigene Arbeitsgeschwindigkeit abwandeln können. - Geschwindigkeitsregelsystem für eine CPU nach Anspruch 8, umfassend: einen CPU-Ressourcennutzungsmonitor, der den Umfang der vom Computersystem genutzten CPU-Ressourcen ermittelt, wobei das bzw. die Taktmodule (
50 ) zum Versorgen der bzw. der mehreren CPUs (20 ), des I/O-Busses und des Speicherbusses mit der veränderbaren Betriebsfrequenz bzw. den Frequenzen betreibbar sind, und zwar abhängig vom Umfang der ermittelten CPU-Ressourcen, die das Computersystem nutzt. - Geschwindigkeitsregelsystem für eine CPU nach Anspruch 10, zudem umfassend eine Vorrichtung zum Einstellen eines vorbestimmten Grenzwertpegels, bei dem die Betriebsfrequenz bzw. die Frequenzen automatisch verändert werden.
- Verfahren in einem Computersystem, das eine CPU (
20 ), einen Speicherbus und einen I/O-Bus aufweist, zum Verändern der Betriebsfrequenz der CPU (20 ), wobei das Verfahren die Schritte umfasst: Bereitstellen ein oder mehrerer programmierbarer Frequenzsynthesizer (50 ), der ein bzw. mehrere veränderbare Taktfrequenzen liefern; und Ermöglichen, dass die ein oder mehreren Taktfrequenzen, die der eine bzw. die mehreren programmierbaren Frequenzsynthesizer (50 ) liefern, abhängig von ein oder mehreren vorbestimmten Systemanforderungen verändert werden, gekennzeichnet durch den Schritt des Veränderns der Taktfrequenz nicht nur der CPU (20 ) sondern auch des Speicherbusses und des I/O-Busses, wenn angemessen. - Verfahren nach Anspruch 12, zudem umfassend den Schritt des Ermittelns der Höhe der CPU-Auslastung.
- Verfahren nach Anspruch 13, zudem umfassend den Schritt des Veränderns der Taktfrequenz der CPU (
20 ) abhängig vom ermittelten Pegel der CPU-Auslastung. - Verfahren nach Anspruch 13 oder 14 , zudem umfassend den Schritt des Speicherns der CPU-Verarbeitungsanforderungen für ein bzw. mehrere Anwendungsprogramme.
- Verfahren nach Anspruch 15, auch umfassend den Schritt des Veränderns der Taktfrequenz der CPU (
20 ) abhängig von den Verarbeitungsanforderungen falls das bzw. die mehreren Anwendungsprogramme abgearbeitet werden.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/217,693 US6298448B1 (en) | 1998-12-21 | 1998-12-21 | Apparatus and method for automatic CPU speed control based on application-specific criteria |
US217693 | 1998-12-21 | ||
PCT/US1999/029781 WO2000038038A1 (en) | 1998-12-21 | 1999-12-15 | Apparatus and method for automatic cpu speed control |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69907512D1 DE69907512D1 (de) | 2003-06-05 |
DE69907512T2 true DE69907512T2 (de) | 2004-04-08 |
Family
ID=22812105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69907512T Expired - Lifetime DE69907512T2 (de) | 1998-12-21 | 1999-12-15 | Gerät und verfahren zur automatischen frequenzregelung einer zentralen verarbeitungseinheit |
Country Status (9)
Country | Link |
---|---|
US (1) | US6298448B1 (de) |
EP (1) | EP1141812B1 (de) |
JP (1) | JP2002533801A (de) |
KR (1) | KR100707530B1 (de) |
CN (1) | CN1145870C (de) |
BR (1) | BR9916425A (de) |
CA (1) | CA2355335A1 (de) |
DE (1) | DE69907512T2 (de) |
WO (1) | WO2000038038A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004059996A1 (de) * | 2004-12-13 | 2006-06-14 | Infineon Technologies Ag | Verfahren und Vorrichtung zum Einstellen der Taktfrequenz eines Prozessors |
Families Citing this family (84)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7100061B2 (en) * | 2000-01-18 | 2006-08-29 | Transmeta Corporation | Adaptive power control |
US6684341B1 (en) * | 2000-03-09 | 2004-01-27 | International Business Machines Corporation | Method of altering the appearance of an icon of a program to provide an indication to a user that a power management is associated with the particular program |
KR100361340B1 (ko) * | 2000-05-15 | 2002-12-05 | 엘지전자 주식회사 | 씨피유 클럭 제어 방법 |
US6785829B1 (en) * | 2000-06-30 | 2004-08-31 | Intel Corporation | Multiple operating frequencies in a processor |
EP1182552A3 (de) * | 2000-08-21 | 2003-10-01 | Texas Instruments France | Dynamische Hardware-Konfiguration für Energieverwaltungsysteme mit Aufgabenattributen |
EP1182548A3 (de) * | 2000-08-21 | 2003-10-15 | Texas Instruments France | Dynamische Hardware-Steuerung für Energieverwaltungsysteme mit Aufgabenattributen |
KR100613201B1 (ko) * | 2000-08-28 | 2006-08-18 | 마이크로코넥트 엘엘씨 | 씨피유 사용량 측정 방법 |
US7596709B2 (en) * | 2000-12-30 | 2009-09-29 | Intel Corporation | CPU power management based on utilization with lowest performance mode at the mid-utilization range |
JP2002215599A (ja) * | 2001-01-18 | 2002-08-02 | Mitsubishi Electric Corp | マルチプロセッサシステムおよびその制御方法 |
US7058824B2 (en) * | 2001-06-15 | 2006-06-06 | Microsoft Corporation | Method and system for using idle threads to adaptively throttle a computer |
JP4139579B2 (ja) * | 2001-06-19 | 2008-08-27 | 株式会社ルネサステクノロジ | 半導体装置および半導体装置の動作モード制御方法 |
US6622253B2 (en) * | 2001-08-02 | 2003-09-16 | Scientific-Atlanta, Inc. | Controlling processor clock rate based on thread priority |
WO2003013328A1 (en) * | 2001-08-10 | 2003-02-20 | W.C. Bradley Company | Portable barbecue grill and thermal chest |
US6529082B1 (en) | 2001-10-11 | 2003-03-04 | International Business Machines Corporation | Dual mode charge pump |
US6529084B1 (en) | 2001-10-11 | 2003-03-04 | International Business Machines Corporation | Interleaved feedforward VCO and PLL |
US7111179B1 (en) | 2001-10-11 | 2006-09-19 | In-Hand Electronics, Inc. | Method and apparatus for optimizing performance and battery life of electronic devices based on system and application parameters |
US6515530B1 (en) | 2001-10-11 | 2003-02-04 | International Business Machines Corporation | Dynamically scalable low voltage clock generation system |
US6809602B2 (en) * | 2001-10-11 | 2004-10-26 | International Business Machines Corporation | Multi-mode VCO |
US7203943B2 (en) * | 2001-10-31 | 2007-04-10 | Avaya Technology Corp. | Dynamic allocation of processing tasks using variable performance hardware platforms |
EP1351117A1 (de) * | 2002-04-03 | 2003-10-08 | Hewlett-Packard Company | Datenverarbeitungssystem und -verfahren |
US7124315B2 (en) * | 2002-08-12 | 2006-10-17 | Hewlett-Packard Development Company, L.P. | Blade system for using multiple frequency synthesizers to control multiple processor clocks operating at different frequencies based upon user input |
US7634668B2 (en) * | 2002-08-22 | 2009-12-15 | Nvidia Corporation | Method and apparatus for adaptive power consumption |
US7051227B2 (en) * | 2002-09-30 | 2006-05-23 | Intel Corporation | Method and apparatus for reducing clock frequency during low workload periods |
CN100351780C (zh) * | 2002-12-25 | 2007-11-28 | 英华达股份有限公司 | 使用微处理器控制个人数字助理的电力系统的方法 |
EP1584020B1 (de) * | 2003-01-13 | 2011-08-10 | ARM Limited | Datenverarbeitungsleistungssteuerung |
US7673118B2 (en) * | 2003-02-12 | 2010-03-02 | Swarztrauber Paul N | System and method for vector-parallel multiprocessor communication |
TW200416522A (en) | 2003-02-25 | 2004-09-01 | Asustek Comp Inc | Portable computer carrying desktop computer processor and power management method thereof |
TW200416556A (en) | 2003-02-25 | 2004-09-01 | Asustek Comp Inc | Portable computer carrying desktop computer processor and power saving method thereof |
CN1313947C (zh) * | 2003-03-06 | 2007-05-02 | 华硕电脑股份有限公司 | 搭载台式电脑处理器的可携式电脑及其省电方法 |
CN100334575C (zh) * | 2003-03-06 | 2007-08-29 | 华硕电脑股份有限公司 | 搭载台式电脑用处理器的可携式电脑及其电源管理方法 |
GB2403823B (en) | 2003-07-08 | 2005-09-21 | Toshiba Res Europ Ltd | Controller for processing apparatus |
KR100663408B1 (ko) | 2003-07-14 | 2007-01-02 | 엘지전자 주식회사 | 씨피유 속도 트랜지션 제어장치 및 방법 |
KR100934243B1 (ko) * | 2003-08-12 | 2009-12-28 | 엘지전자 주식회사 | 휴대용 전자기기에서의 씨피유 클럭 주파수 제어방법 |
DE10340393A1 (de) * | 2003-09-02 | 2005-04-07 | Micro-Star International Co., Ltd., Jung He | Taktimpuls-Einstellvorrichtung |
GB2405962B (en) * | 2003-09-12 | 2006-01-18 | Giga Byte Tech Co Ltd | Arrangement and method that automatically adjust CPU clock frequency |
US20050076253A1 (en) * | 2003-10-05 | 2005-04-07 | De-Jen Lu | Method of url-based power management and associated web browsing device |
US7565655B2 (en) * | 2003-10-17 | 2009-07-21 | International Business Machines Corporation | Methods and systems for control discovery in computing systems |
CN1310141C (zh) * | 2003-12-02 | 2007-04-11 | 威盛电子股份有限公司 | 处理器电源管理以及总线最佳化方法 |
JP4433782B2 (ja) * | 2003-12-17 | 2010-03-17 | 株式会社日立製作所 | 情報処理装置及びオペレーティングシステム |
GB2410344B (en) * | 2004-01-26 | 2006-03-15 | Toshiba Res Europ Ltd | Dynamic voltage controller |
TWI276950B (en) * | 2004-02-12 | 2007-03-21 | Intervideo Digital Technology | Computer power management architecture and method thereof |
US7228448B2 (en) * | 2004-02-13 | 2007-06-05 | Microsoft Corporation | Method for making power supplies smaller and more efficient for high-power PCs |
US7606960B2 (en) * | 2004-03-26 | 2009-10-20 | Intel Corporation | Apparatus for adjusting a clock frequency of a variable speed bus |
US7698575B2 (en) * | 2004-03-30 | 2010-04-13 | Intel Corporation | Managing power consumption by requesting an adjustment to an operating point of a processor |
CN1684019B (zh) * | 2004-04-16 | 2012-11-07 | 瑞昱半导体股份有限公司 | 具有可调整操作频率的处理单元及相关方法 |
US7500123B2 (en) * | 2004-06-28 | 2009-03-03 | Ati Technologies Ulc | Apparatus and method for reducing power consumption in a graphics processing device |
US7711966B2 (en) * | 2004-08-31 | 2010-05-04 | Qualcomm Incorporated | Dynamic clock frequency adjustment based on processor load |
US7525999B2 (en) | 2004-12-10 | 2009-04-28 | Electronics And Telecommunications Research Institute | Method and apparatus for providing dual variable clocks for low-power wireless packet communication |
US7739685B2 (en) * | 2005-01-06 | 2010-06-15 | International Business Machines Corporation | Decoupling a central processing unit from its tasks |
EP1949203B1 (de) * | 2005-07-14 | 2011-11-30 | Nxp B.V. | Verwendung von vorgeschichtlichen lastprofilen zur dynamischen justierung der betriebsfrequenz und verfügbaren leistung für einen prozessorkern eines in der hand gehaltenen multimedia-geräts |
CN100349098C (zh) * | 2005-11-28 | 2007-11-14 | 北京中星微电子有限公司 | 基于任务的动态调节cpu工作频率的方法及系统 |
US20070136615A1 (en) * | 2005-12-08 | 2007-06-14 | Electronics And Telecommunications Research Institute | System and method for reducing power used to execute application program |
TW200805047A (en) * | 2005-12-23 | 2008-01-16 | Koninkl Philips Electronics Nv | Performance analysis based system level power management |
CN100346305C (zh) * | 2006-01-06 | 2007-10-31 | 浙江大学 | 编译器和操作系统内核协同的节能方法 |
US7574613B2 (en) * | 2006-03-14 | 2009-08-11 | Microsoft Corporation | Scaling idle detection metric for power management on computing device |
WO2007112781A1 (en) * | 2006-04-04 | 2007-10-11 | Freescale Semiconductor, Inc. | Electronic apparatus and method of conserving energy |
WO2008075137A1 (en) * | 2006-12-21 | 2008-06-26 | Nokia Corporation | Data processing apparatus |
US8316158B1 (en) | 2007-03-12 | 2012-11-20 | Cypress Semiconductor Corporation | Configuration of programmable device using a DMA controller |
US8060661B1 (en) | 2007-03-27 | 2011-11-15 | Cypress Semiconductor Corporation | Interface circuit and method for programming or communicating with an integrated circuit via a power supply pin |
CN101498962B (zh) * | 2008-01-30 | 2012-04-04 | 安凯(广州)微电子技术有限公司 | 便携式媒体播放器的动态频率管理方法 |
CN101877586A (zh) * | 2009-04-30 | 2010-11-03 | 鸿富锦精密工业(深圳)有限公司 | 计算机时钟电路 |
KR101622195B1 (ko) * | 2009-11-05 | 2016-05-18 | 삼성전자주식회사 | 동적 버스 클럭을 제어하기 위한 장치 및 방법 |
US8671413B2 (en) * | 2010-01-11 | 2014-03-11 | Qualcomm Incorporated | System and method of dynamic clock and voltage scaling for workload based power management of a wireless mobile device |
US8700926B2 (en) * | 2010-01-11 | 2014-04-15 | Qualcomm Incorporated | System and method of tuning a dynamic clock and voltage switching algorithm based on workload requests |
CN102129392B (zh) * | 2010-01-18 | 2013-09-04 | 扬智科技股份有限公司 | 用来进行适应性频率调整的方法以及相关的电子装置 |
US8335935B2 (en) * | 2010-03-29 | 2012-12-18 | Intel Corporation | Power management based on automatic workload detection |
EP2596411B1 (de) | 2010-07-20 | 2019-04-24 | NXP USA, Inc. | Elektronische vorrichtung mit einer taktschaltung und verfahren zur versorgung einer elektronischen vorrichtung mit einem taktsignal |
US8578388B2 (en) | 2010-10-25 | 2013-11-05 | International Business Machines Corporation | Optimizing the performance of hybrid CPU systems based upon the thread type of applications to be run on the CPUs |
EP2482147B1 (de) * | 2011-01-31 | 2013-10-16 | Siemens Aktiengesellschaft | Verfahren zur Anpassung der Taktfrequenz eines Mikroprozessors einer industriellen Automatisierungskomponente, und Automatisierungskomponente mit einem Mikroprozessor mit veränderlicher Taktfrequenz |
JP5794010B2 (ja) * | 2011-07-19 | 2015-10-14 | 富士通株式会社 | 情報処理装置、制御プログラムおよび制御方法 |
JP5773065B2 (ja) | 2012-03-19 | 2015-09-02 | 富士通株式会社 | スケジューリングプログラム、マルチコアプロセッサシステム、およびスケジューリング方法 |
CN103513748A (zh) * | 2012-06-29 | 2014-01-15 | 联想(北京)有限公司 | 一种信息处理方法、信息处理器及电子设备 |
US9454943B2 (en) | 2012-10-16 | 2016-09-27 | Razer (Asia-Pacific) Pte. Ltd. | Computing systems and methods for controlling a computing system |
CN108776540A (zh) * | 2012-10-16 | 2018-11-09 | 雷蛇(亚太)私人有限公司 | 计算系统及用于控制计算系统的方法 |
CN103853307A (zh) * | 2012-12-04 | 2014-06-11 | 鸿富锦精密工业(深圳)有限公司 | 电子装置及降低处理器系统功耗的方法 |
JP6128833B2 (ja) * | 2012-12-25 | 2017-05-17 | キヤノン株式会社 | 処理装置 |
JP6195489B2 (ja) * | 2013-08-22 | 2017-09-13 | ルネサスエレクトロニクス株式会社 | 半導体装置、電池パック、及び携帯端末 |
US9678529B2 (en) * | 2014-09-02 | 2017-06-13 | Nvidia Corporation | Efficiency-based clock frequency adjustment |
US9760113B2 (en) * | 2015-02-20 | 2017-09-12 | Sony Interactive Entertainment America Llc | Backward compatibility through use of spoof clock and fine grain frequency control |
US9798376B2 (en) * | 2015-08-03 | 2017-10-24 | Qualcomm Incorporated | Power distribution network (PDN) droop/overshoot mitigation |
KR102375925B1 (ko) * | 2015-08-31 | 2022-03-17 | 삼성전자주식회사 | Cpu의 작동 방법과 상기 cpu를 포함하는 시스템의 작동 방법 |
US10551900B2 (en) * | 2017-03-28 | 2020-02-04 | Intel Corporation | Voltage regulator efficiency-aware system energy management |
CN111538636B (zh) * | 2020-04-24 | 2021-11-19 | 深圳华锐金融技术股份有限公司 | 计算机设备确定方法、装置和存储介质 |
KR102317086B1 (ko) | 2021-06-07 | 2021-10-25 | 서병찬 | 컴퓨팅 장치 및 그 장치의 구동방법 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4819164A (en) | 1983-12-12 | 1989-04-04 | Texas Instruments Incorporated | Variable frequency microprocessor clock generator |
US4821229A (en) * | 1985-12-12 | 1989-04-11 | Zenith Electronics Corporation | Dual operating speed switchover arrangement for CPU |
US5142684A (en) | 1989-06-23 | 1992-08-25 | Hand Held Products, Inc. | Power conservation in microprocessor controlled devices |
US5218704A (en) | 1989-10-30 | 1993-06-08 | Texas Instruments | Real-time power conservation for portable computers |
US5263173A (en) * | 1991-07-10 | 1993-11-16 | Hewlett-Packard Company | High speed clocked output driver for switching logic levels of an output pad at integer and integer and a half clock cycles |
WO1993012480A1 (en) * | 1991-12-17 | 1993-06-24 | Compaq Computer Corporation | Apparatus for reducing computer system power consumption |
US5657482A (en) * | 1993-08-24 | 1997-08-12 | Micron Electronics, Inc. | Automatic clock speed sensing system for determining the number of states needed for a time-dependent operation by sensing clock frequency |
US5546568A (en) | 1993-12-29 | 1996-08-13 | Intel Corporation | CPU clock control unit |
US5504910A (en) | 1994-02-02 | 1996-04-02 | Advanced Micro Devices, Inc. | Power management unit including software configurable state register and time-out counters for protecting against misbehaved software |
JP3866781B2 (ja) | 1994-05-26 | 2007-01-10 | セイコーエプソン株式会社 | 消費電力を効率化した情報処理装置 |
US5490059A (en) | 1994-09-02 | 1996-02-06 | Advanced Micro Devices, Inc. | Heuristic clock speed optimizing mechanism and computer system employing the same |
US5754869A (en) | 1994-10-04 | 1998-05-19 | Intel Corporation | Method and apparatus for managing power consumption of the CPU and on-board system devices of personal computers |
US5586308A (en) * | 1994-10-19 | 1996-12-17 | Advanced Micro Devices, Inc. | Clock control unit responsive to a power management state for clocking multiple clocked circuits connected thereto |
ATE205616T1 (de) * | 1994-10-19 | 2001-09-15 | Advanced Micro Devices Inc | Integrierte prozessorsysteme für tragbare informationsgeräte |
US5778237A (en) * | 1995-01-10 | 1998-07-07 | Hitachi, Ltd. | Data processor and single-chip microcomputer with changing clock frequency and operating voltage |
US5623647A (en) * | 1995-03-07 | 1997-04-22 | Intel Corporation | Application specific clock throttling |
US5812871A (en) | 1995-06-30 | 1998-09-22 | Motorola Inc. | Data processing system and a method of optimizing an operation of the data processing system |
US5826092A (en) * | 1995-09-15 | 1998-10-20 | Gateway 2000, Inc. | Method and apparatus for performance optimization in power-managed computer systems |
US5758133A (en) * | 1995-12-28 | 1998-05-26 | Vlsi Technology, Inc. | System and method for altering bus speed based on bus utilization |
US5692202A (en) * | 1995-12-29 | 1997-11-25 | Intel Corporation | System, apparatus, and method for managing power in a computer system |
CN1192298C (zh) * | 1996-01-17 | 2005-03-09 | 德克萨斯仪器股份有限公司 | 按cpu活动调节cpu时钟频率而实时管理cpu温度和节电的方法和系统 |
JP3694084B2 (ja) * | 1996-02-21 | 2005-09-14 | 三菱電機株式会社 | 携帯端末 |
US5774704A (en) * | 1996-07-29 | 1998-06-30 | Silicon Graphics, Inc. | Apparatus and method for dynamic central processing unit clock adjustment |
-
1998
- 1998-12-21 US US09/217,693 patent/US6298448B1/en not_active Expired - Lifetime
-
1999
- 1999-12-15 CN CNB998148490A patent/CN1145870C/zh not_active Expired - Lifetime
- 1999-12-15 BR BR9916425-6A patent/BR9916425A/pt not_active IP Right Cessation
- 1999-12-15 JP JP2000590031A patent/JP2002533801A/ja active Pending
- 1999-12-15 KR KR1020017007884A patent/KR100707530B1/ko active IP Right Grant
- 1999-12-15 EP EP99966276A patent/EP1141812B1/de not_active Expired - Lifetime
- 1999-12-15 WO PCT/US1999/029781 patent/WO2000038038A1/en active IP Right Grant
- 1999-12-15 CA CA002355335A patent/CA2355335A1/en not_active Abandoned
- 1999-12-15 DE DE69907512T patent/DE69907512T2/de not_active Expired - Lifetime
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004059996A1 (de) * | 2004-12-13 | 2006-06-14 | Infineon Technologies Ag | Verfahren und Vorrichtung zum Einstellen der Taktfrequenz eines Prozessors |
DE102004059996B4 (de) * | 2004-12-13 | 2006-10-05 | Infineon Technologies Ag | Verfahren und Vorrichtung zum Einstellen der Taktfrequenz eines Prozessors |
US7669067B2 (en) | 2004-12-13 | 2010-02-23 | Infineon Technologies Ag | Method and device for setting the clock frequency of a processor |
Also Published As
Publication number | Publication date |
---|---|
CN1145870C (zh) | 2004-04-14 |
CN1338067A (zh) | 2002-02-27 |
BR9916425A (pt) | 2001-09-04 |
WO2000038038A1 (en) | 2000-06-29 |
KR100707530B1 (ko) | 2007-04-12 |
EP1141812B1 (de) | 2003-05-02 |
DE69907512D1 (de) | 2003-06-05 |
KR20010099880A (ko) | 2001-11-09 |
EP1141812A1 (de) | 2001-10-10 |
US6298448B1 (en) | 2001-10-02 |
JP2002533801A (ja) | 2002-10-08 |
WO2000038038A9 (en) | 2001-05-10 |
CA2355335A1 (en) | 2000-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69907512T2 (de) | Gerät und verfahren zur automatischen frequenzregelung einer zentralen verarbeitungseinheit | |
DE112004001320B3 (de) | Verfahren, System und Vorrichtung zur Verbesserung der Leistung von Mehrkernprozessoren | |
DE112006003444B4 (de) | Verfahren und Vorrichtung zum Erfassen von Prozessorzustands-Übergängen | |
DE60031404T2 (de) | Verfahren und vorrichtung zur dynamischen änderung der grössen von pools, die die leistungsaufnahme von speichern steuern | |
DE112008000758B4 (de) | Dynamische Stromreduzierung | |
DE10141626B4 (de) | Dynamische Angleichung von Leistungsvermögen und Strombedarf | |
DE102009041723B4 (de) | Prozessor-Leistungsverbrauchsteuerung und Spannungsabsenkung über eine Mikroarchitektur-Bandbreitenbegrenzung | |
DE60116650T2 (de) | Strommodus-übergang für einen prozessor | |
DE112007001987B4 (de) | Überführen einer Rechenplattform in einen Systemzustand niedriger Leistung | |
DE60226176T2 (de) | Verfahren und programme zur einstellung von prioritätsstufen in einem datenverarbeitungssystem mit multiprogrammierung und priorisierte warteschlangenbildung | |
DE10393969T5 (de) | Mechanismus zur Verteilung von Unterbrechungen niedrigster Priorität unter Berücksichtigung des Prozessorleistungszustands | |
DE69432514T2 (de) | Leistungssteuerung in einem Computersystem | |
DE60110847T2 (de) | Rechnersystem mit niedrigem energieverbrauch | |
DE69532226T2 (de) | Taktssteuerungseinheit | |
DE60133290T2 (de) | Verfahren und vorrichtung zur versorgung von deterministischer anschalt-spannung in einem system mit prozessorgesteuertem spannungs-pegel | |
DE19882704C2 (de) | Verfahren und Einrichtung für ein Stromversorgungsmanagement | |
DE112008004030B4 (de) | Leistungsverwaltung in einem System mit einem Prozessor und einem Spannungswandler, der eine Leistungsspannung zu dem Prozessor liefert | |
DE112004001887B4 (de) | Optimierung der SMI-Behandlung und -Initialisierung | |
DE102010045743A1 (de) | Verfahren und Vorrichtung um Turboleistung für das Event-Handling zu verbessern | |
DE112006002056T5 (de) | Erhöhung der Arbeitsleistung eines oder mehrerer Kerne in Multikernprozessoren | |
DE112007001713T5 (de) | System und Verfahren zum Steuern von Zuständen niedriger Energie bei Prozessoren | |
DE112013005278T5 (de) | Dynamisches Abgleichen von Leistung über eine Mehrzahl von Prozessordomänen gemäß Leistungsabgleichsteuerungs-BIAS | |
DE102014219905A1 (de) | Konfiguration von Leistungsdomänen eines Mikrocontroller-Systems | |
DE112013006184T5 (de) | Verwalten eines Leistungszustandes eines Prozessors | |
DE10231668A1 (de) | Multitaskingbetriebssystem zur Verringerung des Stromverbrauchs und elektronische Steuerung im Fahrzeug, die selbiges benutzt |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8328 | Change in the person/name/address of the agent |
Representative=s name: FRITZSCHE, T., DIPL.-CHEM. DR.RER.NAT., PAT.-ANW., |
|
R082 | Change of representative |
Ref document number: 1141812 Country of ref document: EP Representative=s name: THOMAS MICHAEL FRITZSCHE, 81545 MUENCHEN, DE |