DE10392351T5 - Verfahren zum Verringern der Leistungsaufnahme in einem Computersystem mit Busmaster-Geräten - Google Patents

Verfahren zum Verringern der Leistungsaufnahme in einem Computersystem mit Busmaster-Geräten Download PDF

Info

Publication number
DE10392351T5
DE10392351T5 DE10392351T DE10392351T DE10392351T5 DE 10392351 T5 DE10392351 T5 DE 10392351T5 DE 10392351 T DE10392351 T DE 10392351T DE 10392351 T DE10392351 T DE 10392351T DE 10392351 T5 DE10392351 T5 DE 10392351T5
Authority
DE
Germany
Prior art keywords
bus master
memory
master device
processor
energy
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.)
Ceased
Application number
DE10392351T
Other languages
English (en)
Inventor
James Saratoga Kardach
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE10392351T5 publication Critical patent/DE10392351T5/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0837Cache consistency protocols with software control, e.g. non-cacheable data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • G06F12/0835Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means for main memory peripheral accesses (e.g. I/O or DMA)
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

Verfahren, welches Folgendes umfasst:
Ein Speicher, der von einem Busmaster-Gerät verwendet wird, wird auf nicht-cachebar gesetzt, wobei sich der Speicher und das Busmaster-Gerät in einem Computersystem befinden;
ein Busmaster-Statusbit (BM_STS) wird bei Busmaster-Speicheroperationen durch das Busmaster-Gerät mit dem Speicher nicht gesetzt; und
der Prozessor in dem Computersystem wird in einen energiesparenden Zustand versetzt.

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft allgemein das Gebiet des Powermanagements. Genauer betrifft die vorliegende Erfindung Verfahren und Systeme, die es ermöglichen, Prozessoren in energiesparende Zustände zu versetzen.
  • STAND DER TECHNIK
  • Die "Advanced Configuration and Power Interface"-Spezifikation (ACPI) definiert eine Hard- und Softwareumgebung, die der Betriebssystemsoftware (OS) vollständige Sichtbarkeit von und Kontrolle über Systemkonfiguration und Powermanagement gewährt. ACPI vereinigt in sich Powermanagement- und Plug-and-play-Funktionalität für Computersysteme. ACPI beschreibt einen Satz gültiger Prozessor-Betriebszustände sowie die zwischen diesen Zuständen zulässigen Übergänge. Die oberen vier für den Prozessor definierten Zustände sind C0, C1, C2 und C3. Der C0-Zustand ist ein normaler Betriebszustand. Der C1-Zustand ist ein energiesparender Zustand mit niedriger Latenzzeit, der ohne Unterstützung durch die Chipsatz-Logik auskommt und den gesamten im Cache befindlichen Kontext erhält. Der C2-Zustand ist ein energiesparenderer Zustand mit etwas höherer Latenzzeit, der Unterstützung durch die Chipsatz-Logik benötigt, aber weiterhin den gesamten im Cache befindlichen Kontext erhält. Der C3-Zustand ist ein noch energiesparenderer Zustand mit höherer Latenzzeit, der ebenso Unterstützung durch die Chipsatz-Logik benötigt, wobei aber der im Cache befindliche Kontext verloren gehen kann. Auf der IA-32-Architektur basierende Systeme bilden typischerweise den HALT-(HLT)-Befehl auf den C1-Zustand, STOPGRANT/QUICKSTART auf den C2-Zustand und die Deep-Sleep-Operation (Abschalten des Prozessortakt-Eingangssignals) auf den C3-Zustand ab. In den Zuständen C1 und C2 kann der Systemprozessor den Bus snoopen. Im C3-Zustand kann der Systemprozessor den Bus nicht snoopen.
  • Im Falle eines OS mit ACPI-Unterstützung muss das OS in Abhängigkeit von Ein-Ausgabe-(I/O)-Aktivität und den verfügbaren Prozessorzuständen sowie deren Attributen eine Richtlinienentscheidung darüber treffen, in welchen energiesparenden Zustand der Prozessor versetzt werden soll. Zur Unterstützung des OS bei dieser Richtlinienentscheidung stellt das ACPI-System ein Busmaster-Statusbit (BM_STS) und ein Arbiter-Sperrbit (ARB_DIS) bereit. Das ACPI-System stellt zudem Kontrollmethoden bereit, welche die verschiedenen verfügbaren Prozessorzustände beschreiben. Die BM_STS- und ARB_DIS-Bits ermöglichen dem OS die Entscheidung, wann der Prozessor in den C3-Zustand versetzt werden soll, und wann in den wesentlich weniger energiesparenden C2-Zustand.
  • Die Richtlinie für die Entscheidung zwischen den energiesparenden Zuständen C2 oder C3 beruht auf den Fähigkeiten des Systems im C3-Zustand. Wie zuvor angeführt, ist der Prozessor im C3-Zustand nicht in der Lage, Snooping auszuführen, und darüber hinaus können bei Busmaster-Zugriffen Speicher-/Cachekohärenzprobleme auftreten. Deswegen verfolgt das OS die Busmaster-Zugriffsaktivität über das BM_STS-Bit. Bei geringer Aktivität sperrt es den Busarbiter (was die Ausführung von Busmastern verhindert), indem es das BM_STS-Bit setzt und den Prozessor in den C3-Zustand überführt.
  • Außerdem wirkt sich das Intervall, für welches das OS die C2/C3-Richtlinie festlegt, auf die Leistungsaufnahme des Systems auf. Bei ACPI-Betriebssystemen wird die Richtlinienentscheidung zur Festlegung des C-Zustands des Prozessors einmal pro Präemptionsintervall getroffen. Eine Präemption ist als von einem periodischen Zeitgeber erzeug ter Interrupt (auch als Timerinterrupt bekannt) definiert. Typischerweise liegt dieses Intervall in der Größenordnung von 10 ms bis 20 ms (das Intervall ist vom OS abhängig). Der Prozessor teilt seine während dieser Präemptionszeit auszuführende Arbeit ein, und wenn er diese Arbeit beendet hat, wird er in einen energiesparenden Zustand versetzt.
  • Wenn das OS den Prozessor in den energiesparenden Zustand versetzt, berücksichtigt es die in der Präemptionszeitspanne verbleibende Zeit sowie die Häufigkeit der Busmaster-Zugriffe. Bei einem Übergang in den C3-Zustand stellt das OS sicher, dass die verbleibende Präemptionszeit größer ist als die Latenzzeit zum Verlassen des C3-Zustands, und es entscheidet über die Wahrscheinlichkeit eines Busmasterzugriffs während der verbleibenden Präemptionszeit (indem es das BM_STS-Bit prüft). Wenn zum Verlassen des C3-Zustands Zeit verbleibt, und wenn keine Busmaster-Aktivität vorliegt, versetzt das OS den Prozessor in den C3-Zustand.
  • Ein energiesparendes System im Idle-Zustand möchte somit möglichst in den maximal energiesparenden Prozessorzustand übergehen (desto höher die Nummer Cx des Zustands, desto größer die Energieersparnis, d. h., C3 ist ein wesentlich energiesparenderer Zustand als C1). Außerdem muss das System, um in den C3-Zustand überzugehen, sicherstellen, dass keine Aktivität vorliegt, die die Kohärenz von Speicher und/oder Caches beeinträchtigen würde, da der Prozessor in diesem Zustand kein Snooping durchführen kann. Darüber hinaus, findet die Richtlinienentscheidung über den Cx-Zustand mindestens einmal pro Präemptionsintervall, d. h. in der Größenordnung von einmal jede ca. 10 ms, statt. Diese Bedingungen bestimmen einen C3-Idle-Zustand. Wenn es allerdings irgendwelche Ereignisse gibt, die Cachekohärenzprobleme verursachen und genau so häufig wie das Präemptionsintervall auftreten, geht der Prozessor nie in den C3-Zustand über. Das OS verfolgt alle Cachekohärenzprobleme über das BM_STS-Bit, und das OS entscheidet, dass es nicht in einen C3-Zustand übergehen kann, wenn das BM_STS-Bit gesetzt ist.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung wird beispielhaft, und nicht einschränkend, an den Figuren der beigefügten Zeichnungen erläutert, wobei gleiche Bezugszahlen gleichartige Elemente bezeichnen; es zeigen:
  • 1 ein Blockdiagramm, das ein Beispiel eines Computersystems mit nicht-cachebarem Speicher gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht,
  • 2 ein Blockdiagramm, das ein Beispiel eines Computersystems mit write-through-cachebarem Speicher gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht.
  • DETAILLIERTE BESCHREIBUNG
  • In einer Ausführungsform wird ein Verfahren offenbart, welches das Setzen des BM_STS-Bits vermeidet, so dass der Prozessor unter Beibehaltung der Speicherkohärenz in den C3-Zustand übergehen kann. Durch eine geänderte Caching-Richtlinie der Busmaster-Puffer erzeugt ein erheblicher Teil der Busmaster-Aktivität keine Cachekohärenzprobleme und muss daher nicht durch das BM_STS-Bit verfolgt werden, so dass der Prozessor häufiger in den C3-Zustand übergehen kann.
  • In der folgenden Beschreibung werden zu Erläuterungszwecken zahlreiche spezifische Details dargestellt, um ein tieferes Verständnis der vorliegenden Erfindung zu ermöglichen. Für den Fachmann ist es jedoch offensichtlich, dass die vorliegende Erfindung ohne diese spezifischen Details umgesetzt werden kann. In anderen Fällen werden bekannte Strukturen, Verfahren und Geräte in Blockdiagrammform gezeigt oder auf summarische Weise erwähnt, um eine Erklärung zu liefern, ohne übermäßig ins Detail zu gehen.
  • Typischerweise wird das Busmaster-Statusbit (BM_STS) gesetzt, wenn entweder eine Busmaster-Leseoperation oder eine Busmaster-Schreiboperation ausgeführt wird. Beispielsweise liest in einem System mit USB-Geräten ein USB-Hostcontroller Deskriptoren aus dem Speicher, um festzustellen, ob eine Operation anliegt, die der USB-Hostcontroller ausführen muss. Das Auslesen der Deskriptoren aus dem Speicher geschieht jede Millisekunde. Die meiste Zeit zeigen die Deskriptoren an, dass keine Operation zur Ausführung durch den USB-Hostcontroller anliegt. Nach dem Stand der Technik wird das BM_STS-Bit gesetzt, weil der Treiberpuffer writeback-cachebar ist, und somit bei Ausführung einer Busmaster-Leseoperation aus einem Speicherbereich, dessen tatsächliche Daten sich im Prozessorcache befinden, wobei sich der Prozessor aber in einem C3-Zustand befindet, die Busmaster-Operation nicht fortgesetzt werden kann, bevor der Prozessor aufgewacht ist. Dies ist so, weil der Prozessor nicht in der Lage ist, Snoop-Zyklen zu bedienen, während er sich in einem C3-Zustand befindet. Um diese Situation zu vermeiden, setzt im Falle irgendwelchen vorherigen Verkehrs mit dem Potential zum Auslösen eines Snoop-Zyklus (BM_STS gesetzt) das OS das ARB_DIS-Bit, um jedwede Busmaster-Operation zu verhindern.
  • Im Falle einer Busmaster-Schreiboperation in einen write-back-cachebaren Speicherbereich besteht die Möglichkeit, dass sich eine Kopie des Speicherbereichs im Prozessorcache befindet. Um die Kohärenz aufrechtzuerhalten, muss jede Busmaster-Schreiboperation in den write-throughcachebaren Speicherbereich durch den Prozessorcache gesnooped werden. Um diese Situation zu vermeiden, setzt das OS das ARB_DIS-bit, um jedwede Busmaster-Operation zu verhindern.
  • Indem Designpraktiken geschaffen werden, die Cache- und Speicherkohärenzprobleme vermeiden, kann der Prozessor in einen energiesparenden Zustand versetzt werden. Wenn der von dem Treiber verwendete Speicherbereich als nicht-cachebar markiert und nicht-cachebar gehalten wird, gibt es keine Speicherkohärenzprobleme. Das Markieren des Speicherbereichs als nicht-cachebar stellt sicher, dass im Prozessorcache keine Kopien dieses Speicherbereichs vorliegen, und dass bei Busmaster-Zugriffen durch das diesen Speicherbereich verwendende Gerät keine Notwendigkeit zum Snoopen des Prozessor-Cache besteht. Wenn das BM_STS-Bit so ausgelegt ist, dass es NICHT gesetzt wird, wenn ein Gerät Busmaster-Operationen auf dem nicht-cachebaren Speicherbereich erzeugt, kann das OS den Prozessor häufiger in den energiesparenden C3-Zustand versetzen.
  • Wenn alternativ hierzu der von dem Treiber verwendete Speicherbereich als write-through-cachebar markiert und write-through-cachebar gehalten wird, werden einige der Speicherkohärenzprobleme beseitigt. "Writethrough-cachebarer Speicher" bedeutet, dass mehr als eine Kopie der Daten im Speicher und im Prozessorcache vorhanden sein kann, dass jedoch beide Kopien kohärent gehalten werden; jede Leseoperation liest einfach die jeweils lokale Kopie, während eine Schreiboperation in eine Kopie dieser Daten auch an den jeweils anderen Ort (Speicher oder Cache) kopiert werden muss. In dieser Konstellation erfordern Busmaster-Speicherleseoperationen keine Interaktion mit dem Prozessor, wohingegen Busmaster-Schreiboperationen in den Speicher ein Snooping des Prozessorcache erfordern (um die Kopie der Daten im Prozessorcache zu aktualisieren). Für diese Konfigurationsart, in welcher der Speicher des Busmaster-Geräts als write-through-cachebar markiert ist, kann das BM_STS-Bit so ausgelegt werden, dass es nur ge setzt wird, wenn diese Geräte Busmaster-Schreibzugriffe auf Write-through-Speicherbereiche erzeugen. Busmaster-Lesezugriffe auf write-through-cachebare Speicherbereiche müssen dagegen das BM_STS-Bit nicht setzen, so dass das OS die CPU in den energiesparenden C3-Zustand versetzen kann.
  • Die folgende Tabelle erläutert, wie das BM_STS-Bit zur Optimierung des Eintretens in den C3-Zustand in Abhängigkeit der Cachebarkeit des Speicherbereichs, auf den zugegriffen wird, gesetzt werden muss.
  • Figure 00070001
  • Wie die Tabelle zeigt, führen nicht-cachebare Busmaster-Puffer dazu, dass das BM_STS-Bit gar nicht gesetzt wird, während write-through-cachebare Busmaster-Puffer das Setzen des BM_STS-Bits bei Lesezyklen verhindern. In Abhängigkeit vom Verhalten des Busmasters kann eines dieser Verfahren angewandt werden, so dass der Prozessor häufiger in den C3-Zustand übergehen kann.
  • 1 ist ein Blockdiagramm, das ein Beispiel eines Computersystems mit nicht-cachebarem Speicher gemäß einer Ausführungsform der vorliegenden Erfindung ver anschaulicht. Die USB-Geräte 135 und 140 sind durch einen USB-Hostcontroller 120 mit dem Computersystem 100 verbunden. Das Computersystem 100 umfasst einen Prozessor 102, eine Speichersteuereinheit (MCU) 105 und einen Speicher 110. Typischerweise gibt ein OS in dem Computersystem 100 zu jeder Zeitperiode (z. B. alle 11 Sekunden) einen periodischen Präemptionsinterrupt aus. Mit jedem Präemptionsinterrupt teilt das OS für den Prozessor 102 eine von diesem abzuarbeitende Arbeitsmenge ein. Wenn der Prozessor 102 die Arbeit abschließt, wird der Prozessor 102 bis zum nächsten Präemptionsinterrupt in den Idle-Zustand versetzt. Dann führt der Prozessor 102 weitere vom OS zugeteilte Arbeit aus, und danach ist der Prozessor 102 wieder im Idle-Zustand.
  • Wenn sich der Prozessor 102 im Idle-Zustand befindet, versetzt das OS den Prozessor 102, wie zuvor beschrieben, in einen der energiesparenden Zustände C1, C2 oder C3. Jeder dieser Zustände weist unterschiedliche Attribute auf. Z. B. ist der C1-Zustand ein energiesparender Zustand mit ca. 2 Watt und hat beim Verlassen eine Latenzzeit von ca. 0,5 Mikrosekunden. Der C2-Zustand ist ein energiesparenderer Zustand mit ca. 1,5 Watt und hat beim Verlassen eine Latenzzeit von ca. 100 Mikrosekunden. Der C3-Zustand ist ein äußerst energiesparender Zustand mit ca. 0,2 Watt und hat beim Verlassen eine Latenzzeit von ca. 3 Mikrosekunden. Der C3-Zustand ist ein äußerst energiesparender Prozessorzustand. Die Latenzzeit beim Verlassen ist die Zeit, die der Prozessor 102 bei einem Präemptionsinterrupt zur Wiederaufnahme des Betriebs benötigt.
  • Snooping ist wichtig, um die Kohärenz zwischen dem Prozessor-fache 103 und dem Speicher 110 aufrechtzuerhalten. Wenn der Prozessor 102 in den C3-Zustand versetzt wird, kann der Prozessor 102 den Bus nicht snoopen. Beispielsweise würde ein Speicherkohärenzproblem vorliegen, wenn, während der Prozessor sich im C3-Zustand befindet, der USB-Hostcontroller 120 (oder ein Busmaster-Controller) die Kontrolle über den Bus übernähme, Daten in den Speicher 110 schriebe, und sich die entsprechenden Daten gerade im Prozessorcache 103 befänden. Die Daten im Speicher 110 wären aktueller als die Daten im Prozessorcache 103, aber der Prozessor 102 würde dies nicht bemerkt haben, weil er den Bus nicht snoopen kann.
  • Um das Speicherkohärenzproblem zu vermeiden, legt die ACPI-Spezifikation fest, dass der Busmaster-Arbiter 145 gesperrt wird. Der Busmaster-Arbiter 145 wird gesperrt, indem das Arbiter-Sperrbit (ARB DIS) gesetzt wird. Dadurch wird verhindert, dass der Busmaster-Arbiter 145 den Bus anderen Busmaster-Controllern (einschließlich des USB-Hostcontrollers) oder Geräten zuteilt. Durch Setzen des ARB_DIS-Bits würde allerdings die Fähigkeit des USB-Hostcontrollers 120 zum Lesen seiner Framelisten beeinträchtigt. Wie oben beschrieben, erzeugt der USB-Hostcontroller 120 häufig Busmaster-Zugriffe auf den Speicher 110 (z. B. einmal jede Millisekunde).
  • In einer Ausführungsform der vorliegenden Erfindung wird der von dem Busmaster-Gerät verwendete Abschnitt des Speichers 110 auf nicht-cachebar gesetzt, und das BM_STS-Bit wird bei von dem Busmaster-Gerät (USB-Hostcontroller 120) ausgeführten Busmaster-Zugriffen nicht gesetzt. Dies führt dazu, dass das OS jegliche Busmaster-Aktivität seitens dieses nicht-cachebaren Busmaster-Geräts ignoriert, und die OS-Richtlinie zum Versetzen des Prozessors 102 in den C3-Zustand wird nicht beeinflusst. Wenn beispielsweise der USB-Hostcontroller 120 eine Busmaster-Schreiboperation zum Schreiben in den nicht-cachebaren Speicher 110 ausführt, ergibt sich kein Cachekohärenzproblem, um das man sich sorgen müsste. Wenn der USB-Hostcontroller 120 eine Busmaster-Leseoperation zum Lesen aus dem nicht-cachebaren Speicher 110 ausführt, ergibt sich ebenfalls kein Cachekohärenzproblem. Somit besteht für den Prozessor 102 keine Notwendigkeit, während Buszugriffen durch den USB-Hostcontroller 120 den Bus zu snoopen, und er kann daher in den energiesparenden C3-Zustand versetzt werden.
  • Um diese Konfigurationsart zu optimieren, muss die MCU 105 bei Busmaster-Zugriffen von dem "nicht-cachebaren" Busmaster-Gerät (USB-Hostcontroller 120) keine Snoop-Zyklen an den Prozessor 102 ausgeben. Es gibt viele Verfahren zur Durchführung dieser Art von Speichertypisierung. Z. B. können Speicherattributregister in die MCU programmiert werden, die die nicht-cachebaren Abschnitte des Speichers identifizieren, oder ein gesondertes Signal von dem Busmaster-Gerät könnte es als den Urheber der Buszyklus-Operation identifizieren.
  • Da außerdem das "nicht-cachebare" Busmaster-Gerät (USB-Hostcontroller 120) keine Cachekohärenzprobleme mehr erzeugt, und da die MCU 105 keine Snoop-Zyklen mehr an den Prozessor 102 ausgibt, kann der Betrieb des "nicht-cachebaren" Busmaster-Geräts zugelassen werden, wenn das ARB DIS-Bit (das normalerweise den Betrieb aller Busmaster-Geräte unterbinden würde) gesetzt ist. Es ist zu beachten, dass dies nur "nicht-cachebare" Busmaster-Geräte betrifft, während alle anderen Busmaster-Geräte, die Kohärenzprobleme erzeugen können, gesperrt werden müssen, wenn das ARB DIS-Bit gesetzt ist.
  • 2 ist ein Blockdiagramm, das ein Beispiel eines Computersystems mit write-through-cachebarem Speicher gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht. Der Speicher 210 ist für den von dem Busmaster-Gerät (in diesem Fall der USB-Hostcontroller 220) verwendeten Speicher auf write-through-cachebar gesetzt, und das BM_STS-Bit wird nur bei von diesem "write-throughcachebaren" Busmaster-Gerät ausgehenden Busmaster-Schreiboperationen gesetzt, während es bei von diesem "writethrough-cachebaren" Busmaster-Gerät ausgehenden Busmaster- Leseoperationen nicht gesetzt wird. Dadurch können der Cache 203 und der Speicher 210 miteinander kohärent sein, wenn eine Busmaster-Schreiboperation vorliegt. Obwohl der Cache 203 als Prozessorcache dargestellt ist, ist dieses Verfahren auch auf andere Cache-Implementationen anwendbar.
  • Um diese Konfigurationsart zu optimieren, muss die MCU 205 bei Busmaster-Lesezugriffen von diesem speziellen "nicht-cachebaren" Busmaster-Gerät (USB-Hostcontroller 220) keine Snoop-Zyklen an den Prozessor 203 ausgeben. Es gibt viele Verfahren zur Durchführung dieser Art von Speichertypisierung. Z. B. können Speicherattributregister in die MCU programmiert werden, die die write-through-cachebaren Abschnitte des Speichers identifizieren, oder ein gesondertes Signal von dem Busmaster-Gerät könnte es als den Urheber der Buszyklus-Operation identifizieren.
  • Da außerdem das "write-through-cachebare" Busmaster-Gerät bei Speicherlesezyklen keine Cachekohärenzprobleme mehr erzeugt, und da die MCU 205 bei von diesem "writethrough-cachebaren" Busmaster-Gerät ausgehenden Busmaster-Leseoperationen keine Snoop-Zyklen mehr an den Prozessor 203 ausgibt, kann das Ausführen von Busmaster-Leseoperationen durch das "write-through-cachebare" Busmaster-Gerät zugelassen werden, wenn das ARB_DIS-Bit (das normalerweise den Betrieb aller Busmaster-Geräte unterbinden würde) gesetzt ist. Dieses "write-through-cachebare" Busmaster-Gerät muss nach wie vor vom Erzeugen von Busmaster-Schreibzyklen abgehalten werden, wenn das ARB_DIS-Bit gesetzt ist, aber Busmaster-Leseoperationen können fortgesetzt werden. Es ist zu beachten, dass dies nur "write-through-cachebare" Busmaster-Geräte betrifft, während alle anderen Busmaster-Geräte, die Kohärenzprobleme erzeugen können, gesperrt werden müssen, wenn das ARB_DIS-Bit gesetzt ist.
  • Die Operationen der verschiedenen Verfahren der vorliegenden Erfindung können durch eine Verarbeitungs einheit in einem digitalen Datenverarbeitungssystem implementiert werden, welche Computerprogramm-Befehlsfolgen ausführt. Die Operationen können Hardwareschaltungen mit einem Hilfsprozessor umfassen, der dediziert für die Ausführung von Powermanagement-Funktionen zur Verfügung steht. Die Operationen können unter Verwendung einer Anwendungssoftware ausgeführt werden, die Befehle umfasst, welche in einem Speicher abgelegt sind, der als maschinenlesbares Speichermedium betrachtet werden kann. Bei dem Speicher kann es sich um Speicher mit wahlfreiem Zugriff, Nur-Lese-Speicher, dauerhaften Speicher, wie z. B. ein Massenspeichergerät, oder um eine beliebige Kombination dieser Geräte handeln. Die Ausführung der Befehlsfolgen bewirkt, dass die Verarbeitungseinheit Operationen gemäß der vorliegenden Erfindung ausführt. Die Befehle können von einem Speichergerät oder über eine Netzwerkverbindung von einem oder mehreren weiteren digitalen Datenverarbeitungssystemen (z. B. von einem Server-Computersystem) in den Speicher des Computers geladen werden. Die Befehle können gleichzeitig in verschiedenen Speichergeräten (z. B. DRAM und eine Festplatte, wie z. B. im Falle von virtuellem Speicher) abgelegt sein. Infolgedessen können diese Befehle direkt von der Verarbeitungseinheit ausgeführt werden.
  • In anderen Fällen können die Befehle nicht unmittelbar ausgeführt werden, oder sie können nicht direkt durch die Verarbeitungseinheit ausführbar sein. Unter solchen Umständen können die Befehle zur Ausführung kommen, indem der Prozessor zum Ausführen eines Interpreters veranlasst wird, welcher die Befehle interpretiert, oder indem der Prozessor veranlasst wird, Befehle auszuführen, welche die empfangenen Befehle in Befehle umwandeln, die direkt durch den Prozessor ausführbar sind. In anderen Ausführungsformen können zur Implementierung der vorliegenden Erfindung fest verdrahtete Schaltungen anstelle von oder gemeinsam mit Softwarebefehlen zum Einsatz kommen. Somit ist die vorliegende Erfindung weder auf irgendeine spezifische Kombination aus Hardwareschaltungen und Software noch auf irgendeine spezielle Quelle für die von dem Computer bzw. von dem digitalen Datenverarbeitungssystem ausgeführten Befehle beschränkt.
  • Obwohl die vorliegende Erfindung anhand spezifischer Ausführungsbeispiele beschrieben worden ist, ist es offenkundig, dass vielfältige Abwandlungen und Änderungen an diesen Ausführungsformen vorgenommen werden können, ohne von dem wesentlichen Gedanken und dem Umfang der Erfindung abzuweichen, wie sie in den Ansprüchen dargelegt ist. Dementsprechend sind die Patentschrift und die Zeichnungen in einem veranschaulichenden und nicht in einem einschränkenden Sinne zu verstehen.
  • Zusammenfassung
  • Ein Systemspeicher (110, 210), auf den von einem Busmaster Controller (145, 245) zugegriffen wird, wird auf nicht-cachebar gesetzt. Ein Busmaster-Statusbit wird für alle Transferzyklen des Busmaster Controllers mit dem nicht-cachebaren Speicher (110, 120) nicht gesetzt, während sich der Systemprozessor (102, 202) in einem energiesparenden Zustand befindet.

Claims (33)

  1. Verfahren, welches Folgendes umfasst: Ein Speicher, der von einem Busmaster-Gerät verwendet wird, wird auf nicht-cachebar gesetzt, wobei sich der Speicher und das Busmaster-Gerät in einem Computersystem befinden; ein Busmaster-Statusbit (BM_STS) wird bei Busmaster-Speicheroperationen durch das Busmaster-Gerät mit dem Speicher nicht gesetzt; und der Prozessor in dem Computersystem wird in einen energiesparenden Zustand versetzt.
  2. Verfahren nach Anspruch 1, wobei der energiesparende Zustand ein Deep-Sleep-Zustand ist.
  3. Verfahren nach Anspruch 1, wobei der energiesparende Zustand ein C3-Zustand ist.
  4. Verfahren nach Anspruch 1, wobei der Speicher an ein Speichersubsystem angekoppelt ist, das während Busmaster-Zugriffen, die von dem Busmaster-Gerät ausgeführt werden, keine Snoop-Zyklen an den Prozessor ausgibt.
  5. Verfahren nach Anspruch 4, wobei das Busmaster-Gerät Busmaster-Lese- und Schreiboperationen erzeugen darf, wenn das ARB DIS-Bit gesetzt ist.
  6. Computerlesbares Medium, auf welchem Befehlsfolgen gespeichert sind, die durch ein System ausführbar sind, und die bei Ausführung durch das System das System zum Ausführen eines Verfahrens veranlassen, welches Folgendes umfasst: Ein Speicher, der von einem Busmaster-Gerät verwendet wird, wird auf nicht-cachebar gesetzt, wobei sich der Speicher und das Busmaster-Gerät in einem Computersystem befinden; ein Busmaster-Statusbit (BM_STS) wird bei Busmaster-Speicheroperationen durch das Busmaster-Gerät mit dem Speicher nicht gesetzt; und der Prozessor in dem Computersystem wird in einen energiesparenden Zustand versetzt.
  7. Computerlesbares Medium nach Anspruch 6, wobei der energiesparende Zustand ein Deep-Sleep-Zustand ist.
  8. Computerlesbares Medium nach Anspruch 6, wobei der energiesparende Zustand ein C3-Zustand ist.
  9. Computerlesbares Medium nach Anspruch 6, wobei der Speicher an ein Speichersubsystem angekoppelt ist, das während Busmaster-Zugriffen, die von dem Busmaster-Gerät ausgeführt werden, keine Snoop-Zyklen an den Prozessor ausgibt.
  10. Computerlesbares Medium nach Anspruch 9, wobei das Busmaster-Gerät Busmaster-Lese- und Schreiboperationen erzeugen darf, wenn das ARB_DIS-Bit gesetzt ist.
  11. System, umfassend: einen Speicher, der auf nicht-cachebar gesetzt ist; ein Busmaster-Gerät, das an den Speicher angekoppelt ist; und einen Prozessor, der an den Speicher und an das Busmaster-Gerät angekoppelt ist, wobei der Prozessor in einen energiesparenden Zustand versetzt ist, während das Busmaster-Gerät Speicheroperationen mit dem nicht-cachebaren Speicher ausführt, und während ein Busmaster-Statusbit (BM_STS) bei diesen Busoperationen nicht gesetzt ist.
  12. System nach Anspruch 11, wobei der energiesparende Zustand ein Deep-Sleep-Zustand ist.
  13. System nach Anspruch 11, wobei der energiesparende Zustand ein C3-Zustand ist.
  14. System nach Anspruch 11, weiterhin umfassend ein Speichersubsystem, das an den Speicher angeschlossen ist, wobei das Speichersubsystem während Speicheroperationen, die von dem Busmaster-Gerät ausgeführt werden, keine Snoop-Zyklen an den Prozessor ausgibt.
  15. System nach Anspruch 14, wobei das Busmaster-Gerät Busmaster-Lese- und Schreiboperationen erzeugen darf, wenn ein Arbiter-Sperrbit (ARB_DIS) gesetzt ist.
  16. Verfahren, das Folgendes umfasst: Ein Speicher, der von einem Busmaster-Gerät verwendet wird, wird auf write-through-cachebar gesetzt, wobei sich der Speicher und das Busmaster-Gerät in einem Computersystem befinden; ein Busmaster-Statusbit (BM_STS) wird nicht gesetzt, während das Busmaster-Gerät Speicherleseoperationen mit dem Speicher ausführt; und der Prozessor in dem Computersystem wird in einen energiesparenden Zustand versetzt.
  17. Verfahren nach Anspruch 16, das weiterhin Folgendes umfasst: Das BM_STS-Bit wird gesetzt, während das Busmaster-Gerät Speicherschreiboperationen mit dem Speicher ausführt.
  18. Verfahren nach Anspruch 17, wobei der Prozessor nicht in den energiesparenden Zustand versetzt wird, während das Busmaster-Gerät Speicherschreiboperationen mit dem Speicher ausführt.
  19. Verfahren nach Anspruch 17, wobei der energiesparende Zustand ein C3-Zustand ist.
  20. Verfahren nach Anspruch 16, wobei der Speicher an ein Speichersubsystem angekoppelt ist, das während Busmaster-Leseoperationen, die von dem Busmaster-Gerät ausgeführt werden, keine Snoop-Zyklen an den Prozessor ausgibt.
  21. Verfahren nach Anspruch 20, wobei das Busmaster-Gerät Busmaster-Leseoperationen erzeugen darf, wenn das ARB_DIS-Bit gesetzt ist.
  22. Computerlesbares Medium, auf welchem Befehlsfolgen gespeichert sind, die durch ein System ausführbar sind, und die bei Ausführung durch das System das System zum Ausführen eines Verfahrens veranlassen, wobei das Verfahren Folgendes umfasst: Ein Speicher, der von einem Busmaster-Gerät verwendet wird, wird auf write-through-cachebar gesetzt, wobei sich der Speicher und das Busmaster-Gerät in einem Computersystem befinden; ein Busmaster-Statusbit (BM_STS) wird nicht gesetzt, während das Busmaster-Gerät Speicherleseoperationen mit dem Speicher ausführt; und der Prozessor in dem Computersystem wird in einen energiesparenden Zustand versetzt.
  23. Computerlesbares Medium nach Anspruch 22, das weiterhin Folgendes umfasst: Das BM_STS-Bit wird gesetzt, während das Busmaster-Gerät Speicherschreiboperationen mit dem Speicher ausführt.
  24. Computerlesbares Medium nach Anspruch 22, wobei der Prozessor nicht in den energiesparenden Zustand versetzt ist, während das Busmaster-Gerät Speicherschreiboperationen mit dem Speicher ausführt.
  25. Computerlesbares Medium nach Anspruch 22, wobei der energiesparende Zustand ein C3-Zustand ist.
  26. Computerlesbares Medium nach Anspruch 22, wobei der Speicher an ein Speichersubsystem angekoppelt ist, das während Busmaster-Lesezugriffen, die von dem Busmaster-Gerät ausgeführt werden, keine Snoop-Zyklen an den Prozessor ausgibt.
  27. Computerlesbares Medium nach Anspruch 26, wobei das Busmaster-Gerät Busmaster-Leseoperationen erzeugen darf, wenn das ARB DIS-Bit gesetzt ist.
  28. System, umfassend: einen Speicher, der auf write-through-cachebar gesetzt ist; ein Busmaster-Gerät, das an den Speicher angekoppelt ist; und einen Prozessor, der an den Speicher und an das Busmaster-Gerät angekoppelt ist, wobei der Busmaster Speicherleseoperationen ausführen darf, während der Prozessor sich in einem energiesparenden Zustand befindet, ohne dass das Busmaster-Statusbit (BM_STS) gesetzt ist.
  29. System nach Anspruch 28, wobei der Prozessor nicht in den energiesparenden Zustand versetzt ist, während das Busmaster-Gerät Speicherschreiboperationen mit dem Speicher ausführt.
  30. System nach Anspruch 28, wobei das BM_STS-Bit gesetzt ist, während das Busmaster-Gerät Speicherschreiboperationen mit dem Speicher ausführt.
  31. System nach Anspruch 28, wobei der energiesparende Zustand ein C3-Zustand ist.
  32. System nach Anspruch 28, weiterhin umfassend ein Speichersubsystem, das an den Speicher angekoppelt ist, wobei das Speichersubsystem während jeglicher Busmaster-Leseoperationen, die von dem Busmaster-Gerät ausgeführt werden, keine Snoop-Zyklen an den Prozessor ausgibt.
  33. System nach Anspruch 32, wobei das Busmaster-Gerät Busmaster-Leseoperationen erzeugen darf, wenn das ARB_DIS-Bit gesetzt ist.
DE10392351T 2002-02-27 2003-02-25 Verfahren zum Verringern der Leistungsaufnahme in einem Computersystem mit Busmaster-Geräten Ceased DE10392351T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/085,307 US20030163745A1 (en) 2002-02-27 2002-02-27 Method to reduce power in a computer system with bus master devices
US10/085,307 2002-02-27
PCT/US2003/005835 WO2003073253A2 (en) 2002-02-27 2003-02-25 Method to reduce power in a computer system with bus master devices

Publications (1)

Publication Number Publication Date
DE10392351T5 true DE10392351T5 (de) 2005-03-10

Family

ID=27753600

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10392351T Ceased DE10392351T5 (de) 2002-02-27 2003-02-25 Verfahren zum Verringern der Leistungsaufnahme in einem Computersystem mit Busmaster-Geräten

Country Status (8)

Country Link
US (1) US20030163745A1 (de)
KR (2) KR20060122982A (de)
CN (1) CN100351743C (de)
AU (1) AU2003217741A1 (de)
DE (1) DE10392351T5 (de)
GB (1) GB2403570B (de)
TW (1) TWI281607B (de)
WO (1) WO2003073253A2 (de)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7636815B1 (en) * 2003-04-09 2009-12-22 Klaiber Alexander C System and method for handling direct memory accesses
US8751753B1 (en) 2003-04-09 2014-06-10 Guillermo J. Rozas Coherence de-coupling buffer
US20040250035A1 (en) * 2003-06-06 2004-12-09 Atkinson Lee W. Method and apparatus for affecting computer system
US7930572B2 (en) * 2003-12-24 2011-04-19 Texas Instruments Incorporated Method and apparatus for reducing memory current leakage a mobile device
EP1548547A1 (de) * 2003-12-24 2005-06-29 Texas Instruments Incorporated Verfahren und Vorrichtung zur Reduktion des Speicherleckstroms in einem mobilen Gerät
US7315952B2 (en) * 2004-06-02 2008-01-01 Intel Corporation Power state coordination between devices sharing power-managed resources
US7272741B2 (en) * 2004-06-02 2007-09-18 Intel Corporation Hardware coordination of power management activities
US7971002B1 (en) 2005-04-07 2011-06-28 Guillermo Rozas Maintaining instruction coherency in a translation-based computer system architecture
US7454632B2 (en) * 2005-06-16 2008-11-18 Intel Corporation Reducing computing system power through idle synchronization
US7430673B2 (en) * 2005-06-30 2008-09-30 Intel Corporation Power management system for computing platform
KR100656353B1 (ko) 2005-07-12 2006-12-11 한국전자통신연구원 메모리 전력 소모를 줄이는 방법
US20070050549A1 (en) * 2005-08-31 2007-03-01 Verdun Gary J Method and system for managing cacheability of data blocks to improve processor power management
TWI286705B (en) * 2005-09-06 2007-09-11 Via Tech Inc Power management method of central processing unit
US7750912B2 (en) * 2005-11-23 2010-07-06 Advanced Micro Devices, Inc. Integrating display controller into low power processor
CN100397301C (zh) * 2006-01-09 2008-06-25 威盛电子股份有限公司 中央处理器的省电方法
JP5283128B2 (ja) * 2009-12-16 2013-09-04 学校法人早稲田大学 プロセッサによって実行可能なコードの生成方法、記憶領域の管理方法及びコード生成プログラム
US10289183B2 (en) 2014-08-22 2019-05-14 Intel Corporation Methods and apparatus to manage jobs that can and cannot be suspended when there is a change in power allocation to a distributed computer system

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5414827A (en) * 1991-12-19 1995-05-09 Opti, Inc. Automatic cache flush
US5325503A (en) * 1992-02-21 1994-06-28 Compaq Computer Corporation Cache memory system which snoops an operation to a first location in a cache line and does not snoop further operations to locations in the same line
EP0585117A1 (de) * 1992-08-26 1994-03-02 Cyrix Corporation Verfahren und System zur Aufrechterhaltung der Cachespeicherübereinstimmung in einem Multimasterrechnersystem
US5551006A (en) * 1993-09-30 1996-08-27 Intel Corporation Low cost writethrough cache coherency apparatus and method for computer systems without a cache supporting bus
US6052789A (en) * 1994-03-02 2000-04-18 Packard Bell Nec, Inc. Power management architecture for a reconfigurable write-back cache
US5802305A (en) * 1996-05-17 1998-09-01 Microsoft Corporation System for remotely waking a sleeping computer in power down state by comparing incoming packet to the list of packets storing on network interface card
US6205507B1 (en) * 1996-06-13 2001-03-20 Compaq Computer Corporation Memory coherency in a processor-to-bus cycle in a multi-processor system
AU6140098A (en) * 1997-03-31 1998-10-22 Intel Corporation Automatic transitioning between acpi c3 and c2 states
US6128703A (en) * 1997-09-05 2000-10-03 Integrated Device Technology, Inc. Method and apparatus for memory prefetch operation of volatile non-coherent data
US5983354A (en) * 1997-12-03 1999-11-09 Intel Corporation Method and apparatus for indication when a bus master is communicating with memory
KR100626359B1 (ko) * 1999-09-10 2006-09-20 삼성전자주식회사 컴퓨터 시스템의 전원 관리 방법
US6658532B1 (en) * 1999-12-15 2003-12-02 Intel Corporation Cache flushing
US6633987B2 (en) * 2000-03-24 2003-10-14 Intel Corporation Method and apparatus to implement the ACPI(advanced configuration and power interface) C3 state in a RDRAM based system

Also Published As

Publication number Publication date
US20030163745A1 (en) 2003-08-28
AU2003217741A1 (en) 2003-09-09
KR100667999B1 (ko) 2007-01-15
GB0420421D0 (en) 2004-10-20
KR20060122982A (ko) 2006-11-30
CN1639671A (zh) 2005-07-13
GB2403570A (en) 2005-01-05
KR20040086459A (ko) 2004-10-08
GB2403570B (en) 2006-11-22
CN100351743C (zh) 2007-11-28
WO2003073253A3 (en) 2004-02-19
TWI281607B (en) 2007-05-21
WO2003073253A2 (en) 2003-09-04
TW200402619A (en) 2004-02-16

Similar Documents

Publication Publication Date Title
DE10392351T5 (de) Verfahren zum Verringern der Leistungsaufnahme in einem Computersystem mit Busmaster-Geräten
DE60222402T2 (de) Verfahren und system zur spekulativen ungültigkeitserklärung von zeilen in einem cachespeicher
DE69127111T2 (de) Verfahren zum Nachladen aufgeschobener Datenauslagerungen in einen Copy-back Daten-Cachespeicher
DE69028066T2 (de) Kombinierte synchrone und asynchrone Speichersteuerung
DE60031404T2 (de) Verfahren und vorrichtung zur dynamischen änderung der grössen von pools, die die leistungsaufnahme von speichern steuern
DE19782177B4 (de) Verfahren zur Durchführung von TLB-Shootdown-Operationen in einem Multiprozessorsystem
DE112005002298B4 (de) Leistungssteigerung einer Adreßübersetzung unter Verwendung von Übersetzungstabellen, die große Adreßräume umfassen
DE112008001223B4 (de) Datenverarbeitung mit einem Cache-Zugriffsmodus mit geringer Leistung
DE69633166T2 (de) Integrierter schaltkreis mit mehreren funktionen und gemeinsamer verwendung mehrerer interner signalbusse zur verteilung der steuerung des buszugriffes und der arbitration
DE112006000545B4 (de) System und Verfahren zum kohärenten Datentransfer während Leerlaufzuständen von Prozessoren
DE10262164B4 (de) Computersystem mit einer hierarchischen Cacheanordnung
DE69030640T2 (de) Multiprozessorarbitrierung in für Einzelprozessor bestimmten Arbitrierungsschemas
DE102019105879A1 (de) Verwaltung von kohärenten Verknüpfungen und Mehr-Ebenen-Speicher
DE112012005210B4 (de) Bereitstellen eines gemeinsamen Caching-Agenten für ein Kern- und integriertes Ein-/Ausgabe-(IO)-Modul
DE3751645T2 (de) Anteilige Nutzung von Kopie-beim-Schreiben-Segmenten in einer Datenverarbeitungsanlage mit virtuellen Maschinen und virtuellem Speicher
DE112007001171T5 (de) Verfahren für virtualisierten Transaktionsspeicher bei globalem Überlauf
DE102010034555A1 (de) Bereitstellen von Zustandsspeicher in einem Prozessor für Systemmanagement-Modus
DE112011102822T5 (de) Leistungsoptimierte Interrupt-Abgabe
DE112009000373T5 (de) Technik, um Information zwischen unterschiedlichen Kohärenz-Domains von Caches zu nutzen
DE102009031125A1 (de) Nand-Fehlerbehandlung
DE112013000891T5 (de) Verbessern der Prozessorleistung für Befehlsfolgen, die Sperrbefehle enthalten
DE112007001987T5 (de) Überführen einer Rechenplattform in einen Systemzustand niedriger Leistung
DE112005002420T5 (de) Verfahren und Vorrichtung zum Pushen von Daten in den Cache eines Prozessors
DE69219848T2 (de) Verfahren zur Behandlung von Datenübertragungen in einen Computersystem mit einem Zweibusbau
DE4417068A1 (de) Verfahren und Einrichtung zum Betreiben eines Einzel-Prozessor-Computersystems als Mehr-Prozessor-System

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law

Ref document number: 10392351

Country of ref document: DE

Date of ref document: 20050310

Kind code of ref document: P

8131 Rejection